deepSeek 在 2025年可以说是火热。它可以说是国内版真正义意上的chatgpt。那么,如果我要实现用php 接入 deepSeek 的api呢。其实,方法也很简单。下面的代码我是自己封装过的,大家可以直接拿来使用,记得自己修改下密钥。
function getMsg($text){
$arr = [
'model'=>"deepseek-chat",
'frequency_penalty'=>0,
'max_tokens'=>2048,
'presence_penalty'=>0,
'response_format'=>[
'type'=>'text'
],
'stop'=>null,
'stream'=>false,
'stream_options'=>null,
'temperature'=>1,
'top_p'=>1,
'tools'=>null,
'tool_choice'=>'none',
'logprobs'=>false,
'top_logprobs'=>null,
'messages'=>[
['content'=>$text , 'role'=>'system'],
['content'=>'Hi' , 'role'=>'user']
]
];
$msg = json_encode($arr);
$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//如果在本地测试,需要加上这行,如果放到线上 https协议上,可以不需要
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.deepseek.com/chat/completions',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>$msg,
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Accept: application/json',
'Authorization: Bearer sk-XXXXX' //修改为你自己的密钥
),
));
$response = curl_exec($curl);
curl_close($curl);
if ($response === false) {
$error = curl_error($curl);
echo 'cURL 错误: ' . $error;
} else {
return $response;
// $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
// echo 'HTTP 状态码: ' . $httpCode . PHP_EOL;
// echo '响应内容: ' . $response;
}
}
在js 中,我们可以这样去获取数据
fetch('/')
.then(response=>response.json()) //注意这儿的写法
.then(data=>{
console.log(data)
})