Hogyan tanítson meg egy AI Chatbotot egyéni tudásbázissal a ChatGPT API használatával

Korábbi cikkünkben bemutattuk, hogyan lehet mesterséges intelligencia chatbotot készíteni a ChatGPT API-val, és személyre szabott szerepkört rendelni hozzá. De mi van akkor, ha saját adataira szeretné tanítani az AI-t? Előfordulhat például, hogy van egy könyve, pénzügyi adatai vagy adatbázisok nagy halmaza, és szeretne bennük könnyedén keresni. Ebben a cikkben egy könnyen követhető oktatóanyagot mutatunk be arról, hogyan taníthat meg egy AI chatbotot egyéni tudásbázisával a LangChain és a ChatGPT API segítségével. A LangChaint, a GPT Indexet és más hatékony könyvtárakat telepítjük az AI chatbot képzésére az OpenAI Large Language Model (LLM) segítségével. Tehát ehhez a megjegyzéshez nézzük meg, hogyan lehet tanítani és létrehozni egy AI Chatbotot saját adatkészleted használatával.

AI chatbot betanítása egyéni tudásbázissal a ChatGPT API, a LangChain és a GPT Index használatával (2023)

Ebben a cikkben elmagyaráztuk azokat a lépéseket, amelyekkel részletesebben megtaníthatja az AI chatbotot saját adataival. Az eszközök és szoftverek beállításától az AI-modell betanításáig minden utasítást könnyen érthető nyelven mellékeltünk. Erősen ajánlott az utasításokat fentről lefelé követni anélkül, hogy bármelyik részt kihagyná.

Figyelemre méltó pontok, mielőtt saját adataival oktatná az AI-t

1. Az AI chatbotot bármilyen platformon betaníthatja, legyen az Windows, macOS, Linux vagy ChromeOS. Ebben a cikkben Windows 11-et használok, de a lépések szinte azonosak más platformokon.

2. Az útmutató általános felhasználóknak szól, és az utasítások egyszerű nyelvezetűek. Tehát még ha felületes ismeretekkel is rendelkezik a számítógépekről, és nem tudja, hogyan kell kódolni, néhány perc alatt könnyedén betaníthat és létrehozhat egy Q&A AI chatbotot. Ha követné korábbi ChatGPT bot cikkünket, még könnyebb lenne megérteni a folyamatot.

3. Mivel egy AI Chatbotot saját adataink alapján fogunk betanítani, ezért ajánlott megfelelő számítógépet használni, jó CPU-val és GPU-val. Tesztelési célokra azonban bármilyen alacsony kategóriás számítógépet használhat, és minden probléma nélkül működik. Chromebookot használtam az AI-modell betanítására egy 100 oldalas (~100 MB) könyv segítségével. Ha azonban nagy mennyiségű adatot szeretne betanítani több ezer oldalra, erősen ajánlott egy nagy teljesítményű számítógép használata.

4. Végül az adatkészletnek angol nyelvűnek kell lennie a legjobb eredmény elérése érdekében, de az OpenAI szerint olyan népszerű nemzetközi nyelvekkel is működni fog, mint a francia, spanyol, német stb. nyelv.

Állítsa be a szoftverkörnyezetet az AI Chatbot betanításához

Korábbi cikkünkhöz hasonlóan tudnia kell, hogy a Python-t és a Pip-et több könyvtárral együtt kell telepíteni. Ebben a cikkben mindent a nulláról állítunk be, hogy az új felhasználók is megértsék a beállítási folyamatot. Hogy rövid ötletet adjunk, telepítjük a Python-t és a Pip-et. Ezt követően Python könyvtárakat telepítünk, amelyek magukban foglalják az OpenAI-t, a GPT Indexet, a Gradio-t és a PyPDF2-t. A folyamat során megtudhatja, hogy az egyes könyvtárak mit csinálnak. Ismételten ne aggódjon a telepítési folyamat miatt, ez nagyon egyszerű. Ezen a ponton ugorjunk bele.

  Mi az a COBOL, és miért támaszkodik olyan sok intézmény rá?

Telepítse a Python-t

1. Először is telepítenie kell a Python-t (Pip) a számítógépére. Nyisd ki ez a link és töltse le a telepítőfájlt a platformjához.

2. Ezután futtassa a telepítőfájlt, és győződjön meg arról, hogy engedélyezte a „Python.exe hozzáadása a PATH-hoz” jelölőnégyzetet. Ez egy rendkívül fontos lépés. Ezután kattintson a „Telepítés most” gombra, és kövesse a szokásos lépéseket a Python telepítéséhez.

3. A Python megfelelő telepítésének ellenőrzéséhez nyissa meg a terminált a számítógépén. Windows terminált használok a Windows rendszeren, de használhatja a Parancssort is. Ha itt van, futtassa az alábbi parancsot, és kiadja a Python verziót. Linuxon és macOS-en előfordulhat, hogy a python –verziót kell használnia a python –verzió helyett.

python --version

Pip frissítése

A Python telepítésekor a Pip egyidejűleg települ a rendszerére. Tehát frissítsük a legújabb verzióra. Azok számára, akik nem ismerik, a Pip a Python csomagkezelője. Alapvetően több ezer Python-könyvtár telepítését teszi lehetővé a terminálról. A Pip segítségével OpenAI, gpt_index, gradio és PyPDF2 könyvtárakat telepíthetünk. Itt vannak a követendő lépések.

1. Nyissa meg a választott terminált a számítógépén. A Windows terminált használom, de használhatod a Parancssort is. Most futtassa az alábbi parancsot a Pip frissítéséhez. Ismét előfordulhat, hogy a python3-at és a pip3-at kell használnia Linuxon és macOS-en.

python -m pip install -U pip

2. A Pip telepítésének ellenőrzéséhez futtassa az alábbi parancsot. Kiírja a verziószámot. Ha bármilyen hibát észlel, kövesse a Pip Windows rendszeren történő telepítésére vonatkozó útmutatónkat a PATH-val kapcsolatos problémák megoldásához.

pip --version

Telepítse az OpenAI-t, a GPT Indexet, a PyPDF2-t és a Gradio Libraries-t

Miután beállítottuk a Pythont és a Pip-et, itt az ideje telepíteni azokat az alapvető könyvtárakat, amelyek segítenek nekünk egy AI chatbot képzésében egyéni tudásbázissal. Itt vannak a követendő lépések.

1. Nyissa meg a terminált, és futtassa az alábbi parancsot az OpenAI könyvtár telepítéséhez. LLM-ként (nagy nyelvi modellként) fogjuk használni egy AI chatbot képzésére és létrehozására. És importálni fogjuk a LangChain keretrendszert is az OpenAI-ból. Vegye figyelembe, hogy a Linux és a macOS felhasználóknak előfordulhat, hogy pip3-at kell használniuk pip helyett.

pip install openai

2. Ezután telepítsük a GPT Indexet, amelyet LlamaIndexnek is neveznek. Lehetővé teszi az LLM számára, hogy csatlakozzon a tudásbázisunkat képező külső adatokhoz.

pip install gpt_index

3. Ezután telepítse a PyPDF2-t a PDF-fájlok elemzéséhez. Ha PDF formátumban szeretné betáplálni adatait, ez a könyvtár segít a programnak az adatok könnyű olvasásához.

pip install PyPDF2

4. Végül telepítse a Gradio könyvtárat. Ez egy egyszerű felhasználói felület létrehozására szolgál, amellyel interakcióba léphet a képzett AI chatbottal. Ezzel befejeztük az összes szükséges könyvtár telepítését egy AI chatbot betanításához.

pip install gradio

Töltse le a kódszerkesztőt

Végül szükségünk van egy kódszerkesztőre a kód egy részének szerkesztéséhez. Windows rendszeren a Notepad++ használatát javaslom (Letöltés). Egyszerűen töltse le és telepítse a programot a mellékelt linken keresztül. Bármilyen platformon használhatja a VS Code-ot, ha kényelmes a hatékony IDE-k használatában. A VS Code kivételével telepítheti a Sublime Text (Letöltés) macOS és Linux rendszeren.

ChromeOS esetén használhatja a kiváló Caret alkalmazást (Letöltés) a kód szerkesztéséhez. Már majdnem készen vagyunk a szoftverkörnyezet beállításával, és itt az ideje megszerezni az OpenAI API kulcsot.

Szerezd meg ingyen az OpenAI API-kulcsot

Most egy AI chatbot képzéséhez és létrehozásához egyéni tudásbázison alapuló API-kulcsot kell beszereznünk az OpenAI-tól. Az API-kulcs lehetővé teszi, hogy az OpenAI modelljét LLM-ként használja az egyéni adatok tanulmányozásához és következtetések levonásához. Jelenleg az OpenAI ingyenes API-kulcsokat kínál 5 dollár értékű ingyenes jóváírással az első három hónapra az új felhasználóknak. Ha korábban hozta létre OpenAI-fiókját, 18 dolláros ingyenes jóváírás lehet a fiókjában. Az ingyenes kredit kimerülése után fizetnie kell az API-hozzáférésért. De egyelőre minden felhasználó számára ingyenesen elérhető.

  7 legjobb hangulatkövető eszköz életminőségének javítására

1. Irány platform.openai.com/signup és hozzon létre egy ingyenes fiókot. Ha már van OpenAI-fiókja, egyszerűen jelentkezzen be.

2. Ezután kattintson a profiljára a jobb felső sarokban, és válassza ki az „API kulcsok megtekintése” lehetőséget a legördülő menüből.

3. Itt kattintson az „Új titkos kulcs létrehozása” gombra, és másolja ki az API-kulcsot. Vegye figyelembe, hogy a teljes API-kulcsot a későbbiekben nem másolhatja vagy tekintheti meg. Ezért erősen ajánlott az API-kulcs azonnali másolása és beillesztése egy Jegyzettömb fájlba.

4. Ne ossza meg és ne jelenítse meg nyilvánosan az API-kulcsot. Ez egy privát kulcs, amely csak a fiókjához való hozzáférést szolgálja. Ezenkívül törölheti az API-kulcsokat, és több privát kulcsot is létrehozhat (legfeljebb öt).

Tanítson és hozzon létre egy AI chatbotot egyéni tudásbázissal

Most, hogy beállítottuk a szoftverkörnyezetet, és megkaptuk az API-kulcsot az OpenAI-tól, tanítsuk meg az AI chatbotot. Itt a „text-davinci-003” modellt fogjuk használni a legújabb „gpt-3.5-turbo” modell helyett, mert a Davinci sokkal jobban működik a szövegkiegészítésnél. Ha akarja, nagyon jól lecserélheti a modellt Turbóra, hogy csökkentse a költségeket. Ha ez nincs így, ugorjunk az utasításokhoz.

Adja hozzá dokumentumait az AI Chatbot betanításához

1. Először hozzon létre egy új mappát docs néven egy hozzáférhető helyen, például az Asztalon. Választhat másik helyszínt is saját ízlése szerint. Azonban tartsa meg a mappanév docs.

2. Ezután helyezze át az AI betanításához használni kívánt dokumentumokat a „docs” mappába. Több szöveges vagy PDF-fájlt is hozzáadhat (még a szkennelteket is). Ha nagy táblázata van az Excelben, importálhatja CSV- vagy PDF-fájlként, majd hozzáadhatja a „docs” mappához. Akár SQL adatbázis-fájlokat is hozzáadhat, amint azt ebben leírtuk Langchain AI tweet. Nem sok fájlformátumot próbáltam ki az említetteken kívül, de te magad is hozzáadhatsz és ellenőrizhetsz. Ehhez a cikkhez hozzáadom az egyik NFT-ről szóló cikkemet PDF formátumban.

Megjegyzés: Ha nagy dokumentummal rendelkezik, a CPU-tól és a GPU-tól függően hosszabb ideig tart az adatok feldolgozása. Ezenkívül gyorsan felhasználja ingyenes OpenAI tokenjeit. Tehát az elején kezdjen egy kis dokumentummal (30-50 oldal vagy < 100 MB fájl), hogy megértse a folyamatot.

Készítse elő a kódot

1. Most indítsa el a Notepad++-t (vagy a választott kódszerkesztőt), és illessze be az alábbi kódot egy új fájlba. Ismét nagy segítséget kaptam tőle armrrs a Google Colabban és módosította a kódot, hogy kompatibilis legyen a PDF fájlokkal, és hozzon létre egy Gradio felületet a tetején.

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. Így néz ki a kód a kódszerkesztőben.

3. Ezután kattintson a „Fájl” elemre a felső menüben, és válassza a „Mentés másként…” lehetőséget a legördülő menüből.

4. Ezt követően állítsa be az app.py fájlnevet, és a legördülő menüben módosítsa a „Mentés típusaként” elemet „Minden típus” értékre. Ezután mentse a fájlt arra a helyre, ahol létrehozta a „docs” mappát (az én esetemben ez az Asztal). A nevet tetszés szerint módosíthatja, de ügyeljen arra, hogy a .py hozzá legyen fűzve.

  Hogyan rúgja ki az embereket a Wi-Fi hálózatból

5. Győződjön meg arról, hogy a „docs” mappa és az „app.py” ugyanazon a helyen van, ahogy az alábbi képernyőképen látható. Az „app.py” fájl a „docs” mappán kívül lesz, és nem azon belül.

6. Térjen vissza a kódhoz a Notepad++ alkalmazásban. Itt cserélje ki az API-kulcsát az OpenAI fenti webhelyén generáltra.

7. Végül nyomja meg a „Ctrl + S” billentyűkombinációt a kód mentéséhez. Most készen áll a kód futtatására.

Hozzon létre ChatGPT AI Botot egyéni tudásbázissal

1. Először nyissa meg a Terminált, és futtassa az alábbi parancsot az Asztalra lépéshez. Ide mentettem a „docs” mappát és az „app.py” fájlt. Ha mindkét elemet egy másik helyre mentette, lépjen arra a helyre a terminálon keresztül.

cd Desktop

2. Most futtassa az alábbi parancsot. Előfordulhat, hogy a Linux és a macOS felhasználóknak python3-at kell használniuk.

python app.py

3. Most elkezdi elemezni a dokumentumot az OpenAI LLM modell segítségével, és elkezdi indexelni az információkat. A fájl méretétől és a számítógép képességeitől függően a dokumentum feldolgozása némi időt vesz igénybe. Miután ez megtörtént, egy „index.json” fájl jön létre az Asztalon. Ha a terminál nem mutat semmilyen kimenetet, ne aggódjon, lehet, hogy még mindig feldolgozza az adatokat. Tájékoztatásul: egy 30 MB-os dokumentum feldolgozása körülbelül 10 másodpercet vesz igénybe.

4. Miután az LLM feldolgozta az adatokat, néhány figyelmeztetést kap, amelyeket nyugodtan figyelmen kívül hagyhat. Végül alul talál egy helyi URL-t. Másold ki.

5. Most illessze be a kimásolt URL-t a webböngészőbe, és ott van. Az egyénileg kiképzett ChatGPT-alapú AI chatbot készen áll. Kezdésként megkérdezheti az AI chatbotot, hogy miről szól a dokumentum.

6. Feltehet további kérdéseket, és a ChatGPT bot válaszol az Ön által az AI-nak megadott adatokból. Így tehát saját adatkészlettel készíthet egyedileg kiképzett AI chatbotot. Most már betaníthat és létrehozhat egy AI chatbotot bármilyen információ alapján. A lehetőségek végtelenek.

7. A nyilvános URL-t másolhatja, és megoszthatja barátaival és családjával. A hivatkozás 72 órán keresztül él, de a számítógépet is bekapcsolva kell tartania, mivel a kiszolgálópéldány fut a számítógépen.

8. Az egyénileg kiképzett AI chatbot leállításához nyomja meg a „Ctrl + C” billentyűkombinációt a Terminál ablakban. Ha nem működik, nyomja meg újra a „Ctrl + C” billentyűket.

9. Az AI chatbot szerver újraindításához egyszerűen lépjen újra az Asztal helyére, és futtassa az alábbi parancsot. Ne feledje, hogy a helyi URL ugyanaz lesz, de a nyilvános URL minden szerver újraindítás után megváltozik.

python app.py

10. Ha új adatokkal szeretné betanítani az AI chatbotot, törölje a „docs” mappában lévő fájlokat, és adjon hozzá újakat. Több fájlt is hozzáadhat, de ugyanarról a témáról táplálja be az információkat, különben nem koherens választ kaphat.

11. Most futtassa újra a kódot a terminálban, és ez létrehoz egy új „index.json” fájlt. Itt a régi „index.json” fájl automatikusan lecserélődik.

python app.py

12. A tokenek nyomon követéséhez lépjen az OpenAI online oldalára Irányítópult és ellenőrizze, hogy mennyi szabad hitel maradt.

13. Végül nem kell megérintene a kódot, hacsak nem kívánja módosítani az API-kulcsot vagy az OpenAI-modellt a további testreszabás érdekében.

Készítsen egyéni AI chatbotot saját adatai alapján

Tehát így képezhet ki egy AI chatbotot egyéni tudásbázissal. Ezt a kódot arra használtam, hogy az AI-t orvosi könyvekre, cikkekre, adattáblázatokra és régi archívumokból származó jelentésekre tanítsam, és kifogástalanul működött. Tehát folytassa, és hozzon létre saját AI chatbotot az OpenAI Large Language Model és a ChatGPY segítségével. Mindegy, ez mind tőlünk származik. Ha a legjobb ChatGPT-alternatívákat keresi, tekintse meg hivatkozott cikkünket. Ha pedig szeretné használni a ChatGPT-t Apple Watchon, kövesse részletes útmutatónkat. Végül, ha bármilyen problémával szembesül, tudassa velünk az alábbi megjegyzés részben. Mindenképpen megpróbálunk segíteni.