n8n 配置国产大模型方法全指南|n8n玩家必看

最近用 n8n 搭建自动化流程,结合 AI 编程,有一种指哪打哪儿的快感。

我可以用一条工作流完成油管或者 B 站上一个复杂教学视频的结构化拆解。

油管技术视频批量自动化分析|含n8n 中 http 请求节点 timeout 的处理方法

picture.image

从这种需要逐帧学习的多模态视频:

picture.image

picture.image

变成这样的待学习指南:

picture.image

但对于国内的开发者和玩家来说,n8n总有一个不大不小的痛。国产模型节点,只支持 DeepSeek!

picture.image

想用其他懂中文、响应更快、成本更低的国产大模型(比如 Kimi、通义千问),却发现 n8n 里没有现成的节点!

别急!如果我告诉你,有一把“万能钥匙”可以轻松打开几乎所有主流国产大模型接入 n8n 的大门,整个过程甚至不需要你写一行代码,你信吗?

这把钥匙,就是 “兼容OpenAI接口规范”。

这听起来可能有点技术,但别担心,这篇指南会把这个概念彻底掰开揉碎,变成你动动鼠标就能完成的简单操作。准备好,我们要开始给你的 n8n换上强大的“中国芯”了!

1-成果演示

看一下我的成果:我配置了哪些中国模型:魔塔、kimi、腾讯混元。

picture.image

picture.image

接下来,我们就可以kimi-k2模型的配置方式,给大家做示范,教大家如何一步一步完成中国模型配置。

2-配置 Kimi - k2 大模型。

先到kimi的开发者平台申请 APIkey。

地址如下:https://platform.moonshot.cn/console/api-keys

picture.image

拷贝 api 请求地址:如下图,只需要 v1 及之前这一段就好了。https://api.moonshot.cn/v1

相关文档地址如下:https://platform.moonshot.cn/docs/api/chat#chat-completion

picture.image

3-N8N 配置

老样子,请出我们的 AIAgent 节点。

picture.image

触发节点:Chat,配置 AIAgent 节点。

picture.image

点击 ChatModel,拉到最后,选择:OpenAI Chat Model。只要兼容OpenAI接口规范的模型,都可以用这个大模型节点来做配置。

picture.image

然后,到n8n配置权限,分别填入apikey 和 baseURL。

注意,kimi的 baseURL 应该填我们刚才记录的:https://api.moonshot.cn/v1

当你看到上面的 Connection tested successfully,就代表认证成功了!

picture.image

好的,接下来,选择模型。

然后,返回 OpenAI Chat Model 节点,在 From list 节点选择模型。我们这次要体验的是 kimi-k2。

picture.image

OK,返回测试:

picture.image

好的,配置完成了!

4-如何判断一个模型是否兼容 openai 规范?

判断一个模型或服务是否兼容OpenAI的API规范,是能否将其作为“平替”或“drop-in replacement”接入n8n model节点工具的关键。

你可以通过这个最简单的方法来判断:查阅官方文档 (最直接、最可靠的方法)

在模型提供方(无论是云服务商还是本地模型工具)的官方文档中,寻找以下关键词或描述:

  • “OpenAI-Compatible” / “与OpenAI兼容”: 这是最直接的信号。很多服务会明确以此为卖点。

  • “Drop-in Replacement”: 意为“直接替换”,说明你可以几乎不改代码就换掉OpenAI的接口。

picture.image

python 调用的方式有 from openai import OpenAI

picture.image

检查核心API技术规范 (技术细节核对)

一个API要与OpenAI兼容,必须在以下几个核心方面保持一致:

a. Endpoint (接口路径)

最核心的聊天接口路径必须匹配。标准的路径是:

POST /v1/chat/completions

如果一个服务的接口是 POST /api/v1/generate 或者其他自定义路径,那它就不是OpenAI兼容的。

b. Authentication (认证方式)

认证信息通常通过HTTP请求头传递,格式必须是:

Authorization: Bearer YOUR_API_KEY

YOUR_API_KEY 是服务提供方给你的密钥。

c. Request Body (请求体JSON结构)

发送给接口的JSON数据结构必须与OpenAI的规范一致。对于聊天模型,关键字段包括:

  • model (string): 你要使用的模型名称(这个值会因服务商而异)。
  • messages (array): 一个包含对话历史的数组。
  • 每个元素都是一个对象,包含 role ("user", "assistant", "system") 和 content (string)。
  • stream (boolean, optional): 是否使用流式传输。
  • 其他可选参数如 temperature, max_tokens, top_p 等。

一个兼容的请求体示例:

  
client = OpenAI(      
api\_key = "$MOONSHOT\_API\_KEY",      
base\_url = "https://api.moonshot.cn/v1",)   
completion = client.chat.completions.create(      
model = "kimi-k2-0711-preview",      
messages = [        {"role": "system", "content": "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。同时,你会拒绝一切涉及恐怖主义,种族歧视,黄色暴力等问题的回答。Moonshot AI 为专有名词,不可翻译成其他语言。"},        {"role": "user", "content": "你好,我叫李雷,1+1等于多少?"}    ],      
temperature = 0.6,)

d. Response Body (响应体JSON结构)

模型返回的JSON数据结构也必须一致,这样你的代码才能正确解析。

  • 非流式 (Non-streaming): 关键是 choices 数组,其中包含了 message 对象。

  • 流式 (Streaming): 必须遵循Server-Sent Events (SSE) 格式,每一条消息都是一个以 data: 开头的JSON块。

一个兼容的响应体示例-非 Streaming 的返回内容:

  
{    "id": "cmpl-04ea926191a14749b7f2c7a48a68abc6",     
 "object": "chat.completion",      
 "created": 1698999496,      
 "model": "kimi-k2-0711-preview",      
 "choices": [        {              
     "index": 0,              
     "message": {                  
     "role": "assistant",                  
     "content": " 你好,李雷!1+1等于2。如果你有其他问题,请随时提问!"            },            "finish\_reason": "stop"        }    ],      
     "usage": {          
             "prompt\_tokens": 19,          
             "completion\_tokens": 21,          
             "total\_tokens": 40    }}

以上就是一个非常简单的n8n国产大模型配置指南了。关于n8n还有哪些想学习和了解的,欢迎评论区留言。

0
0
0
0
评论
未登录
暂无评论