gpt4 book ai didi

PHP CURL Open Ai 从发布数据中删除引号

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

下面是我的 PHP Curl 脚本,用于发布到 Open AI,一切正常。

我希望能够像这样从发布的数据中设置值。

 $getOpenAITemperature = $_POST[OpenAITemperature]; 
$getmaxtokens = $_POST[OpenAIMaximumLength];
$getTopp = $_POST[OpenAITopP];`

但是当我这样做时,它会在发布的值中添加引号并且它会停止工作。

像这样。

 $postData = [
'model' => $getOpenAIModel,
'prompt' => $getRequest,
'temperature' => "0.24",
'max_tokens => "250",
'top_p' => "1",

但它需要看起来像这样才能工作。

 $postData = [
'model' => $getOpenAIModel,
'prompt' => $getRequest,
'temperature' => 0.24,
'max_tokens => 250,
'top_p' => 1,

如何删除数字周围的引号?模型和提示周围的引号很好,只是数字。

*** 下面的脚本可以正常工作 ***

  $getOpenAITemperature = 0.5;
$getmax_tokens = 250;
$gettop_p = 1;


$OPENAI_API_KEY = "sk-123";
$getOpenAIModel = "text-davinci-003";
$getRequest "My Question";
$ch = curl_init();
$headers = [
'Accept: application/json',
'Content-Type: application/json',
'Authorization: Bearer '.$OPENAI_API_KEY.''
];
$postData = [
'model' => $getOpenAIModel,
'prompt' => $getRequest,
'temperature' => $getOpenAITemperature,
'max_tokens' => $getTopp,
'top_p' => $getmaxtokens,
'best_of' => 2,
'frequency_penalty' => 0.0,
'presence_penalty' => 0.0,
'stop' => '["\n"]',
];

curl_setopt($ch, CURLOPT_URL, 'https://api.openai.com/v1/completions');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($postData));

$result = curl_exec($ch);`

我已经尝试了很多东西,比如 php trim() 和 str_replace,但没有任何效果。

最佳答案

您可以像这样将字符串转换为 int 或 float:

$postData['temperature'] = (float) $postData['temperature'];
$postData['max_tokens'] = (int) $postData['max_tokens'];

查看 PHP 文档以进行类型转换 https://www.php.net/manual/en/language.types.type-juggling.php#language.types.typecasting

关于PHP CURL Open Ai 从发布数据中删除引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75050771/

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