>本文探討了代理抹布,這是一種強大的方法,將代理AI的決策與RAG的適應性結合了動態信息檢索和生成。 與受培訓數據限制的傳統模型不同,代理RAG獨立訪問和理由,以及來自各種來源的信息。該實用的指南重點是建造基於蘭鏈的抹布管道。
>代理抹布項目:逐步指南
>該項目按照以下架構構建了抹布管道:
用戶查詢:該過程以用戶的問題開頭。
查詢路由:系統確定它是否可以使用現有知識回答。 如果是,它將直接響應;否則,它將進行數據檢索。
>數據檢索:管道訪問兩個潛在來源:
上下文構建:檢索數據被編譯到連貫的上下文中。
>> 答案生成:>此上下文被饋送到大型語言模型(LLM)以生成簡潔明了的答案。
設置環境
>先決條件:
>安裝:
安裝必要的python軟件包:
pip install langchain-groq faiss-cpu crewai serper pypdf2 python-dotenv setuptools sentence-transformers huggingface distutils
API密鑰管理:將API密鑰牢固地存儲在>文件中(下圖):.env
>
import os from dotenv import load_dotenv # ... other imports ... load_dotenv() GROQ_API_KEY = os.getenv("GROQ_API_KEY") SERPER_API_KEY = os.getenv("SERPER_API_KEY") GEMINI = os.getenv("GEMINI")
代碼概述: 該代碼使用幾個蘭格鏈組件:
用於矢量數據庫,用於pdf處理,FAISS
用於文本塊,PyPDFLoader
用於嵌入生成,RecursiveCharacterTextSplitter
> andHuggingFaceEmbeddings
和ChatGroq
for llms for llms,LLM
用於Web搜索,以及用於代理商的SerperDevTool
>crewai
>
(llama-3.3-70b-specdec)用於一般任務,llm
(gemini/gemini-1.5-flash)用於網絡刮擦。 crew_llm
函數基於本地上下文可用性路由查詢。使用check_local_knowledge()
構建的Web刮擦代理檢索並總結了Web內容。 使用FAISS從PDF創建矢量數據庫。 最後,crewai
結合了上下文和查詢以產生最終響應。
generate_final_answer()
> 函數演示了查詢系統。 例如,查詢“什麼是代理抹布?”觸發了網絡刮擦,從而對代理抹布,其組件,福利和局限性進行了全面的解釋。 輸出展示了系統動態訪問和合成來自不同來源的信息的能力。 此處省略了詳細的輸出,但可用於原始輸入。
以上是ASFAFASFASFASFASF的詳細內容。更多資訊請關注PHP中文網其他相關文章!