Back to blog
    从 n8n 工作流到微调模型:代理机构分步手册
    n8nfine-tuningplaybookagencyworkflowsegment:agency

    从 n8n 工作流到微调模型:代理机构分步手册

    一份面向 n8n 代理机构的战术指南:通过工作流收集客户交互数据,清洗和格式化,在 Ertas Studio 中微调模型,本地部署,并连接回 n8n 进行推理。

    EErtas Team·

    你有为客户运行的 n8n 工作流。它们调用 OpenAI 或 Anthropic API 进行分类、摘要、生成或分析任务。工作流有效,但 API 成本吞噬了你的利润,质量也不一致。

    以下是将这些现有 n8n 工作流转变为微调流水线的手册——使用你已经生成的交互数据来训练更便宜、更快、更准确的自定义模型。

    流水线概览

    n8n 工作流(现有)→ 数据收集 → 清洗 → 微调 → 本地部署 → n8n 工作流(更新后)
    

    你从 n8n 开始和结束。中间步骤将客户的使用数据转化为替代 API 调用的自定义模型。

    第 1 步:通过 n8n 收集客户交互数据

    你现有的 n8n 工作流已经包含你需要的训练数据——每次 API 调用都包含输入(指令)和输出(模型的响应)。你只需要捕获它。

    添加数据收集分支

    对于调用 AI API 的每个工作流,添加一个记录交互的并行分支:

    1. 在 HTTP 请求节点(API 调用)之后,添加一个 Set 节点,提取输入提示/消息、收到的响应、时间戳、客户标识符和任务类型。
    2. 将其路由到存储记录的 Google SheetsAirtablePostgreSQL 节点。

    数据量目标

    微调质量需要的示例数收集时间(典型)
    最低可行5001-2 周
    良好质量1,500-2,0003-6 周
    生产就绪3,000+6-12 周

    现在就开始收集,即使你距离微调还有几周。更多数据产生更好的模型。

    第 2 步:清洗和格式化数据集

    原始交互日志在微调前需要清洗。

    自动化清洗(n8n 工作流)

    创建一个数据清洗工作流:

    1. 从数据存储读取
    2. 过滤掉被拒绝的响应
    3. 删除重复项
    4. 标准化格式
    5. 验证结构
    6. 导出为 JSONL

    输出格式

    {"instruction": "Classify this email as: billing, technical, general, or spam.\n\nEmail: I can't log into my account after the update...", "response": "technical"}

    第 3 步:在 Ertas Studio 中微调

    1. Ertas Studio 中为此客户和任务创建项目
    2. 上传 JSONL 文件
    3. 选择基础模型——大多数代理机构任务选择 Llama 3.1 8B
    4. 配置训练(LoRA 秩:16,轮数:3,学习率:2e-4)
    5. 开始训练——2,000 个示例的 8B 模型通常 30-60 分钟
    6. 评估——使用 Studio 的并排对比测试微调模型

    第 4 步:本地部署模型

    从 Ertas Studio 导出微调模型为 GGUF 格式(用于 Ollama)或 SafeTensors(用于 vLLM)。

    使用 Ollama 部署

    # 创建 Modelfile
    echo 'FROM llama3.1:8b
    ADAPTER /path/to/your-adapter.gguf' > Modelfile
    
    # 注册模型
    ollama create client-acme-summariser -f Modelfile
    
    # 测试
    ollama run client-acme-summariser "Summarise this ticket: ..."

    第 5 步:将 n8n 连接到本地模型

    更新现有 n8n 工作流,指向本地模型而非云 API。

    选项 A:更改 API URL

    将 URL 从 https://api.openai.com/v1/chat/completions 改为 http://localhost:11434/v1/chat/completions(Ollama)。更新模型参数。移除 API 密钥。

    就这样。请求/响应格式相同。工作流逻辑、错误处理和输出处理保持不变。

    选项 B:使用自定义基础 URL 的 OpenAI 凭据

    在 n8n 中创建新 OpenAI 凭据,将基础 URL 设为本地端点。使用此凭据的每个节点自动切换到本地推理。

    第 6 步:迭代和改进

    微调不是一次性事件。模型通过反馈改进:

    持续数据收集

    保持更新工作流中的数据收集分支活跃。

    定期重训

    每 4-8 周(或当质量问题出现时),导出新交互数据,添加纠正示例,与原始训练数据合并,重训,评估,部署。

    业务影响

    指标之前(API)之后(本地微调)
    月 API 成本(每客户)$150-500约 $0
    响应延迟800-2000ms200-500ms
    输出质量通用客户特定
    数据隐私数据发送到第三方数据留在本地
    可扩展性线性成本增长固定成本(GPU 层级)

    对于大多数代理机构,切换在 1-3 个月内收回成本。更重要的是,它将服务从"我们将你的工作流连接到 ChatGPT「转变为」我们在你的数据上构建自定义 AI 模型"——一个价值显著更高的定位。


    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.

    延伸阅读

    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