Python使用openAi调用deepseek方法
你可以将流式响应的内容保存到文件或发送到其他系统,而不仅仅是打印到控制台。
·
80%有deepseek生成,但是不完全好用,代码部分呢做了修改
如果你想使用 OpenAI 的 Python 客户端库调用 OpenAI API 并处理流式响应(stream=True
),可以参考以下示例代码。OpenAI 提供了官方的 openai
Python 库,可以方便地与 OpenAI API 进行交互。
安装 OpenAI 库
首先,确保你已经安装了 OpenAI 的 Python 库。如果没有安装,可以使用以下命令安装:
pip install openai
示例代码
以下是一个完整的示例代码,展示如何使用 OpenAI 的 Python 库调用 GPT 模型并处理流式响应:
# Please install OpenAI SDK first: `pip3 install openai`
from openai import OpenAI
client = OpenAI(api_key="",#自己生成key,需要充值才能使用
base_url="https://api.deepseek.com")
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "user", "content": "java如何使用deepseek"},
],
stream=True
)
for chunk in response:
print(chunk)
# 检查是否有内容返回
if chunk.choices:
content = chunk.choices[0].delta.content
if content:
# print("===========================") # 逐块打印内容
print(content, end="", flush=True) # 逐块打印内容
代码说明
-
设置 API 密钥:
- 将
your-api-key-here
替换为你的 OpenAI API 密钥。
- 将
-
发起请求:
- 使用
openai.ChatCompletion.create
方法调用 GPT 模型。 model
参数指定使用的模型(如gpt-4
或gpt-3.5-turbo
)。messages
参数是一个列表,包含对话的历史记录。每条消息需要指定role
(system
、user
或assistant
)和content
(消息内容)。stream=True
启用流式响应。
- 使用
-
处理流式响应:
- 使用
for chunk in response
逐块读取响应。 - 每个
chunk
是一个字典,包含部分响应数据。 - 通过
chunk["choices"][0].get("delta", {}).get("content", "")
提取出当前块的内容。 - 使用
print(content, end="", flush=True)
逐块打印内容,end=""
确保内容在同一行输出,flush=True
确保内容立即显示。
- 使用
注意事项
-
API 密钥:
- 请妥善保管你的 API 密钥,不要将其暴露在公共代码库中。
-
流式响应:
- 流式响应适用于需要逐步显示结果的场景,例如实时聊天或生成长文本。
-
错误处理:
- 在实际应用中,建议添加错误处理逻辑,以应对网络问题或 API 返回的错误。
-
模型选择:
- 根据你的需求选择合适的模型(如
gpt-4
或gpt-3.5-turbo
)。
- 根据你的需求选择合适的模型(如
-
不充值没啥卵用:
- 前往deepseek捐点,调用就能返回。
进一步优化
-
异步调用:
如果你需要处理多个并发请求,可以使用openai
库的异步支持(await openai.ChatCompletion.acreate
)。 -
自定义输出:
你可以将流式响应的内容保存到文件或发送到其他系统,而不仅仅是打印到控制台。

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)