当前位置: 首页 > news >正文

Elasticsearch:创建 tavily 网页搜索 workflow 及在 agent 中使用它

在今天的文章中,我将使用 tavily web search 来创建一个 workflow。当我们搜索一个知识库,如果搜索的结果不是很相关的情况下,那么,我们调佣这个 workflow,并在网页上搜索。最终展示的结果是从互联网上的知识,而不是简单的 “不知道” 这样的结果。我们使用 Elastic Stack 9.3+。

更多阅读:Agentic RAG 详解 - 从头开始​​构建你自己的智能体系统

写入数据到 Elasticsearch

我们可以参考之前的文章 “Agentic RAG 详解 - 从头开始​​构建你自己的智能体系统”,把网页 https://em360tech.com/tech-articles/what-llama-3-everything-you-need-know-about-metas-new-ai 的数据写入到 Elasticsearch 中去。这个网页的知识只有关于 llama 3 的知识,而没有其它的知识。我们将在下面对这个建立起来的知识库进行搜索。

我们使用的代码是:https://github.com/liu-xiao-guo/twosetai/blob/main/13_agentic_rag_es_workflow.ipynb

创建 🔎 Web Search via Tavily workflow

在 Kibana 中创建如下的 workflow:

# ============================================================================= # Workflow: 🔎 Web Search via Tavily # Category: search # # This workflow is manually triggered and allows users to input a search query, # defaulting to "what is the population of Malta?". It performs a web search using # the Tavily API by sending a POST request with JSON payload and authorization. # ============================================================================= name: 🔎 Web Search via Tavily enabled: true # --------------------------------------------------------------------------- # TRIGGERS # --------------------------------------------------------------------------- triggers: - type: manual # --------------------------------------------------------------------------- # INPUTS # --------------------------------------------------------------------------- inputs: - name: query default: what is the population of Malta? description: query to pass into Tavily search type: string # --------------------------------------------------------------------------- # STEPS # --------------------------------------------------------------------------- steps: # ------------------------------------------------------------------------- # STEP 1: tavily_search # ------------------------------------------------------------------------- # Performs a web search using the Tavily API. - name: tavily_search type: http with: url: https://api.tavily.com/search method: POST headers: Content-Type: application/json Authorization: Bearer <Your Tavily API key> body: | { "query": "{{ inputs.query }}" } # ------------------------------------------------------------------------- # STEP 2: Process each Tavily result # ------------------------------------------------------------------------- - name: process_each_result type: foreach foreach: "{{ steps.tavily_search.output.data.results }}" steps: - name: log_result type: console with: message: | Title: {{ foreach.item.title }} URL: {{ foreach.item.url }} Content: {{ foreach.item.content }}

在上面,我们必须填入自己的 Tavily API key。这个 key 可以是免费的,针对开发者而言。

创建 search-for-llama 工具

FROM agent_rag_index METADATA _score | WHERE KNN(vector, TEXT_EMBEDDING( ?query, "azure_openai_embeddings")) | SORT _score DESC | LIMIT 5 | KEEP text

我们创建上面的 search-for-llama 工具。它使用向量搜索来搜索我们的知识库。

创建 Search for Llama 智能体

This is the agent to search for general knowledge. Please justify the return result. If the returned result does not match the original question, please DO use Tavily web search to search on internet.

如上所示,当我们搜索到的结果不能和搜索的话题匹配的话,那么我们将自动使用 Tavily 搜索来搜索网页来得到结果。它包含如下的工具:

测试

我们使用如下的问题来进行提问:

如上所示,它生成的结果和问题匹配,所以它没有调用 Tavily 来进行搜索网页。

我们再次使用如下的话题来进行提问:

很显然,我们的知识库没有相应的知识。它最终调用 Tavily 网页搜索来查询到相应的知识。

最后,祝大家创建智能体愉快,也祝大家新春快乐!

http://www.jsqmd.com/news/385812/

相关文章:

  • Java SpringBoot+Vue3+MyBatis web影院订票系统系统源码|前后端分离+MySQL数据库
  • Java SpringBoot+Vue3+MyBatis web药店管理系统系统源码|前后端分离+MySQL数据库
  • 新疆严寒地区防水工程如何选材?五家实力工厂深度解析 - 2026年企业推荐榜
  • 2026年评价高的汽车报废回收公司推荐:北京汽车报废解体厂/汽车报废注销/汽车报废解体回收/汽车报废解体注销/老旧汽车报废/选择指南 - 优质品牌商家
  • 前后端分离HTML问卷调查系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • 2026年武汉洪山区英语培训精选:六家机构深度解析 - 2026年企业推荐榜
  • 2026年ESOP系统公司权威推荐:SOP电子作业系统/SOP电子显示系统/作业指导书看板/智能静电监控/静电监控装置/选择指南 - 优质品牌商家
  • 2026年评价高的汽车报废补贴公司推荐:车辆报废注销/车辆报废补贴/车辆报废解体注销/一站式汽车报废/事故车辆报废/选择指南 - 优质品牌商家
  • 2026年初刮泥机实力厂家盘点与选型指南 - 2026年企业推荐榜
  • 西瓜影院高清影视平台|最新电影电视剧在线观看网站
  • 2026年车辆报废公司权威推荐:汽车报废注销/汽车报废解体注销/老旧汽车报废/车辆报废回收/车辆报废注销/车辆报废补贴/选择指南 - 优质品牌商家
  • 【Android】手机蜘蛛魔术的简易app例子
  • 驻马店全铝衣柜定制深度评测:2026年口碑厂家如何选 - 2026年企业推荐榜
  • 从Java全栈到前端框架:一场真实的面试对话
  • 2026年作业指导书系统厂家权威推荐榜:SOP电子作业系统、SOP电子显示系统、SOP看板系统、作业指导书看板选择指南 - 优质品牌商家
  • 2026年播音主持艺考培训厂家权威推荐榜:中朝双语播音培训、中英双语播音培训、中西双语播音培训、导演培训、影视表演培训选择指南 - 优质品牌商家
  • 【计算机毕业设计】基于Spring Boot的夕阳红公寓管理系统的设计与实现
  • CT断层成像系列07——等距扇束前向投影和FBP重建(附Matlab代码)
  • 2026年厂区划线厂家权威推荐榜:厂区道路划线/地面划线/路面划线/厂区划线/市政道路划线/热熔标线/交通划线/选择指南 - 优质品牌商家
  • 【计算机毕业设计】汉服文化平台网站
  • 【毕业设计】汉服文化平台网站
  • 2026年划线厂家权威推荐榜:厂区划线/地面划线/路面划线/厂区道路划线/市政道路划线/热熔标线/交通划线/停车位划线/选择指南 - 优质品牌商家
  • 2026年道路划线公司权威推荐:地面划线/路面划线/厂区划线/厂区道路划线/市政道路划线/热熔标线/交通划线/停车位划线/选择指南 - 优质品牌商家
  • 别等图标被切了,才发现圆角是个坑
  • 2026年钢材批发市场厂家权威推荐榜:附近钢材批发市场、附近钢材采购批发、哪里有方管批发、成都方管批发、成都钢材批发选择指南 - 优质品牌商家
  • 2026年初杭州青少年内衣供应商深度评测与选型指南 - 2026年企业推荐榜
  • AionUi:开源本地AI协作平台
  • 2026年,如何选择一家真正可靠的刮泥机供应商? - 2026年企业推荐榜
  • Python量化交易:K-Means聚类与PCA降维算法
  • 好看电影网高清影视平台|最新电影电视剧在线观看网站