gpt4 book ai didi

php - 从 openAI API 获取响应的函数

转载 作者:行者123 更新时间:2023-12-02 05:47:05 25 4
gpt4 key购买 nike

我在从 OpenAI 的 API 获取响应时遇到问题...

我有这个功能:


`function generate_response($input) {
$openai_api_key = "MY TOKEN";
$prompt = "Answer the following question: " . $input;
$data = array(
'prompt' => $prompt,
'max_tokens' => 1000,
'temperature' => 0.5,
'model' => 'davinci',
'stop' => ['\n'],
);

$url = 'https://api.openai.com/v1/completions';

$headers = array(
'Content-Type: application/json',
'Authorization: Bearer ' . $openai_api_key
);

$data_string = json_encode($data);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$response = json_decode(curl_exec($ch));
curl_close($ch);

if (isset($response->error)) {
return "Error: " . $response->error->message;
}
$text_parts = array();
foreach ($response->choices[0]->text as $part) {
$text_parts[] = $part;
}
$text = implode('', $text_parts);
return $text;
}
$user_question = "What is the capital of France?";
$response = generate_response($user_question);
echo "<h1>$response</h1>";`

它说了一些关于模型和引擎的事情,然后我使用了模型,但是它仍然没有像我预期的那样工作,有任何建议吗?

我尝试更改模型、引擎、URL 链接。我希望我的问题能得到明智的回答

最佳答案

他们正在中断:https://status.openai.com/

功能看起来不错,但有几点需要考虑:

$data 数组中的停止参数设置为 ['\n'],这可能无法按预期工作。它应该设置为 ["\n"](带双引号)。

该函数假定 OpenAI API 将始终返回有效响应,但情况并非总是如此。添加更多错误处理是个好主意,例如检查 HTTP 状态代码或添加超时。

该函数直接返回 HTML 代码 (

$response

),这可能并不适合所有用例。最好返回纯文本并让调用代码处理格式。

除这些点外,该功能应按预期工作。

关于php - 从 openAI API 获取响应的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75521911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com