Zhipu 适配器
使用 Zhipu 适配器连接智谱 AI 的 GLM 系列模型,包括最新的 GLM-5
Zhipu 适配器提供了与智谱 AI(Zhipu AI)API 的集成。智谱 AI 提供了 GLM 系列大语言模型,API 完全兼容 OpenAI 格式。最新的 GLM-5 是一个 744B 参数的 MoE 模型(每 token 激活 44B),拥有 200K 上下文窗口,在编码和 Agent 能力上达到开源 SOTA 水平。
安装
pnpm add @amux.ai/llm-bridge @amux.ai/adapter-zhipu基本使用
import { createBridge } from '@amux.ai/llm-bridge'
import { zhipuAdapter } from '@amux.ai/adapter-zhipu'
const bridge = createBridge({
inbound: zhipuAdapter,
outbound: zhipuAdapter,
config: {
apiKey: process.env.ZHIPU_API_KEY
}
})
const response = await bridge.chat({
model: 'glm-5',
messages: [
{ role: 'system', content: '你是一个智能助手。' },
{ role: 'user', content: '什么是 Amux?' }
]
})
console.log(response.choices[0].message.content)支持的模型
智谱 AI 提供多种 GLM 模型:
| 模型 | 描述 |
|---|---|
| glm-5 | 最新旗舰模型,744B MoE(44B 激活),200K 上下文,编码与 Agent SOTA |
| glm-4.7 | 上一代旗舰模型,支持推理能力 |
| glm-4.6 | 高性能模型,平衡性能与成本 |
| glm-4.5 | 高性价比模型,适合日常任务 |
| glm-4v | 支持视觉理解的多模态模型 |
智谱 AI 的模型持续更新,请参考官方文档获取最新的模型列表。
主要功能
基础对话
const response = await bridge.chat({
model: 'glm-5',
messages: [
{ role: 'user', content: '介绍一下智谱AI' }
],
temperature: 0.7,
max_tokens: 1000
})函数调用
const response = await bridge.chat({
model: 'glm-5',
messages: [
{ role: 'user', content: '北京现在几点?' }
],
tools: [{
type: 'function',
function: {
name: 'get_current_time',
description: '获取指定城市的当前时间',
parameters: {
type: 'object',
properties: {
city: { type: 'string', description: '城市名称' }
},
required: ['city']
}
}
}]
})流式传输
const stream = bridge.chatStream({
model: 'glm-5',
messages: [
{ role: 'user', content: '讲一个故事' }
],
stream: true
})
for await (const chunk of stream) {
if (chunk.choices[0]?.delta?.content) {
process.stdout.write(chunk.choices[0].delta.content)
}
}配置选项
const bridge = createBridge({
inbound: zhipuAdapter,
outbound: zhipuAdapter,
config: {
apiKey: process.env.ZHIPU_API_KEY,
baseURL: 'https://open.bigmodel.cn/api/paas', // 默认值
timeout: 60000
}
})功能支持
| 功能 | 支持 | 说明 |
|---|---|---|
| 聊天补全 | ✅ | 完全支持 |
| 流式传输 | ✅ | 完全支持 |
| 函数调用 | ✅ | 完全支持 |
| 视觉 | ⚠️ | glm-4v 入站解析支持;出站构建目前仅提取文本内容 |
| 系统提示 | ✅ | 完全支持 |
| JSON 模式 | ✅ | 仅支持 json_object |
| 网络搜索 | ✅ | 支持 |
| Tool Choice | ⚠️ | 不支持 required(会被静默丢弃) |
智谱特有参数: 智谱 API 还支持 do_sample(采样控制)、request_id(请求追踪)和 user_id(用户标识)。当智谱适配器作为入站适配器使用时,这些参数可通过入站解析器获取。
最佳实践
1. 根据需求选择模型
// 日常任务使用性价比模型
const quickResponse = await bridge.chat({
model: 'glm-4.5',
messages: [{ role: 'user', content: '你好' }]
})
// 复杂任务使用旗舰模型
const complexTask = await bridge.chat({
model: 'glm-5',
messages: [
{ role: 'user', content: '请分析这段代码的性能问题...' }
]
})2. 使用系统提示优化输出
const response = await bridge.chat({
model: 'glm-5',
messages: [
{
role: 'system',
content: '你是一个专业的技术文档撰写助手。请用简洁、专业的语言回答问题。'
},
{
role: 'user',
content: '什么是 RESTful API?'
}
]
})3. 处理多轮对话
const messages = [
{ role: 'user', content: '第一个问题' },
{ role: 'assistant', content: '第一个回答' },
{ role: 'user', content: '继续追问' }
]
const response = await bridge.chat({
model: 'glm-5',
messages
})与 OpenAI 互转
智谱 AI 完全兼容 OpenAI 格式:
import { openaiAdapter } from '@amux.ai/adapter-openai'
import { zhipuAdapter } from '@amux.ai/adapter-zhipu'
const bridge = createBridge({
inbound: openaiAdapter,
outbound: zhipuAdapter,
config: {
apiKey: process.env.ZHIPU_API_KEY
}
})
// 使用 OpenAI 格式发送请求
const response = await bridge.chat({
model: 'gpt-4',
messages: [{ role: 'user', content: '你好' }]
})