L'essor de l'intelligence artificielle permet aux développeurs d'intégrer des fonctionnalités intelligentes dans les flux de travail quotidiens. Une approche clé consiste à créer des agents autonomes qui allient raisonnement et action. Cet article montre la création de tels agents à l'aide de LangChain, de GPT-4 d'OpenAI et des fonctionnalités expérimentales de LangChain. Ces agents exécuteront du code Python, interagiront avec les fichiers CSV et traiteront des requêtes complexes. Commençons !
Pourquoi choisir LangChain ?
LangChain excelle en tant que framework pour développer des applications exploitant des modèles de langage. Sa force réside dans la création de composants modulaires et réutilisables, comme des agents, capables de :
La combinaison de LangChain avec GPT-4 d'OpenAI permet la création d'agents adaptés à des besoins spécifiques, y compris l'analyse des données et le débogage de code.
Démarrage : configuration de l'environnement
Avant de coder, assurez-vous que votre environnement est correctement configuré :
<code class="language-bash">pip install langchain langchain-openai python-dotenv</code>
<code>OPENAI_API_KEY=your_api_key_here</code>
Créer un agent d'exécution Python
Une capacité cruciale de l'agent consiste à exécuter du code Python. Ceci est réalisé en utilisant PythonREPLTool
de LangChain. Définissons l'agent :
Conception des instructions
Le fonctionnement de l'agent repose sur un ensemble d'instructions. Voici l'invite :
<code>instruction = """ You are an agent tasked with writing and executing Python code to answer questions. You have access to a Python REPL for code execution. Debug your code if errors occur and retry. Use only the code's output to answer. If code cannot answer the question, respond with 'I don't know'. """</code>
Configuration de l'agent
Le framework REACT de LangChain construira cet agent :
<code class="language-python">from langchain import hub from langchain_openai import ChatOpenAI from langchain_experimental.tools import PythonREPLTool from langchain.agents import create_react_agent, AgentExecutor base_prompt = hub.pull("langchain-ai/react-agent-template") prompt = base_prompt.partial(instructions=instruction) tools = [PythonREPLTool()] python_agent = create_react_agent( prompt=prompt, llm=ChatOpenAI(temperature=0, model="gpt-4-turbo"), tools=tools, ) python_executor = AgentExecutor(agent=python_agent, tools=tools, verbose=True)</code>
Cet agent exécute le code Python et renvoie les résultats.
Ajout d'une analyse CSV à l'agent
L'analyse des données est une tâche fréquente des agents d'IA. L'intégration de create_csv_agent
de LangChain permet à notre agent d'interroger et de traiter les données des fichiers CSV.
Configuration de l'agent CSV
Voici comment ajouter des fonctionnalités CSV :
<code class="language-python">from langchain_experimental.agents.agent_toolkits import create_csv_agent csv_agent = create_csv_agent( llm=ChatOpenAI(temperature=0, model="gpt-4-turbo"), path="episode-info.csv", verbose=True, allow_dangerous_code=True, )</code>
Cet agent répond aux questions sur episode-info.csv
, telles que le nombre de lignes/colonnes et la saison avec le plus d'épisodes.
Combiner des outils pour un agent unifié
Pour plus de polyvalence, nous combinons l'exécution Python et l'analyse CSV en un seul agent, permettant un changement d'outil transparent en fonction de la tâche.
Définition unifiée de l'agent
<code class="language-python">from langchain.agents import Tool def python_executor_wrapper(prompt: str): python_executor.invoke({"input": prompt}) tools = [ Tool( name="Python Agent", func=python_executor_wrapper, description=""" Transforms natural language to Python code and executes it. Does not accept code as input. """ ), Tool( name="CSV Agent", func=csv_agent.invoke, description=""" Answers questions about episode-info.csv using pandas calculations. """ ), ] grant_agent = create_react_agent( prompt=base_prompt.partial(instructions=""), llm=ChatOpenAI(temperature=0, model="gpt-4-turbo"), tools=tools, ) grant_agent_executor = AgentExecutor(agent=grant_agent, tools=tools, verbose=True)</code>
Cet agent gère à la fois la logique Python et l'analyse des données CSV.
Exemple pratique : analyse des épisodes d'une émission télévisée
Testons l'agent unifié avec episode-info.csv
:
<code class="language-bash">pip install langchain langchain-openai python-dotenv</code>
L'agent analyse le CSV et renvoie la saison avec le plus d'épisodes, en utilisant des pandas.
Prochaines étapes et conclusion
LangChain permet la création d'agents intelligents hautement personnalisés, simplifiant ainsi les flux de travail complexes. Avec des outils tels que Python REPL et l'agent CSV, les possibilités sont vastes, de l'automatisation de l'analyse des données au débogage du code et au-delà. Commencez à créer votre agent intelligent dès aujourd'hui !
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!