借鉴这位博客的代码
https://blog.csdn.net/qq_25837853/article/details/129448600
调用GPT-5如下
%连接互联网
import matlab.net.*
import matlab.net.http.*
%提问文本输入
umesges =input('我:','s');
mesges = [struct('role',"system",'content',"You are a helpful assistant.");
struct('role',"user",'content',umesges)];
apiurl = "https://api.chuanchuan.cloud/v1/chat/completions"; %中转或者官网的baseurl
apikey = "密钥"; %密钥
% 定义请求消息
querymsg = struct('model',"gpt-5-chat-latest",...'messages',mesges, ...'max_tokens',1000,...'temperature',0.75);
% 请求头
headers = HeaderField('Content-Type', 'application/json',...'Authorization', "Bearer " + apikey);
% 请求消息
request = RequestMessage('post',headers,querymsg);
response = send(request, URI(apiurl));
% 消息获取处理并显示
if response.StatusCode == "OK" %判断是否获取回答成功responseText = response.Body.Data.choices(1).message; %从响应体中获取第一个选择项的消息内容,并将其赋值给变量 responseTextresponseText = string(responseText.content); %将 responseText 转换为字符串类型responseText = strtrim(responseText); %移除wrapped_s开头和结尾的空格和换行符str=['chatgpt: ',num2str(responseText)];disp(str) %在命令窗口显示回答
elseresponseText = "Error "; %将字符串 "Error " 赋值给变量 responseTextresponseText = responseText + response.StatusCode + newline; %将响应状态码和一个换行符添加到 responseText 的结尾responseText = responseText + response.StatusLine.ReasonPhrase; %将响应状态行的原因短语添加到 responseText 的结尾disp(str) %在命令窗口显示回答
end