LLM:使用API访问在线大模型
大语言模型从2022年底开始兴起,不到3年的发展,现在已经融入到工作、生活的方方面面,平时不管是用浏览器,还是AI IDE或者App,都可以方便地访问到各类大模型。
如果想要进一步多一些控制权,可以使用API调用大模型,从而把大模型的能力集成到自己的应用中。
通过API调用大模型是非常容易的,直接通过HTTP请求就可以实现调用,下面举两个例子说明。
OpenAI API
OpenAI做得最早,所以OpenAI的API接口成为了事实上的大语言模型的接口标准,其他家的大语言模型都会兼容OpenAI的API接口以便可以让一个chatGPT的工具可以切换到自家的大模型来。
调用OpenAI API跟把大象放进冰箱一样简单,大概分三步:
- 创建开放平台账号,获取API Key
- 通过API Key调用OpenAI API
- 交钱 嗯,API调用是收费的。
1、获取API Key
- 获取 API Key
- 访问 OpenAI Platform,使用注册账号登录
- 在 API Keys 页面创建新的 API Key
2、curl调用
export OPENAI_API_KEY='你创建的Key写在这里'
curl https://api.openai.com/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-4o-mini",
"input": [
{"role": "user", "content": [{"type": "text", "text": "Hello!"}]}
]
}'
3、程序调用
以Python为例,首先安装 SDK
pip install openai
然后就可以调用了:
from openai import OpenAI
# 生产环境一般要从配置文件读取Key
client = OpenAI(api_key="你创建的Key写在这里)
# API 调用
resp = client.responses.create(
model="gpt-4o-mini",
input=[
{"role": "system", "content": [{"type": "text", "text": "你是一个AI技术专家。"}]},
{"role": "user", "content": [{"type": "text", "text": "什么是机器学习?"}]}
],
temperature=0.7, # 控制输出的随机性,0-2之间
max_output_tokens=1000 # 最大输出 token 数
)
# 获取回复
print(resp.output_text)
由于大模型技术发展飞快,OpenAI的API接口也在不断更新,很可能你在网上查到的示例代码并不能运行,所以最好的方法还是直接访问OpenAI官方的API文档: https://platform.openai.com/docs/quickstart
里面有详细的调用说明、定价信息、代码示例,足以辅助你完成实际开发工作。
2023年4月的时候,我在我的小程序中接入了OpenAI API,让小程序用户可以直接和chatGPT3.5进行对话,当时微信平台还没有进行限制,效果还不错。不久后,微信就发布了新的管理方法,严禁小程序提供AI相关的功能,我的AI功能只能改为“人工”回答了,还要审核后才能发布,等于事实上无法使用了,比较遗憾。

另外,由于OpenAI API在国内无法访问,所以要实现接入chatGPT,还需要实现二步接力,由不受限制的海外服务器完成调用,再把结果返回给国内的服务器,再返回给小程序,当时实现的架构如下:

可以看出,由于某种对抗的存在,本来很简单的调用过程,变得复杂了很多。
GLM API
如果觉得太麻烦不想折腾chatGPT,可以使用国内的大模型,比如deepseek、千问、GLM都不错。这里用GLM举例(因为刚好有免费额度)。
流程一样:获取API Key,调用API。
详情看GLM的文档:https://docs.bigmodel.cn/cn/guide/start/quick-start
curl调用
curl -X POST "https://open.bigmodel.cn/api/paas/v4/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "glm-4.6",
"messages": [
{
"role": "system",
"content": "你是一个有用的AI助手。"
},
{
"role": "user",
"content": "你好,请介绍一下自己。"
}
],
"temperature": 1.0,
"stream": true
}'
程序调用
还是以Python为例,首先安装 SDK
pip install zai-sdk
然后就可以调用了:
from zai import ZhipuAiClient
# 初始化客户端
client = ZhipuAiClient(api_key="YOUR_API_KEY")
# 创建聊天完成请求
response = client.chat.completions.create(
model="glm-4.6",
messages=[
{
"role": "system",
"content": "你是一个有用的AI助手。"
},
{
"role": "user",
"content": "你好,请介绍一下自己。"
}
],
temperature=0.6
)
# 获取回复
print(response.choices[0].message.content)
是不是连SDK都和OpenAI高度相似?高度相似,大家的迁移成本就是最低的。
其他国产大模型
调用方法大同小异,具体看官方文档即可:
- DeepSeek API 文档:https://api-docs.deepseek.com/zh-cn/
- Qwen API 文档:https://help.aliyun.com/zh/model-studio/qwen-api-reference
总结
通过API调用在线大模型非常容易,也是最强大的大模型首选使用方法。
但是在实际的项目中,很多toB客户对数据保密性有要求,不允许数据离开公司,这种情况在线访问的方式就无法使用了,后面几篇文章,实验本地调用大模型的方式。