php调用chatgpt的gpt-3.5-turbo-0613的functions笔记
最近,OpenAI更新了ChatGPT,将GPT-3.5 Turbo模型更新为GPT-3.5 Turbo-0613,支持最长16k的tokens,这是一个非常给力的更新。这意味着AI的能力正在不断增强。以前,AI只能写代码片段,理解短篇PDF文档等任务。但是,随着tokens数量的增加,未来AI将能够一次性读取长篇小说、大型项目的源码,并对其进行修改和总结等操作。
此外,OpenAI还增加了一个functions的调用功能。通过这个功能,用户可以将prompt和函数的参数及返回结果等信息发送给ChatGPT,让它帮你理解函数的参数并直接调用函数。这个功能非常实用,将改变应用的使用方式。以前,执行用户的指令需要理解用户的意图,容易出错。现在,通过ChatGPT生成函数的参数,执行指令变得更加容易。
<?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://api.openai.com/v1/chat/completions"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $_postobj = array("model" => "gpt-3.5-turbo-0613", "messages" => array(["role" => "user", "content" => "东京的天气如何?"] ), "functions" => array( array( "name" => "get_current_weather", "description" => "", "parameters" => array( "type" => "object", "properties" => array( "location" => array( "type" => "string", "description" => "城市或省份,例如北京、上海" ), "unit" => array( "type" => "string", "enum" => array("celsius", "fahrenheit") ) ), "required" => array("location") ) ) ) ); 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); $respons...
点击查看剩余70%
网友评论