Cos'è un agente in LangChain?

Cos E Un Agente In Langchain



Il framework LangChain viene utilizzato per sviluppare app che utilizzano modelli linguistici. Gli LLM danno risposte generali, non si rivolgono a nessun campo specifico mentre LangChain ha l'attributo più potente che fornisce per creare catene in cui gli utenti possono combinare più componenti insieme e creare un'unica applicazione coerente. LangChain ha molti moduli, connessioni dati, catene, agenti, memoria e callback.

In questo articolo discuteremo degli agenti in LangChain da tutti gli aspetti possibili

Cos'è un agente in LangChain?

Alcune applicazioni richiedono non solo catene predeterminate ma richiedono una catena sconosciuta che dipende dall'input dell'utente. In tal caso esiste un “ agente ' che accedono allo strumento e decidono quale strumento è necessario in base all'input dell'utente e a ciò che sta chiedendo. Un toolkit è fondamentalmente un insieme di strumenti necessari per raggiungere un obiettivo specifico e ci sono 3-5 strumenti in un toolkit.







Tipi di agenti LangChain

Ci sono due agenti principali:



  • Agenti d'azione
  • Agenti di pianificazione ed esecuzione

Agenti d'azione: Questi agenti decidono le azioni da intraprendere passo dopo passo, valutano ogni passaggio e poi lo eseguono e passano a quello successivo se discutiamo dello pseudo-codice dell'agente che prevede alcuni passaggi



  • L'input viene ricevuto dall'utente.
  • L'agente decide lo strumento e il tipo di strumento richiesto.
  • Questo strumento viene chiamato con lo strumento di input e l'osservazione viene registrata.
  • Lo strumento cronologia, lo strumento di osservazione e lo strumento di input vengono restituiti all'agente.
  • Ripeti il ​​processo finché l'agente non decide di uscire da questo strumento.

Agenti di pianificazione ed esecuzione: Questi agenti prima decidono un'azione da intraprendere e poi eseguono tutte quelle azioni.





  • Viene ricevuto l'input dell'utente.
  • L'agente elenca tutti i passaggi da eseguire.
  • L'esecutore esamina l'elenco dei passaggi, eseguendoli.

Configurazione dell'agente

Prima di configurare l'agente è necessario installare la versione più recente di Pitone in base al sistema operativo.

Passaggio 1: installazione dei pacchetti
In primo luogo, dobbiamo stabilire un ambiente per questo, dobbiamo installare LangChain, google-search-results e openai tramite il ' pip 'comando:



! pip installare langchain
! pip installare risultati-ricerca-google
! pip installare openai

Importazione delle librerie richieste:

da langchain.schema importa SystemMessage
da langchain.agents importa OpenAIFunctionsAgent, AgentExecutor
dallo strumento di importazione langchain.agents
da langchain.chat_models importa ChatOpenAI
importare ri
da getpass importa getpass

Passaggio 2: ottieni la tua API segreta
Dopo aver configurato un ambiente, ora devi ottenere le chiavi API segrete dalla piattaforma OpenAI:

openai_api_key = getpass ( )
llm = ChatOpenAI ( openai_api_key =openai_api_key, temperatura = 0 )

Passaggio 3: inizializzazione dello strumento
Successivamente definiamo uno strumento, scrivendo un semplice codice Python per ottenere la lunghezza di una stringa.

@ attrezzo
def get_parola_stringa ( parola: str ) - > int:
'' 'dammi la lunghezza di una corda.' ''
ritorno soltanto ( parola )

strumenti = [ get_parola_stringa ]

Passaggio 4: creare un modello di prompt
Dopo aver definito lo strumento, impostare un modello di richiesta per questo utilizzo 'OpenAIFunctionsAgent.create_prompt()' funzione di supporto che creerà automaticamente il modello.

messaggio_disistema = Messaggio di sistema ( contenuto = 'Sei un assistente molto potente, ma pessimo nel calcolare la lunghezza delle corde.' )
prompt = OpenAIFunctionsAgent.create_prompt ( messaggio di sistema =messaggio_di_sistema )

Passaggio 5: creazione dell'agente
Ora possiamo concludere tutti i pezzi e creare un agente utilizzando una funzione chiamata “OpenAIFunctionsAgent()” .

agente = OpenAIFunctionsAgent ( llm =llm, utensili =strumenti, richiesta = suggerimento )

Passaggio 6: impostazione del runtime
Se hai creato un agente con successo, crea un runtime per l'agente, poiché questo 'AgentExecutor' viene utilizzato come runtime per l'agente.

agente_esecutore = AgenteEsecutore ( agente =agente, utensili =strumenti, prolisso =Vero )

Passaggio 7: test dell'agente
Dopo aver creato Runtime, ora è il momento di testare l'agente.

agente_esecutore.run ( 'Quante parole ha questa stringa?' )

Se hai inserito la chiave API corretta nel passaggio 2, riceverai una risposta.

Conclusione

Questo articolo è stato illustrato sotto molti aspetti, in primo luogo dimostra cos'è LangChain e come funziona, quindi passa agli agenti in LangChain e discute lo scopo degli agenti in LangChain e contiene informazioni sui due principali tipi di agenti “Agenti d’azione” E “Agenti di pianificazione ed esecuzione” utilizzato in LangChain e alla fine l'esecuzione del codice è stata quella di stabilire un agente in LangChain