Cum să antrenezi un Chatbot AI cu o bază de cunoștințe personalizată folosind API-ul ChatGPT

În articolul nostru anterior, am demonstrat cum să construim un chatbot AI cu API-ul ChatGPT și să atribuim un rol pentru a-l personaliza. Dar ce se întâmplă dacă vrei să antrenezi AI pe propriile tale date? De exemplu, este posibil să aveți o carte, date financiare sau un set mare de baze de date și doriți să le căutați cu ușurință. În acest articol, vă oferim un tutorial ușor de urmat despre cum să antrenezi un chatbot AI cu baza ta de cunoștințe personalizată cu API-ul LangChain și ChatGPT. Implementăm LangChain, GPT Index și alte biblioteci puternice pentru a antrena chatbot-ul AI folosind Modelul de limbaj mare (LLM) al OpenAI. Deci, pe această notă, haideți să vedem cum să antrenați și să creați un Chatbot AI folosind propriul set de date.

Antrenați un chatbot AI cu o bază de cunoștințe personalizată folosind API-ul ChatGPT, LangChain și indexul GPT (2023)

În acest articol, am explicat mai detaliat pașii pentru a-l învăța pe chatbot AI cu propriile date. De la configurarea instrumentelor și software-ului până la antrenarea modelului AI, am inclus toate instrucțiunile într-un limbaj ușor de înțeles. Este foarte recomandat să urmați instrucțiunile de sus în jos fără a sări peste nicio parte.

Puncte notabile înainte de a antrena AI cu propriile date

1. Puteți antrena chatbot-ul AI pe orice platformă, indiferent dacă este Windows, macOS, Linux sau ChromeOS. În acest articol, folosesc Windows 11, dar pașii sunt aproape identici pentru alte platforme.

2. Ghidul este destinat utilizatorilor generali, iar instrucțiunile sunt explicate într-un limbaj simplu. Deci, chiar dacă aveți cunoștințe superficiale despre computere și nu știți cum să codificați, puteți antrena și crea cu ușurință un chatbot AI cu întrebări și răspunsuri în câteva minute. Dacă ați urmat articolul nostru anterior ChatGPT, ar fi și mai ușor de înțeles procesul.

3. Deoarece vom antrena un Chatbot AI pe baza propriilor noastre date, este recomandat să folosiți un computer capabil, cu un procesor și un GPU bun. Cu toate acestea, puteți utiliza orice computer low-end în scopuri de testare și va funcționa fără probleme. Am folosit un Chromebook pentru a antrena modelul AI folosind o carte cu 100 de pagini (~100MB). Cu toate acestea, dacă doriți să antrenați un set mare de date care rulează în mii de pagini, este recomandat să utilizați un computer puternic.

4. În cele din urmă, setul de date ar trebui să fie în limba engleză pentru a obține cele mai bune rezultate, dar conform OpenAI, va funcționa și cu limbi internaționale populare, cum ar fi franceză, spaniolă, germană etc. limba.

Configurați mediul software pentru a antrena un chatbot AI

La fel ca articolul nostru anterior, ar trebui să știți că Python și Pip trebuie instalate împreună cu mai multe biblioteci. În acest articol, vom configura totul de la zero, astfel încât utilizatorii noi să poată înțelege și procesul de configurare. Pentru a vă face o scurtă idee, vom instala Python și Pip. După aceea, vom instala biblioteci Python, care includ OpenAI, GPT Index, Gradio și PyPDF2. De-a lungul procesului, veți afla ce face fiecare bibliotecă. Din nou, nu vă îngrijorați de procesul de instalare, este destul de simplu. În această notă, haideți să intrăm direct.

  [Explained] Cum să schimbați fusul orar în Gmail

Instalați Python

1. În primul rând, trebuie să instalați Python (Pip) pe computer. Deschis acest link și descărcați fișierul de configurare pentru platforma dvs.

2. Apoi, rulați fișierul de configurare și asigurați-vă că activați caseta de selectare pentru „Adăugați Python.exe la PATH”. Acesta este un pas extrem de important. După aceea, faceți clic pe „Instalați acum” și urmați pașii obișnuiți pentru a instala Python.

3. Pentru a verifica dacă Python este instalat corect, deschideți Terminalul de pe computer. Folosesc terminalul Windows pe Windows, dar puteți folosi și promptul de comandă. Odată ajuns aici, rulați comanda de mai jos și va afișa versiunea Python. Pe Linux și macOS, poate fi necesar să utilizați python3 –version în loc de python –version.

python --version

Actualizați Pip

Când instalați Python, Pip este instalat simultan pe sistemul dvs. Deci haideți să-l facem upgrade la cea mai recentă versiune. Pentru cei care nu știu, Pip este managerul de pachete pentru Python. Practic, vă permite să instalați mii de biblioteci Python din Terminal. Cu Pip, putem instala biblioteci OpenAI, gpt_index, gradio și PyPDF2. Iată pașii de urmat.

1. Deschideți Terminalul la alegere pe computer. Folosesc terminalul Windows, dar puteți folosi și promptul de comandă. Acum, rulați comanda de mai jos pentru a actualiza Pip. Din nou, poate fi necesar să utilizați python3 și pip3 pe Linux și macOS.

python -m pip install -U pip

2. Pentru a verifica dacă Pip a fost instalat corect, rulați comanda de mai jos. Va scoate numărul versiunii. Dacă primiți erori, urmați ghidul nostru dedicat despre cum să instalați Pip pe Windows pentru a remedia problemele legate de PATH.

pip --version

Instalați bibliotecile OpenAI, GPT Index, PyPDF2 și Gradio

Odată ce am configurat Python și Pip, este timpul să instalăm bibliotecile esențiale care ne vor ajuta să antrenăm un chatbot AI cu o bază de cunoștințe personalizată. Iată pașii de urmat.

1. Deschideți Terminalul și rulați comanda de mai jos pentru a instala biblioteca OpenAI. Îl vom folosi ca LLM (Large language model) pentru a antrena și a crea un chatbot AI. Și vom importa, de asemenea, cadrul LangChain din OpenAI. Rețineți că, utilizatorii Linux și macOS pot fi nevoiți să folosească pip3 în loc de pip.

pip install openai

2. În continuare, să instalăm GPT Index, care se mai numește și LlamaIndex. Acesta permite LLM să se conecteze la datele externe care reprezintă baza noastră de cunoștințe.

pip install gpt_index

3. După aceea, instalați PyPDF2 pentru a analiza fișiere PDF. Dacă doriți să vă alimentați datele în format PDF, această bibliotecă va ajuta programul să citească datele fără efort.

pip install PyPDF2

4. În cele din urmă, instalați biblioteca Gradio. Acest lucru este menit să creeze o interfață de utilizare simplă pentru a interacționa cu chatbot-ul AI antrenat. Acum am terminat de instalat toate bibliotecile necesare pentru a antrena un chatbot AI.

pip install gradio

Descărcați un editor de cod

În cele din urmă, avem nevoie de un editor de cod pentru a edita o parte din cod. Pe Windows, aș recomanda Notepad++ (Descarca). Pur și simplu descărcați și instalați programul prin link-ul atașat. De asemenea, puteți utiliza VS Code pe orice platformă dacă vă simțiți confortabil cu IDE-uri puternice. În afară de VS Code, puteți instala Sublime Text (Descarca) pe macOS și Linux.

Pentru ChromeOS, puteți folosi excelenta aplicație Caret (Descarca) pentru a edita codul. Aproape am terminat de configurat mediul software și este timpul să obținem cheia API OpenAI.

Obțineți cheia API OpenAI gratuit

Acum, pentru a antrena și a crea un chatbot AI bazat pe o bază de cunoștințe personalizată, trebuie să obținem o cheie API de la OpenAI. Cheia API vă va permite să utilizați modelul OpenAI ca LLM pentru a vă studia datele personalizate și a trage concluzii. În prezent, OpenAI oferă chei API gratuite cu credit gratuit în valoare de 5 USD pentru primele trei luni utilizatorilor noi. Dacă v-ați creat contul OpenAI mai devreme, este posibil să aveți credit gratuit de 18 USD în cont. După ce creditul gratuit este epuizat, va trebui să plătiți pentru accesul la API. Dar, deocamdată, este disponibil pentru toți utilizatorii gratuit.

  10 platforme Python Linter pentru a vă curăța codul

1. Îndreptați-vă către platform.openai.com/signup și creați un cont gratuit. Dacă aveți deja un cont OpenAI, pur și simplu conectați-vă.

2. Apoi, faceți clic pe profilul dvs. în colțul din dreapta sus și selectați „Vizualizați cheile API” din meniul derulant.

3. Aici, faceți clic pe „Creare new secret key” și copiați cheia API. Rețineți că nu puteți copia sau vizualiza întreaga cheie API mai târziu. Prin urmare, este recomandat să copiați și să lipiți imediat cheia API într-un fișier Notepad.

4. De asemenea, nu partajați sau afișați cheia API în mod public. Este o cheie privată destinată numai accesului la contul dvs. De asemenea, puteți șterge cheile API și puteți crea mai multe chei private (până la cinci).

Antrenați și creați un chatbot AI cu o bază de cunoștințe personalizată

Acum că am configurat mediul software și am primit cheia API de la OpenAI, haideți să antrenăm chatbot-ul AI. Aici, vom folosi modelul „text-davinci-003” în loc de cel mai recent model „gpt-3.5-turbo”, deoarece Davinci funcționează mult mai bine pentru completarea textului. Dacă doriți, puteți schimba foarte bine modelul la Turbo pentru a reduce costul. Cu asta din drum, să trecem la instrucțiuni.

Adăugați documentele dvs. pentru a antrena AI Chatbot

1. Mai întâi, creați un nou folder numit docs într-o locație accesibilă, cum ar fi Desktop. Poti alege si o alta locatie in functie de preferinte. Cu toate acestea, păstrați numele folderului docs.

2. Apoi, mutați documentele pe care doriți să le utilizați pentru antrenamentul AI în dosarul „docs”. Puteți adăuga mai multe fișiere text sau PDF (chiar și cele scanate). Dacă aveți un tabel mare în Excel, îl puteți importa ca fișier CSV sau PDF și apoi îl puteți adăuga în folderul „docs”. Puteți chiar să adăugați fișiere de bază de date SQL, așa cum este explicat în acest articol Tweet Langchain AI. Nu am încercat multe formate de fișiere în afară de cele menționate, dar puteți adăuga și verifica singur. Pentru acest articol, adaug unul dintre articolele mele despre NFT în format PDF.

Notă: Dacă aveți un document mare, procesarea datelor va dura mai mult, în funcție de CPU și GPU. În plus, va folosi rapid jetoanele dvs. OpenAI gratuite. Deci, la început, începeți cu un document mic (30-50 de pagini sau fișiere < 100 MB) pentru a înțelege procesul.

Pregătește codul

1. Acum, lansați Notepad++ (sau editorul de cod ales de dvs.) și inserați codul de mai jos într-un fișier nou. Încă o dată, am primit mare ajutor de la armrrs pe Google Colab și a modificat codul pentru a-l face compatibil cu fișierele PDF și pentru a crea o interfață Gradio deasupra.

from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper
from langchain import OpenAI
import gradio as gr
import sys
import os

os.environ["OPENAI_API_KEY"] = 'Your API Key'

def construct_index(directory_path):
    max_input_size = 4096
    num_outputs = 512
    max_chunk_overlap = 20
    chunk_size_limit = 600

    prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)

    llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.7, model_name="text-davinci-003", max_tokens=num_outputs))

    documents = SimpleDirectoryReader(directory_path).load_data()

    index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper)

    index.save_to_disk('index.json')

    return index

def chatbot(input_text):
    index = GPTSimpleVectorIndex.load_from_disk('index.json')
    response = index.query(input_text, response_mode="compact")
    return response.response

iface = gr.Interface(fn=chatbot,
                     inputs=gr.inputs.Textbox(lines=7, label="Enter your text"),
                     outputs="text",
                     title="Custom-trained AI Chatbot")

index = construct_index("docs")
iface.launch(share=True)

2. Așa arată codul în editorul de cod.

3. Apoi, faceți clic pe „Fișier” în meniul de sus și selectați „Salvare ca…” din meniul derulant.

4. După aceea, setați numele fișierului app.py și schimbați „Salvare ca tip” la „Toate tipurile” din meniul derulant. Apoi, salvați fișierul în locația în care ați creat folderul „docs” (în cazul meu, este Desktop-ul). Puteți schimba numele după bunul plac, dar asigurați-vă că este atașat .py.

  Cum să solicitați controlul în Microsoft Teams

5. Asigurați-vă că folderul „docs” și „app.py” sunt în aceeași locație, așa cum se arată în captura de ecran de mai jos. Fișierul „app.py” va fi în afara folderului „docs” și nu în interior.

6. Reveniți la cod din nou în Notepad++. Aici, înlocuiți cheia dvs. API cu cea generată pe site-ul OpenAI de mai sus.

7. În cele din urmă, apăsați „Ctrl + S” pentru a salva codul. Acum sunteți gata să rulați codul.

Creați ChatGPT AI Bot cu o bază de cunoștințe personalizată

1. Mai întâi, deschideți Terminalul și rulați comanda de mai jos pentru a vă muta pe Desktop. Acolo am salvat folderul „docs” și fișierul „app.py”. Dacă ați salvat ambele elemente într-o altă locație, mutați-vă în acea locație prin Terminal.

cd Desktop

2. Acum, rulați comanda de mai jos. Este posibil ca utilizatorii Linux și macOS să fie nevoiți să folosească python3.

python app.py

3. Acum, va începe să analizeze documentul folosind modelul OpenAI LLM și va începe indexarea informațiilor. În funcție de dimensiunea fișierului și de capacitatea computerului dvs., procesarea documentului va dura ceva timp. Odată terminat, un fișier „index.json” va fi creat pe desktop. Dacă terminalul nu afișează nicio ieșire, nu vă faceți griji, s-ar putea să prelucreze în continuare datele. Pentru informațiile dvs., procesarea unui document de 30 MB durează aproximativ 10 secunde.

4. Odată ce LLM a procesat datele, veți primi câteva avertismente care pot fi ignorate în siguranță. În cele din urmă, în partea de jos, veți găsi o adresă URL locală. Copiați-l.

5. Acum, lipiți URL-ul copiat în browser-ul web și îl aveți. Chatbot-ul dvs. AI antrenat personalizat bazat pe ChatGPT este gata. Pentru a începe, puteți întreba chatbot-ul AI despre ce este vorba în document.

6. Puteți pune întrebări suplimentare, iar botul ChatGPT va răspunde din datele pe care le-ați furnizat AI. Așadar, puteți construi un chatbot AI personalizat cu propriul set de date. Acum puteți antrena și crea un chatbot AI bazat pe orice tip de informații doriți. Posibilitățile sunt nesfârșite.

7. De asemenea, puteți copia adresa URL publică și o puteți partaja prietenilor și familiei. Legătura va fi activă timp de 72 de ore, dar trebuie să păstrați computerul pornit, deoarece instanța serverului rulează pe computer.

8. Pentru a opri chatbot-ul AI antrenat personalizat, apăsați „Ctrl + C” în fereastra Terminal. Dacă nu funcționează, apăsați din nou „Ctrl + C”.

9. Pentru a reporni serverul de chatbot AI, mutați din nou la locația Desktop și rulați comanda de mai jos. Rețineți că adresa URL locală va fi aceeași, dar adresa URL publică se va schimba după fiecare repornire a serverului.

python app.py

10. Dacă doriți să instruiți chatbot-ul AI cu date noi, ștergeți fișierele din dosarul „docs” și adăugați altele noi. De asemenea, puteți adăuga mai multe fișiere, dar furnizați informații despre același subiect, altfel puteți obține un răspuns incoerent.

11. Acum, rulați din nou codul în Terminal și va crea un nou fișier „index.json”. Aici, vechiul fișier „index.json” va fi înlocuit automat.

python app.py

12. Pentru a urmări jetoanele dvs., mergeți la online-ul OpenAI bord și verificați cât credit gratuit a mai rămas.

13. În cele din urmă, nu trebuie să atingeți codul decât dacă doriți să schimbați cheia API sau modelul OpenAI pentru personalizare ulterioară.

Construiește un Chatbot AI personalizat folosind propriile tale date

Deci, acesta este modul în care puteți antrena un chatbot AI cu o bază de cunoștințe personalizată. Am folosit acest cod pentru a instrui AI pe cărți medicale, articole, tabele de date și rapoarte din arhive vechi și a funcționat impecabil. Așa că mergeți mai departe și creați-vă propriul chatbot AI folosind Modelul de limbă mare al OpenAI și ChatGPY. Oricum, asta este tot de la noi. Dacă sunteți în căutarea celor mai bune alternative ChatGPT, accesați articolul nostru cu link. Și pentru a folosi ChatGPT pe Apple Watch, urmați tutorialul nostru aprofundat. În cele din urmă, dacă vă confruntați cu orice fel de probleme, anunțați-ne în secțiunea de comentarii de mai jos. Vom încerca cu siguranță să vă ajutăm.