Як навчити чат-бота зі штучним інтелектом за допомогою спеціальної бази знань за допомогою ChatGPT API

У нашій попередній статті ми продемонстрували, як створити чат-бота штучного інтелекту за допомогою ChatGPT API і призначити роль для його персоналізації. Але що, якщо ви хочете навчити ШІ на своїх власних даних? Наприклад, у вас може бути книга, фінансові дані або великий набір баз даних, і ви хочете легко шукати в них. У цій статті ми пропонуємо вам простий у виконанні підручник про те, як навчити чат-бота зі штучним інтелектом за допомогою вашої спеціальної бази знань за допомогою LangChain і ChatGPT API. Ми розгортаємо LangChain, GPT Index та інші потужні бібліотеки для навчання чат-бота ШІ за допомогою великої мовної моделі (LLM) OpenAI. Тож на цій ноті давайте перевіримо, як навчити та створити AI Chatbot, використовуючи ваш власний набір даних.

Навчіть чат-бота штучного інтелекту за допомогою спеціальної бази знань за допомогою ChatGPT API, LangChain та GPT Index (2023)

У цій статті ми більш детально пояснили, як навчити чат-бота AI вашими власними даними. Від налаштування інструментів і програмного забезпечення до навчання моделі штучного інтелекту ми включили всі інструкції легкою для розуміння мовою. Настійно рекомендується слідувати інструкціям зверху вниз, не пропускаючи жодної частини.

Важливі моменти перед тим, як навчати ШІ з вашими власними даними

1. Ви можете навчити чат-бота зі штучним інтелектом на будь-якій платформі, будь то Windows, macOS, Linux або ChromeOS. У цій статті я використовую Windows 11, але кроки майже ідентичні для інших платформ.

2. Інструкція призначена для звичайних користувачів, а інструкції пояснюються простою мовою. Тож навіть якщо ви маєте поверхневі знання про комп’ютери та не знаєте, як кодувати, ви можете легко навчитися та створити чат-бота Q&A AI за кілька хвилин. Якщо ви читали нашу попередню статтю про бота ChatGPT, вам було б ще простіше зрозуміти процес.

3. Оскільки ми збираємося навчати AI Chatbot на основі наших власних даних, рекомендується використовувати потужний комп’ютер із хорошим центральним і графічним процесором. Однак для тестування можна використовувати будь-який недорогий комп’ютер, і він працюватиме без проблем. Я використовував Chromebook для навчання моделі штучного інтелекту за допомогою книги зі 100 сторінками (~100 МБ). Однак, якщо ви хочете навчити великий набір даних, що складається з тисяч сторінок, настійно рекомендується використовувати потужний комп’ютер.

4. Нарешті, щоб отримати найкращі результати, набір даних має бути англійською мовою, але, згідно з OpenAI, він також працюватиме з такими популярними міжнародними мовами, як французька, іспанська, німецька тощо. Тож спробуйте на своїй власній мова.

Налаштуйте програмне середовище для навчання чат-бота ШІ

Як і в нашій попередній статті, ви повинні знати, що Python і Pip повинні бути встановлені разом з кількома бібліотеками. У цій статті ми налаштуємо все з нуля, щоб нові користувачі також могли зрозуміти процес налаштування. Щоб дати вам коротке уявлення, ми встановимо Python і Pip. Після цього ми встановимо бібліотеки Python, які включають OpenAI, GPT Index, Gradio та PyPDF2. Під час процесу ви дізнаєтесь, чим займається кожна бібліотека. Знову ж таки, не турбуйтеся про процес встановлення, це досить просто. На цій ноті давайте відразу приступимо.

Встановіть Python

1. По-перше, вам потрібно встановити Python (Pip) на вашому комп’ютері. ВІДЧИНЕНО це посилання і завантажте інсталяційний файл для вашої платформи.

2. Далі запустіть інсталяційний файл і переконайтеся, що встановлено прапорець «Додати Python.exe до PATH». Це надзвичайно важливий крок. Після цього натисніть «Встановити зараз» і виконайте звичайні кроки для встановлення Python.

3. Щоб перевірити, чи правильно встановлено Python, відкрийте термінал на своєму комп’ютері. Я використовую термінал Windows у Windows, але ви також можете використовувати командний рядок. Опинившись тут, виконайте наведену нижче команду, і вона виведе версію Python. У Linux і macOS вам, можливо, доведеться використовувати python3 –version замість python –version.

python --version

Оновити Піп

Коли ви встановлюєте Python, у вашій системі одночасно встановлюється Pip. Тож давайте оновимо його до останньої версії. Для тих, хто не знає, Pip — це менеджер пакетів для Python. По суті, це дозволяє встановлювати тисячі бібліотек Python з терміналу. За допомогою Pip ми можемо встановити бібліотеки OpenAI, gpt_index, gradio та PyPDF2. Ось кроки, які слід виконати.

  Як використовувати додаток Apple Translate на iPhone

1. Відкрийте обраний вами термінал на комп’ютері. Я використовую термінал Windows, але ви також можете використовувати командний рядок. Тепер виконайте команду нижче, щоб оновити Pip. Знову ж таки, можливо, вам доведеться використовувати python3 і pip3 в Linux і macOS.

python -m pip install -U pip

2. Щоб перевірити, чи правильно встановлено Pip, виконайте наведену нижче команду. Він виведе номер версії. Якщо ви отримуєте будь-які помилки, дотримуйтесь нашого спеціального посібника щодо встановлення Pip у Windows, щоб вирішити проблеми, пов’язані з PATH.

pip --version

Встановіть бібліотеки OpenAI, GPT Index, PyPDF2 і Gradio

Після того, як ми налаштували Python і Pip, настав час інсталювати основні бібліотеки, які допоможуть нам навчити чат-бота штучного інтелекту за допомогою спеціальної бази знань. Ось кроки, які слід виконати.

1. Відкрийте термінал і виконайте наведену нижче команду, щоб інсталювати бібліотеку OpenAI. Ми будемо використовувати його як LLM (велику мовну модель) для навчання та створення чат-бота AI. І ми також імпортуємо структуру LangChain з OpenAI. Зауважте, що користувачам Linux і macOS, можливо, доведеться використовувати pip3 замість pip.

pip install openai

2. Далі давайте встановимо GPT Index, який також називається LlamaIndex. Це дозволяє LLM підключатися до зовнішніх даних, які є нашою базою знань.

pip install gpt_index

3. Після цього встановіть PyPDF2 для аналізу файлів PDF. Якщо ви хочете надати свої дані у форматі PDF, ця бібліотека допоможе програмі легко читати дані.

pip install PyPDF2

4. Нарешті встановіть бібліотеку Gradio. Це призначено для створення простого інтерфейсу користувача для взаємодії з навченим чат-ботом ШІ. Зараз ми завершили встановлення всіх необхідних бібліотек для навчання чат-бота ШІ.

pip install gradio

Завантажте редактор коду

Нарешті, нам потрібен редактор коду, щоб редагувати частину коду. У Windows я б рекомендував Notepad++ (Завантажити). Просто завантажте та встановіть програму за доданим посиланням. Ви також можете використовувати VS Code на будь-якій платформі, якщо вам зручно працювати з потужними IDE. Крім VS Code, ви можете встановити Sublime Text (Завантажити) на macOS і Linux.

Для ChromeOS ви можете використовувати чудову програму Caret (Завантажити), щоб відредагувати код. Ми майже завершили налаштування програмного середовища, і настав час отримати ключ OpenAI API.

Отримайте ключ OpenAI API безкоштовно

Тепер, щоб навчити та створити чат-бота штучного інтелекту на основі спеціальної бази знань, нам потрібно отримати ключ API від OpenAI. Ключ API дозволить вам використовувати модель OpenAI як LLM для вивчення ваших користувацьких даних і робити висновки. Наразі OpenAI пропонує новим користувачам безкоштовні ключі API з безкоштовним кредитом у розмірі 5 доларів США протягом перших трьох місяців. Якщо ви створили свій обліковий запис OpenAI раніше, у вас може бути безкоштовний кредит у розмірі 18 доларів США. Після того, як безкоштовний кредит буде вичерпано, вам доведеться заплатити за доступ до API. Але наразі він доступний для всіх користувачів безкоштовно.

1. Голова до platform.openai.com/signup і створити безкоштовний обліковий запис. Якщо у вас уже є обліковий запис OpenAI, просто увійдіть.

  8 найкращих платформ бізнес-аналітики для аналітики та візуалізації даних [2022]

2. Далі натисніть свій профіль у верхньому правому куті та виберіть «Переглянути ключі API» зі спадного меню.

3. Тут натисніть «Створити новий секретний ключ» і скопіюйте ключ API. Зауважте, що пізніше ви не зможете скопіювати або переглянути весь ключ API. Тому наполегливо рекомендуємо негайно скопіювати та вставити ключ API у файл Блокнота.

4. Крім того, не повідомляйте та не показуйте ключ API публічно. Це закритий ключ, призначений лише для доступу до вашого облікового запису. Ви також можете видалити ключі API та створити кілька закритих ключів (до п’яти).

Навчіться та створіть чат-бота зі штучним інтелектом за допомогою спеціальної бази знань

Тепер, коли ми налаштували програмне середовище та отримали ключ API від OpenAI, давайте навчимо чат-бота AI. Тут ми використаємо модель «text-davinci-003» замість останньої моделі «gpt-3.5-turbo», оскільки Davinci працює набагато краще для завершення тексту. Якщо ви хочете, ви можете змінити модель на Turbo, щоб зменшити вартість. Покінчивши з цим, переходимо до інструкцій.

Додайте свої документи, щоб навчити чат-бота AI

1. Спершу створіть нову папку під назвою docs у доступному місці, як-от робочий стіл. Ви також можете вибрати інше місце розташування відповідно до ваших уподобань. Однак збережіть назву папки docs.

2. Далі перемістіть документи, які ви хочете використовувати для навчання ШІ, у папку «документи». Ви можете додати кілька текстових або PDF-файлів (навіть відсканованих). Якщо у вас є велика таблиця в Excel, ви можете імпортувати її як файл CSV або PDF, а потім додати до папки «docs». Ви навіть можете додати файли бази даних SQL, як пояснюється в цьому Твіт Langchain AI. Я не пробував багато форматів файлів, крім згаданих, але ви можете додати та перевірити самостійно. До цієї статті я додаю одну зі своїх статей про NFT у форматі PDF.

Примітка. Якщо у вас великий документ, обробка даних займе більше часу, залежно від процесора та графічного процесора. Крім того, він швидко використає ваші безкоштовні токени OpenAI. Тож на початку почніть із невеликого документа (30–50 сторінок або файлів < 100 МБ), щоб зрозуміти процес.

Підготуйте код

1. Тепер запустіть Notepad++ (або редактор коду на ваш вибір) і вставте наведений нижче код у новий файл. Знову я отримав велику допомогу від armrrs на Google Colab і налаштували код, щоб зробити його сумісним з PDF-файлами, і створили поверх інтерфейс Gradio.

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. Ось так виглядає код у редакторі коду.

3. Далі натисніть «Файл» у верхньому меню та виберіть «Зберегти як…» зі спадного меню.

4. Після цього встановіть ім’я файлу app.py і змініть «Зберегти як тип» на «Усі типи» зі спадного меню. Потім збережіть файл у місці, де ви створили папку «docs» (у моєму випадку це робочий стіл). Ви можете змінити назву на свій смак, але переконайтеся, що .py додано.

5. Переконайтеся, що папка «docs» і «app.py» знаходяться в одному місці, як показано на знімку екрана нижче. Файл “app.py” буде за межами папки “docs”, а не всередині.

6. Знову поверніться до коду в Notepad++. Тут замініть свій ключ API на ключ, згенерований на веб-сайті OpenAI вище.

  22 найкращі безкоштовні програми для підроблених номерів телефонів для iphone

7. Нарешті натисніть «Ctrl + S», щоб зберегти код. Тепер ви готові до запуску коду.

Створіть ChatGPT AI Bot із спеціальною базою знань

1. Спочатку відкрийте термінал і виконайте наведену нижче команду, щоб перейти на робочий стіл. Саме там я зберіг папку «docs» і файл «app.py». Якщо ви зберегли обидва елементи в іншому місці, перейдіть до цього місця через термінал.

cd Desktop

2. Тепер виконайте наведену нижче команду. Користувачам Linux і macOS, можливо, доведеться використовувати python3.

python app.py

3. Тепер він почне аналізувати документ за допомогою моделі OpenAI LLM і почне індексувати інформацію. Залежно від розміру файлу та можливостей вашого комп’ютера обробка документа займе деякий час. Після цього на робочому столі буде створено файл «index.json». Якщо термінал не показує вихідних даних, не хвилюйтеся, можливо, він усе ще обробляє дані. Для вашої інформації, обробка документа розміром 30 МБ займає близько 10 секунд.

4. Після того, як LLM обробить дані, ви отримаєте кілька попереджень, які можна безпечно проігнорувати. Нарешті, внизу ви знайдете локальну URL-адресу. Скопіюйте це.

5. Тепер вставте скопійовану URL-адресу у веб-переглядач, і ось вона. Ваш спеціально навчений чат-бот на основі штучного інтелекту ChatGPT готовий. Для початку ви можете запитати чат-бота AI, про що йдеться в документі.

6. Ви можете поставити додаткові запитання, і бот ChatGPT відповість на основі даних, які ви надали ШІ. Отже, ось як ви можете створити спеціально навченого чат-бота зі штучним інтелектом із власним набором даних. Тепер ви можете навчитися та створити чат-бота зі штучним інтелектом на основі будь-якої інформації. Можливості безмежні.

7. Ви також можете скопіювати загальнодоступну URL-адресу та поділитися нею з друзями та родиною. Посилання буде активним протягом 72 годин, але вам також потрібно тримати комп’ютер увімкненим, оскільки екземпляр сервера запущено на вашому комп’ютері.

8. Щоб зупинити спеціально навченого чат-бота AI, натисніть «Ctrl + C» у вікні терміналу. Якщо це не працює, знову натисніть «Ctrl + C».

9. Щоб перезапустити сервер чат-бота штучного інтелекту, просто знову перейдіть на робочий стіл і виконайте наведену нижче команду. Майте на увазі, що локальна URL-адреса буде такою самою, але публічна URL-адреса змінюватиметься після кожного перезапуску сервера.

python app.py

10. Якщо ви хочете навчити чат-бота AI новим даним, видаліть файли в папці «docs» і додайте нові. Ви також можете додати кілька файлів, але подати інформацію про ту саму тему, інакше ви можете отримати непослідовну відповідь.

11. Тепер знову запустіть код у терміналі, і він створить новий файл «index.json». Тут старий файл «index.json» буде автоматично замінено.

python app.py

12. Щоб відстежувати свої токени, перейдіть до OpenAI в Інтернеті панель приладів і перевірте, скільки вільного кредиту залишилося.

13. Нарешті, вам не потрібно торкатися коду, якщо ви не хочете змінити ключ API або модель OpenAI для подальшого налаштування.

Створіть індивідуальний чат-бот AI, використовуючи власні дані

Ось як ви можете навчити чат-бота ШІ за допомогою спеціальної бази знань. Я використовував цей код для навчання ШІ на медичних книгах, статтях, таблицях даних і звітах зі старих архівів, і він працював бездоганно. Тож створюйте власного чат-бота штучного інтелекту за допомогою великої мовної моделі OpenAI та ChatGPY. У всякому разі, це все від нас. Якщо ви шукаєте найкращі альтернативи ChatGPT, перегляньте нашу статтю за посиланнями. А щоб використовувати ChatGPT на Apple Watch, дотримуйтесь нашого докладного посібника. Нарешті, якщо у вас виникли будь-які проблеми, повідомте нам про це в розділі коментарів нижче. Ми обов’язково постараємося вам допомогти.