首次调用 Deepseek API

Updated on in develop

调用deespseek api接口

前言:DeepSeek API 采用与 OpenAI 兼容的 API 格式,可通过修改配置用 OpenAI SDK 或兼容软件访问。其base_urlhttps://api.deepseek.com ,需申请api_keydeepseek-chat已升级为 DeepSeek-V3,deepseek-reasoner即 DeepSeek-R1,分别通过指定model='deepseek-chat'model='deepseek-reasoner'调用。文中提供了 Curl、Python、Node.js 的调用对话 API 示例代码。

  1. 思维导图

202503220729.png

  1. 详细总结
    DeepSeek API 提供了一种使用与 OpenAI 兼容格式的访问方式,开发者可通过修改配置,利用 OpenAI SDK 或与 OpenAI API 兼容的软件来访问。
  • 关键参数

    PARAM VALUE
    base_url https://api.deepseek.com(也可设为https://api.deepseek.com/v1 ,v1 与模型版本无关)
    api_key 需申请
  • 模型情况

    • deepseek-chat模型已全面升级为 DeepSeek-V3,通过指定model='deepseek-chat'即可调用。
    • deepseek-reasoner是 DeepSeek 最新推出的推理模型 DeepSeek-R1,通过指定model='deepseek-reasoner'即可调用。
  • 调用示例:在获取 API key 后,可使用以下示例代码调用对话 API,样例默认非流式输出,将stream设置为true可使用流式输出。

    • Curl 示例

bash

curl https://api.deepseek.com/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <DeepSeek API Key>" \ -d '{ "model": "deepseek-chat", "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Hello!"} ], "stream": false }'
  • Python 示例:需先安装 OpenAI SDK(pip3 install openai)。

python

from openai import OpenAI

client = OpenAI(api_key="<DeepSeek API Key>", base_url="https://api.deepseek.com")

response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Hello"},
],
stream=False
)

print(response.choices[0].message.content)

  • Node.js 示例:需先安装 OpenAI SDK(npm install openai)。

javascript

import OpenAI from "openai";

const openai = new OpenAI({
baseURL: 'https://api.deepseek.com,
apiKey: '<DeepSeek API Key>'
});

async function main() {
const completion = await openai.chat.completions.create({
messages: [{ role: "system", content: "You are a helpful assistant." }],
model: "deepseek-chat",
});

console.log(completion.choices[0].message.content);
}

main();

  1. 关键问题
    • 问题 1:DeepSeek API 与 OpenAI API 的兼容性体现在哪些方面?
      • 答案:DeepSeek API 使用与 OpenAI 兼容的 API 格式,可通过修改配置,使用 OpenAI SDK 来访问 DeepSeek API,或使用与 OpenAI API 兼容的软件,且请求参数格式类似,如都有model等参数。
    • 问题 2:如果想使用流式输出,在 Python 示例代码中需要修改哪些地方?
      • 答案:在 Python 示例代码中,将stream=False修改为stream=True即可使用流式输出。
    • 问题 3:调用 deepseek-reasoner 模型(DeepSeek-R1)时,Curl 示例代码应该如何修改?
      • 答案:将 Curl 示例代码中的"model": "deepseek-chat"修改为"model": "deepseek-reasoner",其他部分保持不变。修改后的代码如下:

bash

curl https://api.deepseek.com/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <DeepSeek API Key>" \ -d '{ "model": "deepseek-reasoner", "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Hello!"} ], "stream": false }'