国内主流大模型 API 调用指南与 Python 实战
本文详细介绍了国内主流大模型平台(包括 DeepSeek、智普 AI、Kimi、字节豆包、讯飞星火、通义千问)的 Python API 接入方法。内容涵盖环境配置、SDK 安装、代码实现示例(含流式与非流式调用)、参数调优建议及安全规范。文章还总结了 API 调用的通用模式,提供了错误处理策略,并规划了从基础认知到应用开发的学习路径,旨在帮助开发者快速上手大模型开发并进行实战落地。

本文详细介绍了国内主流大模型平台(包括 DeepSeek、智普 AI、Kimi、字节豆包、讯飞星火、通义千问)的 Python API 接入方法。内容涵盖环境配置、SDK 安装、代码实现示例(含流式与非流式调用)、参数调优建议及安全规范。文章还总结了 API 调用的通用模式,提供了错误处理策略,并规划了从基础认知到应用开发的学习路径,旨在帮助开发者快速上手大模型开发并进行实战落地。

随着人工智能技术的快速发展,大语言模型(LLM)已成为开发者构建智能应用的核心组件。本文档旨在提供一份详尽的指南,介绍如何在国内主流大模型厂商处获取并使用其 API 接口,涵盖 DeepSeek、智普 AI、Kimi、字节豆包、讯飞星火及通义千问等平台的 Python SDK 集成与调用示例。
在开始调用 API 之前,请确保您的开发环境满足以下要求:
.env 文件存储密钥,并在 .gitignore 中排除该文件。DeepSeek 支持标准的 Requests 直接调用和 OpenAI 兼容式调用。新注册用户通常享有免费 Token 额度。
import requests
import json
url = "https://api.deepseek.com/chat/completions"
payload = json.dumps({
"messages": [
{
"role": "system",
"content": "You are a helpful assistant"
},
{
"role": "user",
"content": "Hello"
}
],
"model": "deepseek-coder",
"frequency_penalty": 0,
"max_tokens": 2048,
"presence_penalty": 0,
"stop": None,
"stream": False,
"temperature": 1,
"top_p": 1,
"logprobs": False,
"top_logprobs": None
})
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.deepseek.com"
)
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Hello"}
],
max_tokens=1024,
temperature=0.7,
stream=False
)
print(response.choices[0].message.content)
智普 AI 需要安装 zhipuai 包。新注册用户有赠送 Token。
pip install zhipuai
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="YOUR_API_KEY")
response = client.chat.completions.create(
model="glm-4", # 填写需要调用的模型名称
messages=[
{
"role": "user",
"content": "你好!你叫什么名字"
}
],
stream=True,
)
for chunk in response:
if chunk.choices and chunk.choices[0].delta:
print(chunk.choices[0].delta.content, end="")
Kimi 支持 OpenAI 样式的调用,新注册用户通常有体验额度。
pip install --upgrade 'openai>=1.0'
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.moonshot.cn/v1",
)
completion = client.chat.completions.create(
model="moonshot-v1-8k",
messages=[
{
"role": "system",
"content": "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。同时,你会拒绝一切涉及恐怖主义,种族歧视,黄色暴力等问题的回答。Moonshot AI 为专有名词,不可翻译成其他语言。"
},
{
"role": "user",
"content": "你好,我叫李雷,1+1 等于多少?"
}
],
temperature=0.3,
)
print(completion.choices[0].message.content)
豆包需要安装方舟包 volcengine-python-sdk[ark]。
pip install 'volcengine-python-sdk[ark]'
from volcenginesdkarkruntime import Ark
# 认证方式:推荐使用环境变量 ARK_API_KEY 或在初始化时指定
# client = Ark(api_key="YOUR_API_KEY")
client = Ark()
# 非流式请求
print("----- standard request -----")
completion = client.chat.completions.create(
model="YOUR_ENDPOINT_ID",
messages=[
{
"role": "system",
"content": "你是豆包,是由字节跳动开发的 AI 人工智能助手"
},
{
"role": "user",
"content": "常见的十字花科植物有哪些?"
}
],
)
print(completion.choices[0].message.content)
# 流式请求
print("----- streaming request -----")
stream = client.chat.completions.create(
model="YOUR_ENDPOINT_ID",
messages=[
{
"role": "system",
"content": "你是豆包,是由字节跳动开发的 AI 人工智能助手"
},
{
"role": "user",
"content": "常见的十字花科植物有哪些?"
}
],
stream=True
)
for chunk in stream:
if not chunk.choices:
continue
print(chunk.choices[0].delta.content, end="")
print()
讯飞星火新注册用户有免费额度,不同模型额度不同。接口采用 WebSocket 协议。
pip install --upgrade spark_ai_python
from sparkai.llm.llm import ChatSparkLLM, ChunkPrintHandler
from sparkai.core.messages import ChatMessage
# 配置参数,请从讯飞开放平台控制台获取
SPARKAI_URL = 'wss://spark-api.xf-yun.com/v3.5/chat'
SPARKAI_APP_ID = 'YOUR_APP_ID'
SPARKAI_API_SECRET = 'YOUR_API_SECRET'
SPARKAI_API_KEY = 'YOUR_API_KEY'
SPARKAI_DOMAIN = 'generalv3.5'
if __name__ == '__main__':
spark = ChatSparkLLM(
spark_api_url=SPARKAI_URL,
spark_app_id=SPARKAI_APP_ID,
spark_api_key=SPARKAI_API_KEY,
spark_api_secret=SPARKAI_API_SECRET,
spark_llm_domain=SPARKAI_DOMAIN,
streaming=False,
)
messages = [ChatMessage(
role="user",
content='你好呀'
)]
handler = ChunkPrintHandler()
a = spark.generate([messages], callbacks=[handler])
print(a)
通义千问使用 DashScope SDK。
pip install dashscope
import random
from http import HTTPStatus
from dashscope import Generation
def call_with_messages():
messages = [{
'role': 'system',
'content': 'You are a helpful assistant.'
}, {
'role': 'user',
'content': '如何做西红柿炒鸡蛋?'
}]
response = Generation.call(
model="qwen-turbo",
messages=messages,
seed=random.randint(1, 10000),
result_format='message'
)
if response.status_code == HTTPStatus.OK:
print(response)
else:
print('Request id: %s, Status code: %s, error code: %s, error message: %s' % (
response.request_id, response.status_code,
response.code, response.message
))
if __name__ == '__main__':
call_with_messages()
通过上述示例可以看出,国内主流大模型的 API 使用大同小异,但也存在差异。
在实际生产中,必须包含完善的异常捕获逻辑。网络波动、Token 耗尽、服务限流等情况均需重试机制或降级策略。
为了深入掌握大模型技术,建议按照以下路径进行学习:
了解人工智能演进历程,理解 GPT 模型的发展脉络,掌握 Transformer 架构的基本原理(嵌入表示层、注意力层、前馈层等)。
学习数据来源分类(通用数据 vs 专业数据),掌握数据清洗流程(低质过滤、冗余去除、隐私消除、词元切分),了解常用开源数据集(Pile, ROOTS, RefinedWeb 等)。
大模型技术日新月异,保持对新技术的敏感度至关重要。理论是基础,实践是关键。通过实际项目练习,将理论知识转化为解决实际问题的能力,是成为优秀 AI 工程师的必经之路。建议在掌握基础 API 调用后,尝试构建完整的 RAG(检索增强生成)系统或 Agent(智能体)应用,以深化对生态的理解。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online