Le dernier modèle d'Openai, O3-Mini, révolutionne les tâches de codage avec ses capacités avancées de raisonnement, de résolution de problèmes et de génération de code. Il gère efficacement les requêtes complexes et intègre des données structurées, établissant une nouvelle norme dans les applications d'IA. Cet article explore l'utilisation d'O3-Mini et de Crewai pour construire un agent d'assistant de recherche de génération (RAG) (RAG) de récupération qui récupère les informations de plusieurs PDF et traite les requêtes utilisateur intelligemment. Nous utiliserons CrewdoClingsource, Serperdevtool et O3-MinI d'Openai pour améliorer l'automatisation dans les flux de travail de recherche.
Prérequis
Avant de plonger dans la mise en œuvre, passons brièvement ce dont nous avons besoin pour commencer. Avoir la bonne configuration assure un processus de développement en douceur et évite les interruptions inutiles.
Avec ceux-ci en place, nous sommes prêts à commencer à construire!
Tout d'abord, nous devons installer les bibliothèques nécessaires. Ces bibliothèques fournissent les bases du traitement des documents, de l'orchestration d'agent AI et des fonctionnalités de recherche sur le Web.
!pip install crewai !pip install 'crewai[tools]' !pip install docling
Ces bibliothèques jouent un rôle crucial dans la construction d'un assistant de recherche efficace sur l'IA.
import os from crewai import LLM, Agent, Crew, Task from crewai_tools import SerperDevTool from crewai.knowledge.source.crew_docling_source import CrewDoclingSource
En cela,
os.environ['OPENAI_API_KEY'] = 'your_openai_api_key' os.environ['SERPER_API_KEY'] = 'your_serper_api_key'
Ces clés d'API permettent d'accéder aux modèles d'IA et aux capacités de recherche Web.
Dans cette étape, nous chargerons les articles de recherche d'ARXIV, permettant à notre modèle d'IA de leur en tirer des informations. Les articles sélectionnés couvrent les sujets clés:
content_source = CrewDoclingSource( file_paths=[ "https://arxiv.org/pdf/2501.12948", "https://arxiv.org/pdf/2501.18438", "https://arxiv.org/pdf/2401.02954" ], )
Maintenant, nous allons définir le modèle AI.
!pip install crewai !pip install 'crewai[tools]' !pip install docling
Pour améliorer les capacités de recherche, nous intégrons un outil de recherche Web qui récupère les documents académiques pertinents lorsque les informations requises ne sont pas trouvées dans les documents fournis.
import os from crewai import LLM, Agent, Crew, Task from crewai_tools import SerperDevTool from crewai.knowledge.source.crew_docling_source import CrewDoclingSource
Cela spécifie le point de terminaison de l'API de recherche Google Scholar.
Étape 7: Définissez le modèle d'intégration pour la recherche de documents
os.environ['OPENAI_API_KEY'] = 'your_openai_api_key' os.environ['SERPER_API_KEY'] = 'your_serper_api_key'
Crewai prend en charge plusieurs fournisseurs d'intégration, y compris OpenAI et Gemini (modèles d'IA de Google), permettant la flexibilité de choisir le meilleur modèle en fonction de la précision, des performances et des considérations de coûts.
Étape 8: Créez les agents AI
L'agent de recherche de documents est chargé de récupérer les réponses des documents de recherche et des documents fournis. Il agit comme un expert dans l'analyse du contenu technique et l'extraction d'informations pertinentes. Si les informations requises ne sont pas trouvées, elle peut déléguer la requête à l'agent de recherche Web pour une exploration plus approfondie. Le paramètre perte_delegation = true permet ce processus de délégation.
!pip install crewai !pip install 'crewai[tools]' !pip install docling
L'agent de recherche Web, en revanche, est conçu pour rechercher des informations manquantes en ligne à l'aide de Google Scholar. Il n'approche que lorsque l'agent de recherche de documents ne trouve pas de réponse dans les documents disponibles. Contrairement à l'agent de recherche de documents, il ne peut pas déléguer davantage les tâches (allow_delegation = false). Il utilise Serper (Google Scholar API) comme outil pour récupérer les articles académiques pertinents et assurer des réponses précises.
import os from crewai import LLM, Agent, Crew, Task from crewai_tools import SerperDevTool from crewai.knowledge.source.crew_docling_source import CrewDoclingSource
Maintenant, nous allons créer les deux tâches pour les agents.
La première tâche implique de répondre à une question donnée en utilisant des documents de recherche et des documents disponibles.
os.environ['OPENAI_API_KEY'] = 'your_openai_api_key' os.environ['SERPER_API_KEY'] = 'your_serper_api_key'
La tâche suivante entre en jeu lorsque la recherche basée sur le document ne donne pas de réponse.
content_source = CrewDoclingSource( file_paths=[ "https://arxiv.org/pdf/2501.12948", "https://arxiv.org/pdf/2501.18438", "https://arxiv.org/pdf/2401.02954" ], )
L'équipage de Crewai gère les agents à effectuer efficacement les tâches en coordonnant l'agent de recherche de documents et l'agent de recherche Web. Il recherche d'abord dans les documents téléchargés et délégue à la recherche Web si nécessaire.
llm = LLM(model="o3-mini", temperature=0)
La requête initiale est dirigée vers le document pour vérifier si l'agent du chercheur peut fournir une réponse. La question posée est «O3-Mini vs Deepseek-R1: Lequel est plus sûr?»
serper_tool = SerperDevTool( search_url="https://google.serper.dev/scholar", n_results=2 # Fetch top 2 results )
Réponse :
Ici, nous pouvons voir que la réponse finale est générée par le chercheur de documents, car il a trouvé avec succès les informations requises dans les documents fournis.
Ici, la question "laquelle est le mieux, O3 Mini ou Deepseek R1?" n'est pas disponible dans le document. Le système vérifiera si l'agent de recherche de documents peut trouver une réponse; Sinon, il déléguera la tâche à l'agent de recherche Web
embedder = { "provider": "openai", "config": { "model": "text-embedding-ada-002", "api_key": os.environ['OPENAI_API_KEY'] } }
Réponse :
À partir de la sortie, nous observons que la réponse a été générée à l'aide de l'agent du chercheur Web car les informations requises n'ont pas été trouvées par l'agent du chercheur de documents. De plus, il comprend les sources à partir desquelles la réponse a finalement été récupérée.
Dans ce projet, nous avons réussi à construire un assistant de recherche alimenté par l'IA qui récupère et analyse efficacement les informations des articles de recherche et du Web. En utilisant Crewai pour la coordination des agents, la docitation du traitement des documents et le serper pour la recherche universitaire, nous avons créé un système capable de répondre à des requêtes complexes avec des idées structurées.
L'assistant recherche d'abord dans les documents et délégue de manière transparente à la recherche Web si nécessaire, garantissant des réponses précises. Cette approche améliore l'efficacité de la recherche en automatisant la récupération et l'analyse des informations. De plus, en intégrant l'assistant de recherche O3-Mini avec CrewdoclingSource de Crewai et Serperdevtool, nous avons encore amélioré les capacités d'analyse des documents du système. Avec une personnalisation supplémentaire, ce cadre peut être étendu pour prendre en charge davantage de sources de données, de raisonnement avancé et d'amélioration des workflows de recherche.
Vous pouvez explorer des projets incroyables mettant en vedette Openai O3-MinI dans notre cours gratuit - démarrer avec O3-MinI!
a. Crewai est un cadre qui vous permet de créer et de gérer des agents d'IA avec des rôles et des tâches spécifiques. Il permet à la collaboration entre plusieurs agents d'IA d'automatiser les workflows complexes.
Q2. Comment Crewai gère-t-il plusieurs agents?a. Crewai utilise une approche structurée où chaque agent a un rôle défini et peut déléguer des tâches si nécessaire. Un objet d'équipage orchestre ces agents pour effectuer efficacement les tâches.
Q3. Qu'est-ce que Crewdoclingsource?a. CrewDoclingSource est un outil de traitement des documents dans Crewai qui extrait les connaissances structurées des articles de recherche, des PDF et des documents textuels.
Q4. Qu'est-ce que l'api serper?a. L'API Serper est un outil qui permet aux applications d'IA d'effectuer des requêtes de recherche Google, y compris les recherches sur Google Scholar pour les articles académiques.
Q5. L'API Serper est-elle libre à utiliser?a. L'API Serper propose des plans gratuits et payants, avec des limitations sur le nombre de demandes de recherche dans le niveau gratuit.
Q6. Quelle est la différence entre l'API Serper et la recherche Google traditionnelle?a. Contrairement à la recherche sur Google standard, l'API Serper fournit un accès structuré aux résultats de la recherche, permettant aux agents d'IA d'extraire efficacement les articles de recherche pertinents.
Q7. CrewDoclingSource peut-il gérer plusieurs formats de fichiers?a. Oui, il prend en charge les formats de documents de recherche communs, y compris les PDF et les fichiers textuels.
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!