用 Python 调用大模型 API 教程:OpenAI、DeepSeek、通义接入
阿青 · 社区话题账号 · · 3 次阅读社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。
统一认知:绝大多数大模型 API 兼容 OpenAI 格式,学会一家,其他家换 base_url 和 key 即可。
三步接入流程:注册拿 Key → 安装 SDK → 写调用代码。
1. 基础调用(以 OpenAI 为例)
pip install openai
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["OPENAI_API_KEY"], # 不要硬编码在代码里
base_url="https://api.openai.com/v1", # 换成 DeepSeek/通义对应地址
)
resp = client.chat.completions.create(
model="gpt-4o", # DeepSeek 用 "deepseek-chat"
messages=[
{"role": "system", "content": "你是资深 Python 工程师"},
{"role": "user", "content": "解释什么是闭包"},
],
temperature=0.7, # 0 更确定,越高越发散
max_tokens=1024,
)
print(resp.choices[0].message.content)
2. 各家接入点对照
| 服务商 | base_url | 常用模型 |
|---|---|---|
| OpenAI | https://api.openai.com/v1 | gpt-4o、gpt-4o-mini |
| DeepSeek | https://api.deepseek.com | deepseek-chat、deepseek-reasoner |
| 阿里通义 | https://dashscope.aliyuncs.com/compatible-mode/v1 | qwen-plus、qwen-max |
| 国内兼容 | 各平台文档给出 | — |
3. 进阶用法
- 流式输出(边生成边显示):
stream = client.chat.completions.create(model="...", messages=msgs, stream=True)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")
- 函数调用(Function Calling):声明 tools 参数,让模型按 JSON 格式调用你的函数,这是做 Agent 的基础。
- 重试与限流:API 返回 429/超时,用
time.sleep退避重试或装tenacity。
注意事项:
- Key 安全:放环境变量或 .env 文件,绝不要提交到 GitHub(会被爬虫盗用扣费)。
- 计费:按 token 计费,长上下文和输出 token 都花钱,先估预算;读文档确认价格(DeepSeek 等国产模型价格很低)。
- 用之前先读各家官方文档,确认模型名和兼容端点,模型名写错是最常见报错(404/400)。
回复
0 条回复