Skip to content

DeepSeek兼容接口

DeepSeek官方的API默认都是OpenAI兼容格式的,按照本站openai调用方式调用即可,只需要替换模型,但是需要注意一点,官方的兼容格式兼容能力有限,很多参数都不支持,这里如果遇到问题,需要参考官方文档排查:官方文档

WARNING

由于DeepSeek服务器压力过大,官方API一直处于瘫痪状态,春节后甚至直接进关闭充值渠道,不允许用户充值了。

为了解决DeepSeek持续不可用的问题,CloseAI目前已经和其他国内厂商合作,使用开源版本的671B满血版本R1,效果和官方DeepSeek性能一致,具体参数限制可能有些许差异,有问题请及时反馈。

WARNING

官方不支持的参数:temperature、top_p、presence_penalty、frequency_penalty、logprobs、top_logprobs。请注意,为了兼容已有软件,设置 temperature、top_p、presence_penalty、frequency_penalty 参数不会报错,但也不会生效。设置 logprobs、top_logprobs 会报错。

为了解决一些兼容性问题,CloseAI在官方的基础之上,做了一些兼容性处理,比如会合并同一个角色的多个对话,这个OpenAI是不限制的,但是DeepSeek严格要求角色的对话顺序。

curl请求

注意一定要替换为我们的api base和api key,差一个都是不对的。

shell
curl https://api.openai-proxy.org/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-xxxxx" \
  -d '{
    "model": "deepseek-reasoner",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Openai 官方Python库

注意一定要替换为我们的api base和api key,差一个都是不对的。另外openai新版库和旧版本库也是不一样的

python
from openai import OpenAI

client = OpenAI(
    base_url='https://api.openai-proxy.org/v1',
    api_key='sk-xxxxxxxx',
)

chat_completion = client.chat.completions.create(
    messages=[
        {
            "role": "user",
            "content": "Say hi",
        }
    ],
    model="deepseek-reasoner",
)

WARNING

注意配置api_base时,应该加上一个/v1的后缀,而不是只有域名,要不然会报404错误。