学习 DeepSeek 的 API 调用
1、API 文档学习
1.1 FIM 补全(Beta)
FIM 为上下文补全,填写中间的文本。
FIM 补全为测试功能,使用网址有不同,其网址为: base_url="https://api.deepseek.com/beta"
简单代码如下:
from openai import OpenAI
client = OpenAI(
api_key="sk-123456",
base_url="https://api.deepseek.com/beta",
)
response = client.completions.create(
model="deepseek-chat",
prompt="def fib(a):",
suffix=" return fib(a-1) + fib(a-2)",
max_tokens=128)
print(response.choices[0].text)
不使用连续对话功能,所以使用
completions.create()
函数,可以看第一篇文章了解。
不同的参数:prompt
表示用户要求的上文;suffix
表示用户要求的下文
结果如下:
1.2 列出模型
from openai import OpenAI
client = OpenAI(api_key="sk-123456", base_url="https://api.deepseek.com")
print(client.models.list())
结果为:
SyncPage[Model](data=[
Model(id='deepseek-chat', created=None, object='model', owned_by='deepseek'),
Model(id='deepseek-reasoner', created=None, object='model', owned_by='deepseek')
],
object='list')
简单的代码,可以自己运行一下,结果固定不变。
1.3 查询余额
import requests
url = "https://api.deepseek.com/user/balance"
payload={}
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer sk-123456'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
结果为:
{"is_available":true,
"balance_infos":[{"currency":"CNY",
"total_balance":"9.99",
"granted_balance":"0.00",
"topped_up_balance":"9.99"
}]}