需先获取有效api密钥、构造符合要求的http请求头与json载荷,并正确处理响应流或结果;未配置https上下文或忽略stream参数会导致连接被拒绝。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在PHP中调用DeepSeek API完成文本生成任务,需先获取有效API密钥、构造符合要求的HTTP请求头与JSON载荷,并正确处理响应流或结果。未配置HTTPS上下文或忽略stream参数会导致连接被拒绝。
准备API密钥与基础环境
登录DeepSeek官网控制台,在「API Keys」页面点击「Create New Key」生成密钥,复制后保存到安全位置——该密钥【不可见二次】,丢失需重新创建。
确认PHP版本 ≥ 8.0,安装cURL扩展:运行 php -m | grep curl,无输出则需启用 extension=curl.so(Linux)或取消 php.ini 中 ;extension=curl 行前的分号(Windows)。
发送标准文本生成请求
第一步:初始化cURL句柄 → 设置POST方法 → 设置Content-Type为application/json → 设置Authorization头为Bearer + 你的密钥 → 构造JSON请求体包含model和messages字段。
第二步:调用curl_exec()执行请求,用json_decode()解析返回内容,检查$response->choices[0]->message->content是否存在——若为空,大概率是messages格式错误或模型名拼写错误(如误写为deepseek-chat-v1)。
这一步操作起来很简单,直接把文件拖进去就行。
处理流式响应(SSE)
方法一:启用stream=true参数并手动解析Server-Sent Events
在JSON载荷中加入"stream": true → 使用curl_setopt($ch, CURLOPT_WRITEFUNCTION, $callback)捕获原始响应流 → 在回调函数中按行分割,跳过data:前缀,过滤空行和event:字段 → 每次收到完整JSON对象就json_decode()提取delta.content。
方法二:使用已封装的SDK(如deepseek-php)
通过composer require deepseek-ai/php-sdk安装 → 初始化Client时传入密钥 → 调用chat()->create([...])并设置stream: true → 迭代$stream->each()即可逐块获取文本。
【必须设置CURLOPT_HTTPHEADER中的Accept: text/event-stream】,否则API返回406 Not Acceptable。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











