目录
一、前置准备
参考:
【大模型应用开发-实战】(四)手把手入门智普清言官方API调用-准备工作(一)-CSDN博客
二、多种方式实现
1、curl方式实现
代码实现
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
}'
2、requests方式实现
1)安装依赖
pip install requests==2.32.4
2)新建.env文件
DEEPSEEK_API_KEY = "XXX"
3)核心调用实现
deepseek_requests_call.py
import requests
from dotenv import load_dotenv
import os
load_dotenv()
api_key = os.getenv("DEEPSEEK_API_KEY")
print(f"api_key:{api_key}")
def call_deepseek_api(prompt, api_key, model="deepseek-chat", temperature=0.7):
"""
调用DeepSeek API的函数
参数:
prompt (str): 用户输入的提示文本
api_key (str): DeepSeek API密钥
model (str): 要使用的模型,默认为"deepseek-chat"
temperature (float): 控制生成文本的随机性,0-1之间
返回:
str: API返回的响应内容
"""
# API端点
API_URL = "https://api.deepseek.com/v1/chat/completions"
# 请求头
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
# 请求体
data = {
"model": model,
"messages": [
{"role": "system", "content": "你是一个有帮助的AI助手。"},
{"role": "user", "content": prompt}
],
"temperature": temperature
}
try:
# 发送POST请求
response = requests.post(API_URL, json=data, headers=headers)
response.raise_for_status() # 检查HTTP错误
# 解析响应
result = response.json()
return result["choices"][0]["message"]["content"]
except requests.exceptions.RequestException as e:
print(f"请求失败: {e}")
return None
def deepseek_requests_call():
# 用户输入
user_prompt = "用Python写一个快速排序算法"
# 调用API
response = call_deepseek_api(user_prompt, api_key)
# 打印结果
if response:
print("DeepSeek回复:")
print(response)
else:
print("未能获取有效响应")
if __name__ == "__main__":
deepseek_requests_call()