Crea un sistema di commenti autoregolamentato con LangChain e OpenAI

Sviluppa un sistema di commenti autoregolamentato con LangChain e OpenAI

Stiamo per creare un sistema di risposta ai commenti autoregolato utilizzando due dei modelli disponibili su OpenAI collegati con LangChain. Prevenendo il trolling del nostro sistema.

Come avvertenza, vorrei sottolineare che questo articolo è solo un esempio creato per dimostrare come funziona lo strumento LangChain. Ci sono molti modi per creare un sistema di commenti autoregolato. Quello che esploreremo in questo articolo è solo una soluzione molto basilare.

L’idea di base è isolare il modello che alla fine pubblica la risposta dall’input dell’utente a cui sta rispondendo.

In altre parole, non permetteremo al modello che interpreta il testo dell’utente di essere l’autorità finale per la pubblicazione della risposta. In questo modo, proteggiamo il sistema da possibili tentativi di sfruttamento da parte dell’utente.

I passaggi che seguirà la nostra catena LangChain per evitare che il nostro sistema di moderazione impazzisca o sia maleducato sono i seguenti:

  • Il primo modello legge l’input dell’utente.
  • Genera una risposta.
  • Un secondo modello analizza la risposta.
  • Se necessario, la modifica e alla fine la pubblica.

Come puoi vedere, il secondo modello è responsabile di decidere se la risposta può essere pubblicata. Pertanto, eviteremo che entri in contatto diretto con gli input dell’utente.

Il codice sorgente.

L’articolo si basa su un notebook in cui ho utilizzato due diversi modelli di OpenAI. Tuttavia, ci sono altri due notebook complementari che implementano la stessa soluzione con modelli di Hugging Face. In uno di essi viene utilizzato il modello EleutherAI/gpt-j-6b, mentre nell’altro ho impiegato il modello meta-llama/Llama-2–7b-chat-hf, che fa parte della famiglia di modelli LLAMA-2 rilasciata da Meta.

Tutti e tre i notebook possono essere trovati nel repository GitHub del corso sui Large Language Models.

  • Notebook Llama2–7B: https://github.com/peremartra/Large-Language-Model-Notebooks-Course/blob/main/HF_LLAMA2_LangChain_Moderation_System.ipynb