叉子

王林
王林原创
2025-02-28 14:39:11811浏览

>本文探索了代理抹布,这是一种强大的技术,可以通过将代理AI的决策能力与检索功能增强生成(RAG)的适应性相结合来增强大型语言模型(LLM)。 与传统模型受其培训数据限制不同,Agentic rag允许LLMS独立访问和推理来自各种来源的信息。 该实用的指南重点是使用Langchain建立动手抹布管道。

>用langchain 构建代理抹布管道 以下步骤详细介绍了抹布管道的创建,由下面的架构图说明:

>

叉子

  1. 用户查询:

    该过程以用户的问题开头,启动管道。

  2. 查询路由:

    系统确定是否可以使用现有知识来回答查询。 积极的反应产生了立即的答案;否则,查询将进行数据检索。>

  3. 数据检索:

    管道访问两个潜在来源:

      本地文档:
    • >预处理的PDF(例如,生成AI原理)是知识库,系统正在搜索内部的相关信息。 > Internet搜索:
    • 对于更广泛的上下文,管道使用外部来源来收集最新信息。
    • >
    >
  4. 上下文构建:
  5. 检索数据(从PDF或Web中)被编译为连贯的上下文,组装相关信息。

    >

    答案生成:此编译的上下文被馈送到大型语言模型(LLM)以生成一个精确且内容丰富的答案。>
  6. 设置环境

  7. 开始之前,请确保您有以下操作:>

groq api键:

groq api console

>文件中安全地保存(示例):>
<code class="language-bash">pip install langchain-groq faiss-cpu crewai serper pypdf2 python-dotenv setuptools sentence-transformers huggingface distutils</code>

>代码利用各种库进行:操作系统交互(os),环境变量加载(dotenv),矢量数据库管理(FAISS),PDF处理(PyPDFLoader>),文本拆卸(RecursiveCharacterTextSplitter),嵌入(HuggingFaceEmbeddings),eNagending(ChatGroq),LLM),LLM Interaction(llm Interaction(LLM Interaction)(SerperDevTool),ScrapeWebsiteTool,AgentTask)。Crew>

llm初始化和决策>

>初始化了两个llms:

(使用llm)作为一般任务,而llama-3.3-70b-specdec>(使用crew_llm)进行Web刮擦。 Agemini/gemini-1.5-flash函数充当路由器,确定基于提供的上下文是否足够的本地答案。 check_local_knowledge()

> Web刮擦代理和矢量数据库

> >使用

库构建的Web刮擦代理,检索并总结了相关的Web内容。

>函数从PDF创建了FAISS矢量数据库,从而实现了有效的相似性搜索。 crewai>从数据库中检索最相关的5个最相关的块。setup_vector_db()> get_local_content()

答案生成和主函数

>

函数使用LLM根据收集的上下文来创建最终响应。

函数策划了整个过程,处理查询路由,上下文检索和答案生成。 一个示例查询(“什么是代理抹布?”)演示了该系统的整合基于本地和Web的信息以进行全面响应的能力。 输出展示了系统提供对代理抹布的详细说明的能力,即使信息在本地PDF中不直接存在。 generate_final_answer()>这种修订后的响应提供了对代理抹布管道的更简洁,更有条理的解释,重点介绍了所涉及的关键步骤和功能。 它还阐明了每个代码段和库的目的和用法。main()>

以上是叉子的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn