Crea un bot di domanda e risposta trasparente per i tuoi documenti con LangChain e GPT-3

Crea un bot di domanda e risposta con LangChain e GPT-3

Guida per lo sviluppo di un bot di QA informativo con le fonti utilizzate visualizzate

Foto di Justin Ha su Unsplash.

Un sistema di risposta alle domande può essere di grande aiuto nell’analisi di grandi quantità di dati o documenti. Tuttavia, le fonti (cioè parti del documento) utilizzate dal modello per creare la risposta di solito non vengono mostrate nella risposta finale.

Comprendere il contesto e l’origine delle risposte è prezioso non solo per gli utenti alla ricerca di informazioni accurate, ma anche per gli sviluppatori che desiderano migliorare continuamente i loro bot di QA. Con l’inclusione delle fonti nella risposta, gli sviluppatori ottengono preziose informazioni sul processo decisionale del modello, facilitando miglioramenti iterativi e ottimizzazione.

Questo articolo mostra come utilizzare LangChain e GPT-3 (text-davinci-003) per creare un bot di Question-Answering trasparente che visualizza le fonti utilizzate per generare la risposta utilizzando due esempi.

Nel primo esempio, imparerai come creare un bot di QA trasparente che sfrutta il contenuto del tuo sito web per rispondere alle domande. Nel secondo esempio, esploreremo l’uso di trascrizioni di diversi video di YouTube, sia con che senza timestamp.

Elaborazione dei dati e creazione di un archivio di vettori

Prima di poter sfruttare le capacità di un LMM come GPT-3, dobbiamo elaborare i nostri documenti (ad esempio, il contenuto del sito web o le trascrizioni di YouTube) nel formato corretto (prima i chunk, poi le embeddigns) e memorizzarli in un archivio di vettori. La Figura 1 qui sotto mostra il flusso di processo da sinistra a destra.

Figura 1. Flusso di processo dell'elaborazione dei dati e creazione di un archivio di vettori (immagine dell'autore).

Esempio di contenuto del sito web

In questo esempio, elaboreremo il contenuto del portale web, It’s FOSS, specializzato nelle tecnologie Open Source, con un particolare focus su Linux.

Prima di tutto, dobbiamo ottenere un elenco di tutti gli articoli che desideriamo elaborare e memorizzare nel nostro archivio di vettori. Il codice qui sotto legge il file sitemap-posts.xml, che contiene un elenco di link a tutti gli articoli.