Asfafasfasfasfasf

PHPz
PHPzoriginal
2025-02-28 14:37:10484parcourir

Cet article explore l'agent RAG, une approche puissante combinant la prise de décision de l'agence de l'IA avec l'adaptabilité de RAG pour la récupération et la génération dynamiques de l'information. Contrairement aux modèles traditionnels limités par les données de formation, le chiffon agentique accède indépendamment et les raisons avec les informations provenant de diverses sources. Ce guide pratique se concentre sur la construction d'un pipeline de chiffons à Langchain.

Projet de Rag Agent: un guide étape par étape

Le projet construit un pipeline de chiffon suivant cette architecture:

Asfafasfasfasfasf

  1. Requête utilisateur: Le processus commence par la question d'un utilisateur.

  2. Route de requête: Le système détermine s'il peut répondre en utilisant les connaissances existantes. Si oui, il répond directement; Sinon, il procède à la recherche de données.

  3. Retrievale de données: Le pipeline accède à deux sources potentielles:

    • Documents locaux: Un PDF prétraité (principes d'IA génératifs) sert de base de connaissances.
    • Recherche sur Internet: Pour un contexte plus large, le système utilise des sources externes via le grattage Web.
  4. Bâtiment de contexte: Les données récupérées sont compilées dans un contexte cohérent.

  5. Génération de réponses: Ce contexte est alimenté à un modèle de langue large (LLM) pour générer une réponse concise et précise.

Configuration de l'environnement

Prérequis:

  1. Key API Groq ( Console API GROQ )
  2. Clé API Gemini ( Console API Gemini )
  3. serper.
  4. Installation:

Installez les packages Python nécessaires:

Gestion des clés de l'API:
<code class="language-bash">pip install langchain-groq faiss-cpu crewai serper pypdf2 python-dotenv setuptools sentence-transformers huggingface distutils</code>
Stocker les clés d'API en toute sécurité dans un fichier

(exemple ci-dessous): .env

Présentation du code:
<code class="language-python">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")</code>

Le code utilise plusieurs composants de Langchain: pour la base de données vectorielle,

pour le traitement PDF,

pour la chasse au texte, FAISS pour la génération d'intégration, PyPDFLoader et RecursiveCharacterTextSplitter pour LLMS, HuggingFaceEmbeddings pour la recherche Web, et ChatGroq pour l'orchestration des agents. LLM

Deux LLM sont initialisés: llm (LLAMA-3.3-70B-S-SPECDEC) pour les tâches générales et crew_llm (Gemini / Gemini-1.5-Flash) pour le grattage Web. A check_local_knowledge() Fonction Route les requêtes basées sur la disponibilité du contexte local. Un agent de grattage Web, construit à l'aide de crewai, récupère et résume le contenu Web. Une base de données vectorielle est créée à partir du PDF à l'aide de FAISS. Enfin, generate_final_answer() combine le contexte et la requête pour produire la réponse finale.

Exemple d'utilisation et de sortie:

La fonction main() démontre la question de l'interrogation du système. Par exemple, la requête "Qu'est-ce que le chiffon agentique?" déclenche le grattage Web, entraînant une explication complète du chiffon agentique, ses composants, ses avantages et ses limites. La sortie présente la capacité du système à accéder et à synthétiser dynamiquement les informations provenant de diverses sources. La sortie détaillée est omise ici par concision mais est disponible dans l'entrée d'origine.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn