使用 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 视频

https://www.bilibili.com/video/BV1TcBsBVEoB/?spm_id_from=333.1387.homepage.video_card.click

总结

这个技术栈为你提供:

  • 一个对话式个人理财助手
  • 使用 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

相关推荐
OpenMiniServer3 小时前
基因的演化动力学——从复制、变异到生命复杂性的形成
人工智能
stuartevil3 小时前
AI图生视频常见坑:参考图风格不一致怎么解决
人工智能·深度学习·音视频
2601_962174173 小时前
小试牛刀-SpringBoot集成SOL链
数据库·spring boot·后端
如何取名3 小时前
结合实际业务进行LRU淘汰算法优化设计(数据库开发日志)
数据库·算法
HanhahnaH3 小时前
Outbox 投递器:事务性发件箱模式详解
数据库
星核0penstarry3 小时前
HICOOL 2026深度解读:从四大仪式看北京硬科技生态的底层逻辑
大数据·人工智能·科技·ai·创业创新·ai编程
aichitang20243 小时前
快乐泛函每一天:希尔伯特空间中的最佳逼近与正交投影定理
人工智能·考研·算法·ai·面试·泛函分析
benchmark_cc3 小时前
K 线数据断层会对回测造成什么影响?从一个缺失交易日看懂量化策略为什么会失真
大数据·开发语言·数据分析·量化·股票数据·quantdash·量化数据源
Python大数据分析@3 小时前
如何评价openworker办公agent?
人工智能
H0311169853 小时前
AI任务不中断:支持离线与关机后继续运行的几款工具
人工智能