
n8n + Ollama + 微调模型:零 API 成本自动化技术栈
在 n8n 中构建强大的 AI 自动化,每次执行零成本。本指南展示如何通过 Ollama 将每个 OpenAI 节点替换为本地运行的微调模型。
n8n 是自动化领域最好的工具之一。自托管、开源、无限灵活。你可以连接数百个工作流来在应用之间移动数据、处理文档、分类输入和生成输出——所有这些都无需编写传统后端。
但当你向 n8n 工作流添加 AI 节点的那一刻,你引入了一个随每次执行扩展的可变成本。每次该工作流触发——每封邮件分类、每个文档摘要、每个潜客评分——你都在为 Token 向 OpenAI 付费。
每天 100 次执行时,可以忽略不计。每天 1,000 次时,你开始注意到。每天 10,000 次以上时,它成为仅次于托管的最大运营支出。
本指南向你展示如何通过将 n8n 工作流中的每个 OpenAI 节点替换为通过 Ollama 提供的本地运行微调模型来完全消除该成本。
n8n 中 AI 节点的隐性成本
让我们从 n8n 中使用 OpenAI 节点时幕后实际发生的事情开始。
每次带有 AI 节点的 n8n 工作流执行时,它都会向 OpenAI API 发送请求。该请求包括你的系统提示、上一个节点的输入数据以及你注入的任何上下文。OpenAI 处理它,返回响应,并根据 Token 数量收费。
以下是常见自动化模式的费用:
| 工作流类型 | 平均输入 Token | 平均输出 Token | 每次执行成本 | 1K 次/天(月费) |
|---|---|---|---|---|
| 邮件分类 | 800 | 50 | $0.027 | $810/月 |
| 文档摘要 | 2,500 | 400 | $0.099 | $2,970/月 |
| 潜客评分 | 600 | 100 | $0.024 | $720/月 |
| 工单路由 | 1,000 | 80 | $0.035 | $1,050/月 |
| 发票数据提取 | 1,500 | 200 | $0.057 | $1,710/月 |
这些数字假设 GPT-4 级别定价($30/1M 输入,$60/1M 输出)。即使使用价格低 10 倍的 GPT-3.5-turbo,每天运行 1,000 次执行仍然花费 $70-300/月 ,取决于工作流。
而大多数 n8n 高级用户不只运行一个工作流。他们运行数十个。管理客户自动化的代理机构可能在所有客户中有 50 多个带 AI 节点的工作流。成本快速累积。
最糟糕的是:这些任务中的大多数都是狭窄和重复的。 将邮件分为 5 个类别。从发票中提取姓名和日期。将潜客评为热/温/冷。这些不是需要 GPT-4 莎士比亚十四行诗知识的任务。它们是模式匹配任务,小型专用模型完全可以处理。
技术栈:n8n + Ollama + 微调模型
以下是我们要构建的架构:
┌─────────────┐ ┌─────────────┐ ┌──────────────────┐
│ n8n │────▶│ Ollama │────▶│ 微调模型 │
│ 工作流 │◀────│ 服务器 │◀────│ (GGUF 格式) │
└─────────────┘ └─────────────┘ └──────────────────┘
│ │
│ HTTP 请求 │ 本地推理
│ (localhost:11434) │ (零 API 成本)
│ │
n8n 编排你的工作流——触发器、数据路由、转换、输出操作。这不变。
Ollama 运行在同一服务器上(或附近的 VPS),通过与 OpenAI 格式兼容的 API 端点提供你的微调模型。n8n 与它通信的方式和与 OpenAI 相同——只是 URL 不同。
你的微调模型 是一个在你的特定工作流数据上训练的 7B 参数模型。它知道如何完成你的自动化需要的确切任务,仅此而已。它在 CPU 上运行(自动化级别吞吐量的 7B 模型不需要 GPU)。
结果:每次执行的 API 费用为 $0。 你唯一的成本是 VPS($30/月)和微调平台(Ertas $14.50/月)。
第 1 步:识别你的 AI 工作流
首先审计你的 n8n 实例。打开工作流列表,查找包含以下内容的工作流:
- OpenAI 节点(最明显的)
- AI Agent 节点,配置了 OpenAI 模型
- HTTP 请求节点,指向
api.openai.com - LangChain 节点,使用 OpenAI 作为 LLM 提供商
对于每个工作流,记录:
- AI 执行的任务(分类、提取、生成、摘要)
- 每天/每周执行多少次
- 使用的系统提示
- 典型的输入和输出格式
最适合替换的候选者是:
- 任务狭窄且定义明确(分为 N 个类别、提取特定字段、从模板生成)
- 工作流频繁运行(每天 100 次以上)
- 输出格式可预测(JSON、短文本、类别标签)
常见的高价值目标:
- 邮件分诊和分类
- 潜客评分和路由
- 发票和收据数据提取
- 工单分类
- 内容审核
- 情感分析
第 2 步:从工作流中收集训练数据
这是大多数指南跳过的步骤,也是最重要的一步。你的微调模型只和训练数据一样好。好消息:n8n 已经在生成你的训练数据了。
每次 n8n 工作流执行时,它都会记录输入和输出。这些执行日志就是你的训练数据集。
以下是提取方法:
选项 A:n8n 执行历史(UI)
- 打开要替换的工作流
- 点击左侧栏的"Executions"
- 筛选成功的执行
- 对于每次执行,点击查看 OpenAI 节点的数据
- 复制输入(发送给 OpenAI 的内容)和输出(OpenAI 返回的内容)
这适用于小数据集(200 个以下示例),但在大规模时会变得繁琐。
选项 B:n8n API(程序化)
n8n 有 REST API。你可以程序化地拉取执行数据:
GET /api/v1/executions?workflowId={id}&status=success&limit=500
对于每次执行,提取 AI 节点的数据并格式化为训练对:
{
"input": "The system prompt + user input that was sent to OpenAI",
"output": "The response OpenAI returned"
}
选项 C:添加日志节点
如果你想从现在开始收集数据,在 OpenAI 节点之后添加一个 Function 节点,将每个输入/输出对写入 Google Sheet、Airtable 或 JSON 文件。几周后,你将拥有一个干净的数据集。
你需要多少数据?
| 任务类型 | 最少示例 | 推荐数量 |
|---|---|---|
| 二元分类 | 100 | 300+ |
| 多类分类(5-10 个类别) | 200 | 500+ |
| 数据提取 | 200 | 500+ |
| 短文本生成 | 300 | 800+ |
| 摘要 | 300 | 1,000+ |
质量比数量重要。300 个干净、有代表性的示例将优于 3,000 个嘈杂的。
第 3 步:使用 Ertas 微调
现在你有了数据集。是时候构建模型了。
-
注册 Ertas,在 ertas.io。平台费用 $14.50/月,包含微调所需的一切。
-
上传数据集。 Ertas 接受 JSONL(每行一个 JSON 对象,包含"input「和」output"字段)、CSV(两列:input 和 output),或者你可以直接将数据粘贴到 Studio 界面。
-
选择基础模型。 对于自动化任务,我们推荐:
- Qwen 2.5 7B — 分类和提取的最佳全能选手
- Llama 3.3 8B — 适合生成任务和较长输出
- Mistral 7B — 推理速度快,适合高吞吐量工作流
-
配置和训练。 Ertas 根据你的数据集自动选择 LoRA 秩、学习率和轮数。如果你知道自己在做什么可以调整这些,但默认设置对 90% 的用例都很好。点击"Start Training"并等待——通常根据数据集大小需要 15-45 分钟。
-
评估。 Ertas 在保留的测试集上运行你的模型并显示准确率指标。对于分类任务,你会看到精确率、召回率和 F1 分数。对于生成任务,你会看到与预期输出对比的示例输出。
-
导出为 GGUF。 点击"Export"并选择 Q4_K_M 量化的 GGUF 格式(7B 模型质量和文件大小的最佳平衡)。下载文件——大约 4-5GB。
第 4 步:使用 Ollama 部署
Ollama 是微调模型和 n8n 之间的桥梁。它通过与 OpenAI 格式兼容的本地 API 提供你的 GGUF 模型。
在 VPS 上安装 Ollama:
curl -fsSL https://ollama.com/install.sh | sh
为微调模型创建 Modelfile:
FROM /path/to/your-model.gguf
PARAMETER temperature 0.1
PARAMETER num_ctx 4096
低温度(0.1)对自动化任务很重要——你想要一致、确定性的输出,而不是创造性变化。
创建并运行模型:
ollama create my-workflow-model -f Modelfile
ollama run my-workflow-model "Test input here"
验证 API 可访问:
curl http://localhost:11434/api/generate -d '{
"model": "my-workflow-model",
"prompt": "Test input",
"stream": false
}'
对于生产环境,确保 Ollama 开机启动并可从 n8n 实例访问。如果 n8n 和 Ollama 在同一服务器上,localhost 就可以。如果在不同服务器上,配置 Ollama 绑定到 0.0.0.0 并保护连接。
VPS 规格:
| 模型大小 | 最低 VPS | 推荐 VPS | 月费 |
|---|---|---|---|
| 7B (Q4) | 4 vCPU, 8GB RAM | 4 vCPU, 16GB RAM | $20-30/月 |
| 13B (Q4) | 8 vCPU, 16GB RAM | 8 vCPU, 32GB RAM | $40-60/月 |
Hetzner 或 DigitalOcean 的 $30/月 VPS 可以轻松处理 7B 模型,短分类/提取任务每秒处理 10-20 个请求。
第 5 步:更新 n8n 节点
现在将它们连接起来。对于每个要替换 OpenAI 节点的工作流:
选项 A:用 HTTP 请求节点替换 OpenAI 节点
- 删除(或禁用)OpenAI 节点
- 添加 HTTP 请求 节点
- 配置:
- 方法: POST
- URL:
http://localhost:11434/api/chat - 请求体(JSON):
{
"model": "my-workflow-model",
"messages": [
{
"role": "system",
"content": "Your system prompt here"
},
{
"role": "user",
"content": "{{ $json.input_field }}"
}
],
"stream": false
}
- 在 HTTP 请求后添加 Function 节点 来提取响应:
const response = $input.first().json;
return [{
json: {
result: response.message.content
}
}];
选项 B:使用 Ollama 节点(如可用)
n8n 的新版本在 AI 节点部分包含原生 Ollama 节点。配置:
- Base URL:
http://localhost:11434 - Model:
my-workflow-model
这更简单但对参数的控制更少。
彻底测试。 通过更新后的工作流运行 20-30 次真实执行,并将输出与 OpenAI 之前的输出进行比较。对于分类任务,检查类别是否匹配。对于提取任务,验证所有字段是否正确捕获。
成本对比
以下是运行多个 AI 工作流的代理机构的计算:
| 月执行次数 | OpenAI API 成本 | 本地微调成本 | 节省 |
|---|---|---|---|
| 10,000 | $270 - $990 | $44.50 | 84-95% |
| 50,000 | $1,350 - $4,950 | $44.50 | 97-99% |
| 100,000 | $2,700 - $9,900 | $44.50 | 98-99.5% |
| 500,000 | $13,500 - $49,500 | $44.50* | 99.7%+ |
*在 500K+ 月执行次数时,你可能需要更强的 VPS($60-100/月)来满足吞吐量。与 API 成本相比仍然是舍入误差。
本地成本列是 Ertas $14.50/月 + VPS $30/月。就这些。没有每次执行费。没有每 Token 收费。月末没有意外账单。
对于管理多个客户自动化的代理机构,这是变革性的。不再将 API 成本转嫁给客户(然后看着他们在费用攀升时流失),你提供固定费率服务,每次执行的边际成本接近零。
此技术栈最适合的场景
并非每个 AI 任务都应该微调。以下是 n8n + Ollama + 微调技术栈带来最大收益的场景:
分类任务 — 邮件路由、工单分类、情感分析、潜客评分。这些是最佳场景。任务定义明确,输出格式受限,微调的 7B 模型通常匹配或超越 GPT-4 的准确率。
数据提取 — 从发票、收据、表单、邮件中提取结构化数据。微调模型在这里表现出色,因为它们学习了你的特定 schema 和字段名称。
模板化生成 — 从模板起草回复、根据规格生成产品描述、基于会议笔记撰写跟进邮件。输出遵循可预测的模式,小型模型可以快速学习。
摘要 — 将文档、邮件或转录精简为关键要点。微调模型生成匹配你偏好风格和长度的摘要。
仍应使用 API 的场景:
- 跨多样化领域的复杂多步推理
- 需要最新信息的任务(新闻、时事)
- 一次性创意任务,一致性不重要
- 月执行次数少于 100 的工作流(成本节省不足以证明设置的合理性)
80/20 法则适用:你 80% 的 AI 自动化支出可能来自 20% 的工作流。首先瞄准那些高量、窄任务的工作流,你将立即获得大部分节省。
扩展技术栈
随着自动化量的增长,技术栈如何扩展:
10K-50K 执行/月: 单 VPS 配一个模型轻松处理。4 vCPU / 16GB RAM VPS 上的 7B 模型可以为短任务每秒处理 15-20 个请求。
50K-200K 执行/月: 你可能需要稍强的 VPS(8 vCPU / 32GB RAM,约 $50/月)或使用模型批处理优化。仍然远低于 API 成本。
200K+ 执行/月: 考虑在简单负载均衡器后运行多个模型实例。两台 $30 VPS 实例提供冗余和双倍吞吐量。总基础设施成本 $75/月,相比 API 成本 $5,000+。
不同任务的多个模型: 你可以在同一 Ollama 实例上运行多个微调模型。一个用于邮件分类,另一个用于数据提取,第三个用于摘要。每个模型在调用时加载到内存中,空闲时卸载。16GB RAM VPS 可以同时运行 2-3 个 7B 模型。
今天就开始
以下是第一个零成本 AI 工作流的最简路径:
- 选择最高量的 AI 工作流 — n8n 中执行最频繁的那个
- 导出 300+ 执行示例 作为输入/输出对
- 在 Ertas 上微调 — 上传数据,选择 Qwen 2.5 7B,训练,导出 GGUF
- 在 Ollama 上部署 — 在 VPS 上安装,加载模型,验证端点
- 替换节点 — 将 OpenAI 节点替换为指向 Ollama 的 HTTP 请求
- 监控一周 — 对比输出并确认质量匹配
验证第一个工作流后,对 n8n 实例中的每个 AI 工作流重复此过程。大部分工作在第 2 步(收集数据)。微调和部署在你做过一次后就变成了例行公事。
你的 n8n 自动化不应该有每次执行的税。构建一次技术栈,永远运行。
Ship AI that runs on your users' devices.
Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.
延伸阅读
- n8n + 本地 LLM 实现符合 HIPAA 的 AI 自动化 — 本地模型如何解决医疗和法律自动化的合规要求。
- 本地运行 AI 模型:实用指南 — 关于 Ollama、GGUF 和本地部署你需要知道的一切。
- LM Studio vs Ollama:应该使用哪个本地 AI 运行时? — 两个最流行的本地模型运行时的正面对比。
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.
Keep reading

I Replaced Every OpenAI Call in My n8n Workflows With a Fine-Tuned Model
A builder's firsthand account of migrating 12 n8n workflows from OpenAI to locally-running fine-tuned models. The costs, the gotchas, and the results after 60 days.

Fine-Tuned Tool Calling for n8n and Make.com Workflows
Replace the OpenAI node in your n8n or Make.com workflow with a fine-tuned local model. Same tool routing, same structured output, zero API cost. Here's the exact pattern — from extracting training data from workflow logs to deploying via Ollama.

n8n Local AI: Replace OpenAI With Your Own Fine-Tuned Model
Step-by-step guide to replacing OpenAI API calls in your n8n workflows with a locally-running fine-tuned model. Cut costs to zero without sacrificing quality.