先说效果
我花了一个下午,用DeepSeek API写了个小工具,能自动回答技术问题、总结文档,还能当个简易聊天机器人用。整个过程比想象中简单——注册账号、拿API Key、写几行Python代码就搞定了。如果你也想自己动手做个AI小工具,跟着我这篇实录走,半小时内应该能调通。
第一步:注册DeepSeek账号
DeepSeek官网(deepseek.com)注册流程很常规,但有个小坑要注意:
- 用邮箱注册,收验证码激活
- 建议用常用邮箱,后面API Key会发到这里
- 注册后最好完善一下个人资料,有些API服务可能需要实名
吐槽一下:验证码邮件有时候会进垃圾箱,我等了5分钟没收到,去垃圾邮件里翻才找到。
第二步:获取API Key
登录后,在控制台找到“API管理”或“开发者中心”:
- 点击“创建API Key”
- 给Key起个名字,比如“my_first_tool”
- 权限选“读写”就行,除非你只需要调用特定功能
重要提醒:API Key只显示一次,务必立即复制保存到安全的地方。我习惯存到本地密码管理器,同时备份到加密文件里。
Key看起来像这样:sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(实际更长)。
第三步:安装Python SDK
DeepSeek官方提供了Python SDK,安装很简单:
pip install deepseek-api
如果你用虚拟环境(推荐),先创建并激活:
python -m venv venv
source venv/bin/activate # Windows用 venv\Scripts\activate
pip install deepseek-api
我测试时SDK版本是0.1.2,兼容Python 3.7+。
第四步:写出第一个调用代码
新建一个Python文件,比如deepseek_test.py,写入以下代码:
import os
from deepseek_api import DeepSeek
# 设置API Key(建议用环境变量,这里为了演示直接写)
api_key = "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# 初始化客户端
client = DeepSeek(api_key=api_key)
# 调用聊天接口
response = client.chat.completions.create(
model="deepseek-chat", # 模型名称
messages=[
{"role": "user", "content": "用一句话解释什么是API"}
],
max_tokens=100
)
# 打印结果
print(response.choices[0].message.content)
运行代码:
python deepseek_test.py
如果一切正常,你会看到类似这样的输出:API是应用程序编程接口,允许不同软件之间相互通信和交换数据。
第五步:处理返回结果
实际开发中,我们需要更灵活地处理响应。DeepSeek API返回的是结构化数据:
# 完整响应示例
print(response)
# 输出结构:
# {
# "id": "chatcmpl-xxx",
# "choices": [{
# "index": 0,
# "message": {
# "role": "assistant",
# "content": "..."
# },
# "finish_reason": "stop"
# }],
# "usage": {"prompt_tokens": 10, "completion_tokens": 20, "total_tokens": 30}
# }
# 提取内容
answer = response.choices[0].message.content
print(f"AI回答:{answer}")
# 查看token使用量(计费依据)
tokens_used = response.usage.total_tokens
print(f"本次消耗token数:{tokens_used}")
我写了个简单的封装函数,方便复用:
def ask_deepseek(question, model="deepseek-chat", max_tokens=500):
"""
向DeepSeek提问
"""
try:
response = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": question}],
max_tokens=max_tokens
)
return {
"success": True,
"answer": response.choices[0].message.content,
"tokens": response.usage.total_tokens
}
except Exception as e:
return {"success": False, "error": str(e)}
# 使用示例
result = ask_deepseek("Python里怎么快速去重列表?")
if result["success"]:
print(result["answer"])
else:
print(f"调用失败:{result['error']}")
实际应用:做个文档总结小工具
有了基础调用能力,我写了个实际可用的工具——文档总结器:
def summarize_text(text, max_length=200):
"""
总结长文本
"""
prompt = f"请用{max_length}字以内总结以下内容:\n\n{text}"
response = client.chat.completions.create(
model="deepseek-chat",
messages=[{"role": "user", "content": prompt}],
max_tokens=max_length + 50
)
return response.choices[0].message.content.strip()
# 测试
long_text = """
人工智能是计算机科学的一个分支,旨在创建能够执行通常需要人类智能的任务的系统。
这些任务包括学习、推理、问题解决、感知和语言理解。AI技术已经广泛应用于各个领域,
从推荐系统到自动驾驶汽车。近年来,深度学习的发展极大地推动了AI的进步。
"""
summary = summarize_text(long_text, max_length=100)
print(f"总结:{summary}")
# 输出类似:人工智能是计算机科学分支,创建能执行人类智能任务的系统,已广泛应用于推荐、自动驾驶等领域,深度学习推动了其发展。
注意事项和踩坑记录
1. API Key安全
- 永远不要将API Key提交到GitHub等公开仓库
- 建议用环境变量:
export DEEPSEEK_API_KEY="your_key",代码中通过os.getenv("DEEPSEEK_API_KEY")读取
2. 错误处理
常见错误和解决方法:
# 1. 认证失败
# 错误信息:Invalid authentication
# 检查API Key是否正确,是否有空格
# 2. 超过频率限制
# 错误信息:Rate limit exceeded
# 免费版有调用限制,可以考虑:
# - 添加延迟:time.sleep(1)
# - 升级套餐
# 3. token超限
# 错误信息:maximum context length
# 减少max_tokens参数或缩短输入文本
3. 模型选择
DeepSeek提供多个模型:
deepseek-chat:通用聊天模型,适合大多数场景deepseek-coder:专为代码生成优化- 具体可用模型查官方文档,不同模型计费可能不同
总结
整个流程走下来,DeepSeek API的接入确实比我想象的简单。关键步骤就四步:注册拿Key、装SDK、写调用代码、处理响应。Python代码不到50行就能实现基本功能。
我建议新手先按我这篇实录跑通基础流程,然后再去官方文档看高级功能(比如流式响应、多轮对话)。有了这个基础,你可以轻松扩展出各种小工具:自动客服、代码助手、内容生成器等等。
最后提醒:API调用是计费的,虽然新用户有免费额度,但正式使用前最好了解清楚定价策略。先从小工具开始,慢慢迭代,这才是玩转AI API的正确姿势。
本文来源:一江山水的随笔
本文地址:https://298.name/post/184.html
主要内容:DeepSeek API实战:从零到一调通第一个AI工具(Python版)
版权声明:如无特别注明,转载请注明本文地址!
