根据官网的文档,可以在api请求千问大模型的时候设置输出格式,在调用时,设置response_format为{"type": "json_object"},并通过系统消息或用户消息指引模型输出JSON格式即可。
结构化输出功能支持qwen-max-0919、qwen-max-latest、qwen-plus、qwen-plus-0919、qwen-plus-latest、qwen-turbo、qwen-turbo-0919、qwen-turbo-latest模型。
api调用代码示例,我们以php为例
点击查看示例代码
<?php //适合兼容chatgpt接口的所有流式stream输出的大模型接口,例如千问 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $messages = [["role" => "system", "content" => "你是一个AI助手chatai,返回json格式{message:data}"]]; $messages[] = ["role" => "user", "content" => "你好"]; $_postobj = array("model" => "qwen-plus", "messages" => $messages, "max_tokens" => 100, "temperature" => 1, // "top_p" => 1, "n" => 1, "stream" => false, "response_format"=>["type"=>"json_object"] //"stream_options"=>["include_usage"=> true] ); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($_postobj, JSON_UNESCAPED_UNICODE)); $certificate = "/data/wwwroot/default/asset/cacert.pem"; curl_setopt($ch, CURLOPT_CAINFO, $certificate); curl_setopt($ch, CURLOPT_CAPATH, $certificate); // curl_setopt($ch, CURLOPT_SSLVERSION, 3); //curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_POST, 1); // Set the API key as an HTTP header $headers = array(); $headers[] = "Content-Type: application/json"; $headers[] = "Authorization: Bearer apikey"; curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); // 处理获得的数据 // Send the request and parse the response $response = curl_exec($ch); $response_data = json_decode($response, true); //echo $response."/n"; if (curl_errno($ch)) { // If there was an error executing the cURL request, print it out //echo 'Error: ' . curl_error($ch); echo curl_error($ch); curl_close($ch); } else { // // Otherwise, print the response from the GPT-3 API // curl_close($ch); // // var_dump($response_data); echo $response_data['choices'][0]['message']['content']; // var_dump($response_data) ; }
https://help.aliyun.com/zh/dashscope/developer-reference/qwen-api
网友回复
腾讯混元模型广场里都是混元模型的垂直小模型,如何api调用?
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?
js中mediaRecorder如何录制window.speechSynthesis声音音频并下载?
python如何直接获取抖音短视频的音频文件url?