作者:来自 Elastic JD Armada

探索来自 Cal Hacks 12.0 的顶级 Elastic Agent Builder 项目,并深入了解我们关于 Serverless 、 ES|QL 和 agent 架构的技术要点。

更多阅读:Elastic AI agent builder 介绍(一)

Elasticsearch 具有与行业领先的 Gen AI 工具和提供商的原生集成。查看我们的网络研讨会,了解如何超越 RAG 基础,或使用 Elastic 向量数据库构建可用于生产的应用。

要为你的用例构建最佳搜索解决方案,请开始免费的云试用,或立即在本地机器上试用 Elastic 。


几周前,我们有幸赞助了 Cal Hacks 12.0 ,这是最大的线下黑客松之一,拥有来自世界各地超过 2000 名参与者。我们为在 Serverless 上最佳使用 Elastic Agent Builder 提供了专属奖项赛道,反响非常热烈。在短短 36 小时内,我们收到了 29 个使用 Agent Builder 的作品,这些作品展现了创造性的用法,从构建野火情报工具到 StackOverflow 校验器。

除了令人印象深刻的项目之外,Cal Hacks 12.0 的体验还给了我们同样重要的东西:来自首次接触我们 Stack 的开发者的快速、未经过滤的反馈。黑客松是独特的压力测试,时间紧、毫无前置熟悉度,并且会遇到不可预料的障碍(例如臭名昭著的 WiFi 中断)。它们能准确暴露开发者体验的优势以及仍需改进的地方。随着开发者以新的方式与 Elastic Stack 交互,越来越多通过 LLM 驱动的工作流,这一点变得更加重要。在这篇博客中,我们将更深入地介绍参与者使用 Agent Builder 构建的项目以及我们在过程中学到的内容。

获奖项目

第一名:AgentOverflow

为 LLM 和 agent 时代重新构建的 Stack Overflow 。

在此阅读更多关于 AgentOverflow 的内容。

AgentOverflow 解决了大多数 AI 开发者都会遇到的问题:LLM 会幻觉、聊天记录会消失、开发者会浪费时间重复解决同样的问题。

AgentOverflow 捕获、验证并重新呈现真实的问题—解决方案对,从而帮助开发者打破幻觉循环,更快完成交付。

工作原理:

1)分享 JSON —— “Solution Schema”。

从 Claude 分享中一键操作即可抓取、提取并组装一个 Share Solution JSON,这是一种结构化格式,包含:

  • 问题
  • 上下文
  • 代码
  • 标签
  • 已验证的解决步骤

一个验证器(LAVA)会检查并强制结构正确,用户再补充一行额外上下文,然后内容会被存储并在 Elasticsearch 中索引。

点击 “Share Solution” 将会抓取当前会话及相关元数据。

用户通过 Web 前端提供额外上下文,然后该 JSON 会被索引到 Elasticsearch 中

2)查找解决方案

当你遇到阻塞时,点击 Find Solution,AgentOverflow 会抓取你当前的对话,用它构建查询,并运行混合 Elasticsearch 搜索以呈现:

  • 排名的、社区验证的修复方案
  • 最初解决该问题的精确提示

这让开发者可以快速复制、粘贴并解除当前会话的阻塞。

3)MCP —— 为 LLMs 注入上下文

通过通过 MCP(Model Context Protocol)连接存储在 Elasticsearch 中的结构化解决方案,LLMs 在运行时会被注入高信号的上下文(代码、日志、配置、先前的修复),没有额外噪音。

AgentOverflow 使用 Agent Builder 将 Elasticsearch 作为结构化记忆层,将相关上下文注入 LLM。这将它们从被动聊天机器人转变为具备上下文感知的问题解决者。

亚军:MarketMind

一个由六个 Elastic Agents 驱动的、可解释的实时市场能量视图。

在此阅读更多关于 MarketMind 的内容。

MarketMind 脱颖而出,是因为它为新手交易者提供了一个平台,可以将零散的市场数据转化为清晰、实时的信号。不再需要在不同工具之间切换价格走势、基本面、情绪和波动率,MarketMind 将所有这些信息整合到一个平台中,帮助交易者获得可操作的洞察。该项目在构建 agents 时还使用了一些复杂的 ES|QL 查询。

工作原理:

1)收集实时市场数据

MarketMind 从 Yahoo Finance 拉取价格走势、基本面、情绪、波动率和风险指标。这些数据会被摄入并组织到多个 Elasticsearch 索引中。

2)六个专业 agent 分析市场

每个 agent 都使用 Agent Builder 构建,专注于市场的不同层面。它们从一个 Elasticsearch 索引读取数据,计算各自的领域指标,并生成包含评分和推理的标准化 JSON 输出。

3)将信号聚合为统一的 “market energy” 模型

组合输出以发光脉冲的形式显示在每只股票周围,展示动能是否在积聚、风险是否上升或情绪是否在变化。

4)可视化洞察

前端使用 React 和 Next.js构建,结合 TypeScript、基于物理的 SVG 可视化以及 Chart.js 用于实时蜡烛图。这将原始分析转化为实时可操作的反馈。

其他有趣的项目:

项目名称 他们构建的内容 他们如何使用 Elastic
OutDrobe 一个 AI 造型师,扫描你的衣柜,创建个性化穿搭,并通过语音与你聊天。 Elasticsearch 作为数据和检索层,存储衣柜元数据并回溯过去的穿搭,以支持 agent 的决策。
LiveWire 一个实时 AI 系统,监控电网,提前检测故障组件,并预测级联停电。一个针对野火等基础设施灾害的早期预警系统。 Agent Builder 驱动实时数据管道,摄取传感器数据流,存储电网信号,并为模型提供所需的结构化上下文以做出准确预测。
Clanker Town 一款游戏,使用 Elasticsearch 的地理定位功能来了解你的位置,并根据接近度在游戏中找到元素。 使用 Elasticsearch 的地理距离搜索和其他地理空间特性。
Argus 用于视频流的 AI,用于跟踪实体并检测异常。 Elasticsearch 被广泛用于存储所有提取的数据并作为知识库。
Rho 一个 API 对比平台,用于基准测试 AI API。 使用 Elasticsearch 存储和聚合 API 指标的时间序列数据。
Homi 一个 AI 驱动的租赁平台(类似 AirBnB),帮助客人通过个性化推荐发现合适的房源,并帮助房东自动创建房源列表。 使用 Elasticsearch 存储和搜索房源及其元数据。
RAGe 学术论文搜索。 使用 Elasticsearch 进行关键词搜索。

翻译如下:


找到提交到我们赛道的完整项目列表

这里还有一些其他强有力的参赛作品,它们在不同部分的技术栈中使用了 Elastic:

我们从开发者中学到的

Agent Builder 用户友好:
大多数团队之前从未使用过 Elastic,但仍能快速构建 agent,几乎不需要支持。我们为需要更多指导的团队举办了一个 workshop,但大多数团队都能顺利导入数据,并构建一个可以对这些数据执行操作的 agent。

LLM 在 kNN 查询中表现出色,但生成 ES|QL 仍需指导:
让 ChatGPT-5 生成 ES|QL 查询时返回了错误信息,常常混合 ES|QL 和 SQL。在 markdown 文件中提供文档给 LLM 似乎是一个可行的解决方法。

仅快照的 ES|QL 函数意外出现在文档中:
即将推出的 FIRST 和 LAST 聚合函数不小心出现在我们的 ES|QL 文档中。因为我们把这些文档提供给 ChatGPT,模型也使用了这些函数,尽管它们在 Serverless 中尚不可用。感谢团队的反馈,工程团队迅速合并并修复了文档(PR #137341)。

缺少 Serverless 特定指导:
一个团队尝试在未创建为 lookup 模式的索引上启用 LOOKUP JOIN。错误信息导致他们去查找 Serverless 中不存在的命令。我们将问题反馈给产品团队,他们立即修复了 Serverless 特定的可操作提示。长期来看,目标是完全隐藏 reindexing 的复杂性(Issue #4838)。

线下活动的价值:
在线 hackathon 很棒,但没有什么比肩并肩调试获得的快速反馈更有效。我们观察团队在不同用例中集成 Agent Builder,发现 ES|QL 开发者体验中的改进点,并比通过异步渠道更快地修复问题。

结论

Cal Hacks 12.0 不仅带来了一个周末的精彩演示,也让我们了解新开发者如何使用 Elastic Stack。在短短 36 小时内,我们看到团队掌握了 Agent Builder,将数据导入 Elasticsearch,设计多 agent 系统,并以多种方式测试我们的功能。此次活动也提醒我们,线下活动的重要性:快速反馈、真实交流和动手调试帮助我们理解当前开发者的需求。我们很高兴将所学带回工程团队。下次 hackathon 再见!

原文:https://www.elastic.co/search-labs/blog/agent-builder-projects-learnings-cal-hacks-12-0

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐