ChatGPT工作后台运营AI 评分 · 待评分AI 辅助编辑·未发现明显提示词注入风险n8n.io

用 n8n 搭建支持文本与语音的 Telegram AI 对话机器人

Telegram 消息触发 → 文本/语音分流处理 → AI Agent 生成回复 → 返回 Telegram

有一点经验步骤流程提示词贴士
给谁
需要在 Telegram 上快速部署 AI 对话机器人的运营者或开发者
你会得到
获得一个能同时处理文本和语音消息、带打字指示器的 Telegram 机器人,默认使用 GPT-4o
你需要
n8n · telegram

硬约束

前置条件:可公网访问的 n8n 实例;Telegram Bot Token(通过 @BotFather 获取);OpenAI API Key;可选语音转录服务凭证。将模板 workflow.json 导入 n8n 后,更新所有凭证节点并配置 Telegram webhook。

他们做了什么

作者 roninimous 在 n8n 模板库发布了一个工作流模板,通过 Telegram Trigger 接收消息,利用 Switch 节点区分文本与语音输入。语音分支经 Telegram 节点获取音频文件后,使用 OpenAI 的音频转录功能转为文本;文本分支直接透传。两路均通过 Set 节点构造包含 message.text 和 sessionId(基于 chat.id)的上下文,送入 AI Agent。AI Agent 绑定 OpenAI Chat Model(默认 gpt-4o)和 Simple Memory(Buffer Window,contextWindowLength=10),并配置了系统提示词定义助手角色与输出格式。处理期间并行触发 Typing Action(sendChatAction)模拟输入状态,最终由 Send Response To Telegram 将 AI 输出发回用户。

效果如何

模板在 n8n.io 上获得超过 9.3 万次浏览(author_report)。作者说明默认使用 GPT-4o,同时支持在 OpenAI Chat Model 节点切换为 GPT-5、GPT-4、Claude 或其他模型。语音转录依赖外部 API,需单独配置凭证。

值得知道

【模型切换】OpenAI Chat Model 节点 mode=list 下可直接切换模型,无需修改其他节点。 【记忆窗口】Simple Memory 使用 Buffer Window,contextWindowLength=10,sessionKey 绑定 chat.id,意味着同一聊天对象共享上下文,但跨聊天隔离。 【语音文件获取】Get Voice 节点通过 `{{ $json.message.voice.file_id }}` 获取文件,需确保 bot 有访问语音文件的权限。 【打字指示器限制】Typing Action 使用 sendChatAction,Telegram 客户端可能有时效显示,不代表实际处理进度。 【安全】bot token 和 API key 必须存入 n8n Credentials,不可硬编码在节点参数或日志中(来源 Security and Implementation 章节)。 【扩展方向】来源建议可添加图片/文档处理、日历/Notion/Google Sheets 等工具节点,但本模板未包含这些实现。 【本站未实测】reproduction=not_tested,上述节点参数均来自 workflow.json 原文,未经验证实际运行效果。

n8n 工作流模板

结构已检查 · 未实际运行

下载后在 n8n 选择“Import from File”,或复制 JSON 后粘贴到编辑器。先配置自己的账号,再用测试数据运行;模板默认未启用。

配置与测试清单

需要绑定的凭证

  • Telegram Trigger 节点:绑定Telegram API 凭证。
  • OpenAI Chat Model 节点:绑定OpenAI API 凭证。
  • Get Voice 节点:绑定Telegram API 凭证。
  • Transcribe The Voice 节点:绑定OpenAI API 凭证。
  • Typing Action 节点:绑定Telegram API 凭证。
  • Send Response To Telegram 节点:绑定Telegram API 凭证。

需要替换的配置

  • 源模板来自 n8n 公开库 #4696(约 11 个节点)。导入后先保持未启用,核对触发器、表达式与外部 API 端点。
  • Sticky Note 中的说明仅供参考;按自己的账号、表结构或频道 ID 替换占位配置。

测试输入与预期结果

  • 在测试环境手动执行一次主路径,确认每个需凭证的节点已连接且无鉴权错误。
  • 用一条合成/脱敏样例数据跑通,核对输出字段与下游写入目标,再考虑生产启用。

模板处理说明

  • 已移除原作者凭证绑定、webhookId 与执行数据,工作流设为未启用;节点、连线与原文提示词保持原样。未在 n8n 中实际运行。
  • 未改业务逻辑;运行前请自行核对密钥、配额与隐私合规。

模板获取日期: 2026-10-25

步骤

  1. 准备凭证与 Bot

    在 Telegram 中联系 @BotFather 创建机器人并获取 bot token。在 n8n 的 Credentials 中添加 telegramApi 凭证(填入 bot token)和 openAiApi 凭证(填入 OpenAI API Key)。如需语音转录,额外准备语音转录服务的凭证(模板默认使用 OpenAI Transcribe)。

  2. 导入工作流并配置节点

    从模板导入 workflow.json。检查以下关键节点配置: - **Telegram Trigger**:确认 updates 包含 message,选择已创建的 telegramApi 凭证。 - **Text Or Voice (Switch)**:保持默认分支条件——上分支检测 `{{ $json.message.text }}` 存在(文本消息),下分支检测 `{{ $json.message.voice.file_id }}` 存在(语音消息)。 - **OpenAI Chat Model**:默认模型为 gpt-4o,可点击切换为 gpt-4 或其他可用模型。 - **Simple Memory**:sessionKey 设为 `={{ $json.sessionId }}`,contextWindowLength 为 10。 - **AI Agent**:promptType 为 define,text 输入为 `{{ $json.message.text }}`;options.systemMessage 见下一步提示词。 - **Send Response To Telegram**:text 为 `{{ $json.output }}`,chatId 引用 Telegram Trigger 的 chat.id,additionalFields.appendAttribution 设为 false。 所有凭证节点需更新为实际凭证,不可保留 credential-id 占位。

    运行提示词 · 来源原文。AI Agent 节点的 options.systemMessage 字段

    =# Overview
    You are a personal assistant that helps user to fulfill their request.
    
    When you are asked to perform a task on the current date, please use the current time and date: {{$now}}
    
    ## Output
    You should output the result and don't include any link. Just mentioned where you added it to.
  3. 配置 Telegram Webhook 与公网访问

    确保 Telegram 能回调到你的 n8n 实例: - 若使用 n8n Cloud,webhook 通常自动配置。 - 若自托管,需通过反向代理或隧道工具(如 ngrok)暴露 n8n 的 webhook URL,并在 Telegram 设置 webhook(可用 `https://api.telegram.org/bot<TOKEN>/setWebhook?url=<WEBHOOK_URL>`)。 Telegram Trigger 的 webhookId 在导入后由 n8n 自动生成,通常无需手动修改。

  4. 测试工作流

    激活工作流。在 Telegram 中向你的机器人发送: 1. 一条文本消息,观察是否收到 AI 回复; 2. 一条语音消息,观察是否先转录再收到文本回复; 3. 检查回复前是否出现"正在输入…"指示器。 若语音分支未正常工作,检查 Get Voice 节点是否正确获取 file_id,以及 Transcribe The Voice 节点的 openAiApi 凭证是否有效。

可复制提示词

搭建指导 · 本站建议版本。搭建助手启动词,用于确认前置条件并指导导入流程

这一段是提示词,页面不会在这里插入广告。

你正在协助复现一个 n8n 模板:Telegram AI 对话机器人。请先确认用户已具备以下条件再开始:可公网访问的 n8n 实例、Telegram bot token、OpenAI API Key。然后按步骤指导导入 workflow.json、更新凭证、配置 webhook,并解释 AI Agent 的系统提示词用途。不要替用户执行敏感操作(如暴露 token)。

需要准备 Telegram Bot Token 和 OpenAI API Key;自托管 n8n 需配置公网 webhook。

来源

Conversational Telegram bot with GPT-5/GPT-4o for text and voice messages · roninimous · n8n.io · 2025-06-05

留言与反馈

试过这个方法吗?分享效果、遇到的问题或改进建议。留言审核后公开,请勿填写敏感信息。

正在加载…

    相关用例