使用 Elasticsearch Agent Builder 构建对话式费用助手,结合 Telegram, n8n 和 AWS Bedrock

作者:来自 Elastic _som

你是否希望可以直接和你的费用数据对话?

可以这样问:

“我上周花了多少钱?”
“显示我这个月的餐饮支出。”
“添加我昨天用 信用卡 支付的 350 的晚餐费用。”

这个项目将这些自然语言消息,甚至语音消息,转换为结构化数据和可搜索的洞察,使用了:

  • Telegram 作为聊天 UI
  • n8n 作为工作流编排器
  • AWS Bedrock(本示例中使用 Claude 3.5 Sonnet)用于意图分类、数据写入和对话式查询 agent(你可以替换为任何你选择的 LLM)
  • Sarvam Speech-to-Text 用于语音转写(你也可以接入 Whisper、Deepgram、AssemblyAI,或任何你觉得合适的方案)
  • Elasticsearch Agent Builder + MCP 负责存储、语义搜索,以及自定义 ES|QL 函数调用工具

另外,还准备了一个单独的 Colab notebook,用于自动部署整个 n8n 工作流,这是临时的。对于长期运行的 n8n 服务,建议你将其部署在你自己的服务器上,而不是使用 Colab。

这个系统做了什么

  • 将语音 → 文本
  • 判断消息类型是:
    • INGEST(“我在午餐上花了 250”)
    • QUERY(“我上个月花了多少钱?”)
  • 将结构化 JSON 和语义 embedding 写入 Elasticsearch
  • 使用 Agent Builder 工具运行有上下文的 ES|QL 查询
  • 在 Telegram 中返回友好的回复
  • 在分类置信度较低时,通过交互式澄清步骤来处理

n8n 架构一览

流程

Telegram → n8n( STT → Classifier → Ingest / Query 路由)→ AWS Bedrock LLMs → Elasticsearch(索引 + 使用 MCP 的语义搜索)→ Elastic Agent Builder 工具 → Telegram 响应

关键节点 / 组件

n8n Workflow

  • Telegram Trigger
  • 语音 / 文本 切换
  • STT 请求
  • Classifier agent
  • Ingestion agent
  • 通过 Agent Builder MCP 的 Query agent
  • Elasticsearch indexer
  • 低置信度门控

Elasticsearch

  • 启用带有 Bedrock embeddings 的 semantic_text 字段
  • 干净的索引 mapping( amount 、 merchant 、 category 、 ts / @timestamp 、 raw_transcript )
  • 使用 ES|QL 构建的 Agent Builder 工具

AWS Bedrock

  • Claude 3.5 Sonnet v2 用于:
  • Intent 分类
  • Expense JSON 提取
  • Query agent 推理(通过 MCP 进行函数调用)

自己动手试试( 一键设置 )

我把所有内容都打包在这个 Colab notebook 里:

Colab

https://colab.research.google.com/gist/someshwaranM/b5d21d51a6a9a9cc96e62b05c97ac203/som-expense-tool-colab.ipynb

Colab 为你做了什么:

  • 在 Colab 内启动 n8n,进行临时设置
  • 通过 Cloudflare Tunnel 将其暴露到互联网上
  • 通过 API 在 n8n 中创建 AWS、ES、Telegram 凭证
  • 安装完整的工作流模板
  • 设置 Elasticsearch:
  • Bedrock 推理端点
  • 带 semantic_text 的索引 mapping
  • 提供批量写入工具,用于你的合成费用数据集
  • 让你可以立即从 Telegram 开始与你的 bot 对话

演示截图

  • Telegram 对话

  • Agent Builder(直接对话)

  • Elastic Agent Builder YouTube 视频

总结

这个技术栈为你提供:

  • 一个对话式个人理财助手
  • 使用 Elastic Agent Builder 的完整语义 + 结构化搜索
  • 来自聊天或语音的实时写入

原文:https://discuss.elastic.co/t/dec-3rd-2025-en-build-a-conversational-expense-assistant-using-elasticsearch-agent-builder-with-telegram-n8n-and-aws-bedrock/383585

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值