API_KEY——API调用指南

引言: 大模型 API 是连接开发者与 AI 能力的桥梁。相比直接使用网页端对话,API 调用让你可以将大模型能力嵌入到自己的应用、脚本和工作流中,实现批量处理、自动化任务和定制化交互。本文将以实战为导向,介绍各个主流大模型平台的 API 调用方式,帮助你快速上手。

智谱 BigModel

智谱 BigModel 开放平台 是智谱 AI 推出的大模型 API 服务平台,提供了 GLM 系列模型的 API 接口。其最大的优势在于:免费模型丰富、兼容 OpenAI API 格式、支持批量调用

Free Models

智谱平台为开发者提供了多个免费模型,覆盖文本、图像、视频等场景,注册即送 2000 万 Token,无需充值即可使用。

免费额度对于学习、测试和轻量级应用完全够用,是入门大模型 API 的最佳起点。

模型类型亮点
GLM-4.7-Flash文本生成强化编码能力与工具协同,面向 Agentic Coding 场景优化,同尺寸开源模型中表现出色
GLM-4.6V-Flash图像理解128K 上下文,视觉理解精度同参数规模领先,原生支持 Function Call,打通「感知→行动」链路
CogView-3-Flash图像生成文生图模型,适用于艺术创作、设计参考、游戏素材等场景
CogVideoX-Flash视频生成文生视频模型,根据文本指令生成高质量短视频

API调用方法

智谱平台兼容 OpenAI API 格式,这意味着你可以直接复用 OpenAI 生态中的代码和工具,只需修改 base_urlapi_key 即可。

Base URL:

1
https://open.bigmodel.cn/api/paas/v4/

主要参数说明:

参数类型说明
modelstring模型名称,如 glm-4-flash
messageslist对话消息列表,包含 rolecontent
temperaturefloat采样温度,范围 0~1,值越高输出越随机
top_pfloat核采样参数,范围 0~1,与 temperature 二选一调节
max_tokensint最大输出 Token 数
streambool是否开启流式输出

下面介绍三种调用方式。

Python requests 直接调用

最基础的调用方式,不依赖任何 SDK,适合理解 API 的请求结构。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import requests

url = "https://open.bigmodel.cn/api/paas/v4/chat/completions"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
data = {
"model": "glm-4-flash",
"messages": [
{"role": "system", "content": "你是一个乐于助人的AI助手。"},
{"role": "user", "content": "请用一句话介绍什么是大模型API。"}
],
"temperature": 0.7,
"max_tokens": 1024
}

response = requests.post(url, headers=headers, json=data)
result = response.json()
print(result["choices"][0]["message"]["content"])

OpenAI SDK 兼容调用

如果你已经熟悉 OpenAI SDK,只需将 base_urlapi_key 替换为智谱的即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from openai import OpenAI

client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://open.bigmodel.cn/api/paas/v4/"
)

response = client.chat.completions.create(
model="glm-4-flash",
messages=[
{"role": "system", "content": "你是一个乐于助人的AI助手。"},
{"role": "user", "content": "请用一句话介绍什么是大模型API。"}
],
temperature=0.7,
max_tokens=1024
)

print(response.choices[0].message.content)

使用 OpenAI SDK 调用前,需要先安装:pip install openai

智谱官方 zhipuai SDK 调用

智谱提供了官方 Python SDK,封装了更多平台特有的功能。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from zai import ZhipuAiClient

client = ZhipuAiClient(api_key="YOUR_API_KEY")

response = client.chat.completions.create(
model="glm-4-flash",
messages=[
{"role": "system", "content": "你是一个乐于助人的AI助手。"},
{"role": "user", "content": "请用一句话介绍什么是大模型API。"}
],
temperature=0.7,
max_tokens=1024
)

print(response.choices[0].message.content)

使用前需要安装官方 SDK:pip install zhipuai

批量调用

智谱平台提供了 Batch API,适合需要大规模处理但不要求实时响应的场景,具体参考:https://docs.bigmodel.cn/cn/guide/tools/batch

核心优势: 半价(50% 折扣)、无并发限制、24 小时内完成。适合批量数据处理、评测、数据标注等任务。

使用流程:

1
准备 .jsonl 文件 → 上传文件 → 创建 Batch 任务 → 查询状态 → 下载结果

Step 1:准备 .jsonl 文件

每一行是一个独立的请求,格式如下:

1
2
{"custom_id": "request-1", "method": "POST", "url": "/v4/chat/completions", "body": {"model": "glm-4-flash", "messages": [{"role": "user", "content": "你好"}], "max_tokens": 1024}}
{"custom_id": "request-2", "method": "POST", "url": "/v4/chat/completions", "body": {"model": "glm-4-flash", "messages": [{"role": "user", "content": "什么是API?"}], "max_tokens": 1024}}

Step 2:上传文件并创建 Batch 任务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from zai import ZhipuAiClient

client = ZhipuAiClient(api_key="YOUR_API_KEY")

# 上传 .jsonl 文件
file = client.files.create(
file=open("batch_requests.jsonl", "rb"),
purpose="batch"
)
print(f"文件ID: {file.id}")

# 创建 Batch 任务
batch = client.batches.create(
input_file_id=file.id,
endpoint="/v4/chat/completions",
completion_window="24h",
metadata={"description": "my batch job"}
)
print(f"Batch ID: {batch.id}")

Step 3:查询状态与下载结果

1
2
3
4
5
6
7
8
9
10
11
# 查询 Batch 状态
batch_status = client.batches.retrieve(batch.id)
print(f"状态: {batch_status.status}")

# 当状态为 completed 时,下载结果
if batch_status.status == "completed":
output_file_id = batch_status.output_file_id
content = client.files.content(output_file_id)
with open("batch_results.jsonl", "w") as f:
f.write(content.text)
print("结果已保存到 batch_results.jsonl")

批量调用特别适合以下场景:大规模数据标注、模型评测、文本批量翻译或摘要、离线数据处理流水线。只要对延迟不敏感,Batch API 是性价比最高的选择。

OpenRouter

OpenRouter 是一个统一的大模型 API 网关,聚合了来自 OpenAI、Google、Meta、Qwen、DeepSeek 等多家厂商的模型。其核心价值在于:一个 API Key 调用数百种模型,且提供免费模型额度

Free Models

OpenRouter 提供了多个免费模型,模型名以 :free 后缀标识。免费模型有一定的速率限制和输入 Token 上限,适合学习和轻量测试。

免费模型无需绑定支付方式,注册后即可获取 API Key 使用。

模型厂商说明
deepseek/deepseek-r1-0528:freeDeepSeek推理模型,支持思维链,适合复杂逻辑任务
qwen/qwen3-coder:freeQwen代码生成模型,面向编程场景优化
qwen/qwen3-next-80b-a3b-instruct:freeQwen80B MoE 模型,仅激活 3B 参数,性价比高
openai/gpt-oss-20b:freeOpenAI20B 开源模型,通用文本生成
stepfun/step-3.5-flash:freeStepFun轻量快速模型,适合简单对话任务

免费模型会限制输入 Token 数量和每分钟请求数,不适合生产环境。完整免费模型列表见:openrouter.ai/models?q=:free

API 调用方法

OpenRouter 兼容 OpenAI API 格式,同时也提供官方 SDK。

Base URL:

1
https://openrouter.ai/api/v1

下面介绍三种调用方式。

Python requests 直接调用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import requests
import json

response = requests.post(
url="https://openrouter.ai/api/v1/chat/completions",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
data=json.dumps({
"model": "qwen/qwen3-4b:free",
"messages": [
{"role": "user", "content": "What is the meaning of life?"}
]
})
)

result = response.json()
print(result["choices"][0]["message"]["content"])

OpenAI SDK 兼容调用

与智谱类似,只需替换 base_urlapi_key。OpenRouter 额外支持 HTTP-RefererX-Title 请求头,用于在排行榜中标识你的站点(可选)。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from openai import OpenAI

client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="YOUR_API_KEY",
)

completion = client.chat.completions.create(
extra_headers={
"HTTP-Referer": "https://your-site.com", # 可选
"X-Title": "YourAppName", # 可选
},
model="qwen/qwen3-4b:free",
messages=[
{"role": "user", "content": "What is the meaning of life?"}
]
)

print(completion.choices[0].message.content)

OpenRouter 官方 SDK 调用(JavaScript)

OpenRouter 提供了官方 JavaScript/TypeScript SDK,支持流式输出。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import { OpenRouter } from "@openrouter/sdk";

const openrouter = new OpenRouter({
apiKey: "YOUR_API_KEY"
});

const stream = await openrouter.chat.send({
model: "qwen/qwen3-4b:free",
messages: [
{ role: "user", content: "What is the meaning of life?" }
],
stream: true
});

for await (const chunk of stream) {
const content = chunk.choices[0]?.delta?.content;
if (content) {
process.stdout.write(content);
}
}

安装官方 SDK:npm install @openrouter/sdk

火山方舟

火山引擎方舟平台 是字节跳动推出的大模型服务平台,提供豆包(Doubao)系列模型的 API 接口。其核心优势在于:模型能力强、兼容 OpenAI API 格式、支持批量调用,且提供免费额度

Free Models

火山引擎为新用户提供了免费体验额度——每个模型50w token,覆盖豆包系列多个模型。

模型说明
doubao-seed-1-6豆包种子模型,通用文本生成
doubao-1-5-pro-32k豆包 Pro 版本,32K 上下文,综合能力强
doubao-1-5-lite-32k轻量版本,速度快,适合简单任务

具体免费额度和模型列表以 方舟平台控制台 为准,新用户注册后可在控制台查看可用模型和额度。

API 调用方法

火山引擎兼容 OpenAI API 格式,同时提供官方 Python SDK。

Base URL:

1
https://ark.cn-beijing.volces.com/api/v3

火山引擎使用 Model ID(而非模型名称)来指定模型,需要在控制台创建推理接入点后获取。部分模型也支持直接使用模型名称调用,如 doubao-seed-1-6-251015

下面介绍两种调用方式。

OpenAI SDK 兼容调用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from openai import OpenAI
import os

client = OpenAI(
base_url="https://ark.cn-beijing.volces.com/api/v3",
api_key=os.environ.get("ARK_API_KEY"),
)

completion = client.chat.completions.create(
model="doubao-seed-1-6-251015",
messages=[
{"role": "user", "content": "Hello"}
],
)

print(completion.choices[0].message.content)

火山引擎官方 SDK 调用

火山引擎提供了官方 Python SDK,封装了方舟平台特有的功能。

1
2
3
4
5
6
7
8
9
10
11
12
13
import os
from volcenginesdkarkruntime import Ark

client = Ark(api_key=os.environ.get("ARK_API_KEY"))

completion = client.chat.completions.create(
model="doubao-1-5-pro-32k-250115",
messages=[
{"role": "user", "content": "你好,请介绍一下你自己。"}
]
)

print(completion.choices[0].message.content)

安装官方 SDK:pip install 'volcengine-python-sdk[ark]'

批量调用

火山引擎方舟平台支持批量调用,批量调用半价,通过官方 SDK 的 batch 接口即可实现,适合离线批处理场景。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import os
from volcenginesdkarkruntime import Ark

client = Ark(api_key=os.environ.get("ARK_API_KEY"))

completion = client.batch.chat.completions.create(
model="YOUR_ENDPOINT_ID",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
)

print(completion.choices[0].message.content)

批量调用需要使用推理接入点 ID(Endpoint ID),格式如 ep-xxxxxxxx-xxxxx,需在控制台创建后获取。

阿里云百炼

阿里云百炼 是阿里巴巴推出的大模型服务平台,提供通义千问(Qwen)系列模型的 API 接口。其核心优势在于:Qwen 系列模型能力领先、兼容 OpenAI API 格式、提供丰富的免费额度

Free Models

阿里云百炼为开发者提供每个模型 100W 的token,涵盖通用对话、推理、编码等场景。

模型说明
qwen-plus通义千问增强版,综合能力强,适合大多数场景
qwen-turbo轻量快速版,响应速度快,适合简单对话
qwen-long长上下文版本,支持超长文本输入
qwen-max旗舰版本,能力最强(有限免费额度)

具体免费额度和模型列表见:模型列表

API 调用方法

阿里云百炼兼容 OpenAI API 格式,同时提供官方 DashScope SDK。

Base URL:

1
https://dashscope.aliyuncs.com/compatible-mode/v1

下面介绍两种调用方式。

OpenAI SDK 兼容调用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import os
from openai import OpenAI

client = OpenAI(
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)

completion = client.chat.completions.create(
model="qwen-plus",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是谁?"}
]
)

print(completion.choices[0].message.content)

DashScope 官方 SDK 调用

阿里云提供了官方 DashScope SDK,返回结构与 OpenAI SDK 略有不同,包含 status_code 等字段。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import os
from dashscope import Generation

messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是谁?"}
]

response = Generation.call(
api_key=os.getenv("DASHSCOPE_API_KEY"),
model="qwen-plus",
messages=messages,
result_format="message"
)

if response.status_code == 200:
print(response.output.choices[0].message.content)
else:
print(f"错误码:{response.code}")
print(f"错误信息:{response.message}")

安装官方 SDK:pip install dashscope

批量调用

阿里云百炼的批量调用兼容 OpenAI Batch API,只需将 base_url 替换为批量专用地址,并添加超时配置即可。

1
2
3
4
5
6
7
8
9
import os
from openai import OpenAI

API_KEY = os.getenv("DASHSCOPE_API_KEY")

client = OpenAI(
api_key=API_KEY,
base_url="https://batch.dashscope.aliyuncs.com/compatible-mode/v1",
).with_options(timeout=3600.0)

批量调用的 base_url 与普通调用不同,注意替换为 batch.dashscope.aliyuncs.com。后续的文件上传、Batch 创建、状态查询等流程与 OpenAI Batch API 一致。

Vertex AI

Vertex AI 是 Google Cloud 的 AI 平台,提供 Gemini 系列模型的 API 接口。其核心优势在于:Gemini 模型多模态能力强、新用户赠送 $300 免费额度、支持 OpenAI 兼容格式调用

Free Credits

Google Cloud 为每位新用户提供 $300 免费额度,可用于调用 Gemini 系列模型。

模型说明
gemini-3.0-flash最新 Flash 模型,速度快,性价比高
gemini-3.1-pro旗舰模型,综合能力最强

Vertex AI 的服务器在海外,国内网络需要挂代理才能正常调用。

API 调用方法

Vertex AI 提供 Google GenAI 官方 SDK 和 OpenAI 兼容接口两种调用方式。

下面介绍两种调用方式。

Google GenAI SDK 调用

最直接的调用方式,使用 API Key 认证。

1
2
3
4
5
6
7
8
9
10
11
from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))

response = client.models.generate_content(
model="gemini-2.5-flash",
contents="How does AI work?",
)

print(response.text)

安装 SDK:pip install google-genai。API Key 可在 Google AI Studio 获取。

OpenAI SDK 兼容调用

Vertex AI 也支持 OpenAI 兼容格式,但认证方式较为特殊——需要通过 Google Cloud 服务账号获取 Access Token。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
from google.auth import default
import google.auth.transport.requests
import openai

project_id = "YOUR_PROJECT_ID"
location = "us-central1"

# 通过服务账号获取 Access Token
credentials, _ = default(scopes=["https://www.googleapis.com/auth/cloud-platform"])
credentials.refresh(google.auth.transport.requests.Request())

client = openai.OpenAI(
base_url=f"https://{location}-aiplatform.googleapis.com/v1/projects/{project_id}/locations/{location}/endpoints/openapi",
api_key=credentials.token,
)

response = client.chat.completions.create(
model="google/gemini-2.0-flash-001",
messages=[
{"role": "user", "content": "Why is the sky blue?"}
],
)

print(response.choices[0].message.content)

此方式需要先安装 pip install google-auth openai,并配置 Google Cloud 项目凭证。适合已有 GCP 项目的开发者。

完整文档参考:Vertex AI Generative AI REST API,包括凭证配置、批量推理等高级用法。


API_KEY——API调用指南
https://choucisan.xyz/APIGuide.html
Author
choucisan
Posted on
January 15, 2026
Licensed under