Как обучить ИИ-чат-бота с пользовательской базой знаний с помощью ChatGPT API

В нашей предыдущей статье мы продемонстрировали, как создать чат-бота с искусственным интеллектом с помощью ChatGPT API и назначить роль для его персонализации. Но что, если вы хотите обучить ИИ на своих собственных данных? Например, у вас может быть книга, финансовые данные или большой набор баз данных, и вы хотите с легкостью выполнять в них поиск. В этой статье мы представляем вам простое руководство по обучению чат-бота с искусственным интеллектом с помощью пользовательской базы знаний с помощью LangChain и ChatGPT API. Мы развертываем LangChain, GPT Index и другие мощные библиотеки для обучения чат-бота AI с использованием большой языковой модели OpenAI (LLM). Итак, на этой ноте давайте посмотрим, как обучить и создать чат-бота с искусственным интеллектом, используя ваш собственный набор данных.

Обучите чат-бота с искусственным интеллектом с помощью пользовательской базы знаний с использованием ChatGPT API, LangChain и индекса GPT (2023 г.)

В этой статье мы более подробно объяснили шаги по обучению чат-бота с вашими собственными данными. От настройки инструментов и программного обеспечения до обучения модели ИИ мы включили все инструкции на простом для понимания языке. Настоятельно рекомендуется следовать инструкциям сверху вниз, не пропуская ни одной части.

Примечательные моменты перед обучением ИИ с вашими собственными данными

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

2. Руководство предназначено для обычных пользователей, а инструкции объясняются простым языком. Таким образом, даже если вы имеете поверхностное представление о компьютерах и не умеете программировать, вы можете легко обучить и создать чат-бота для вопросов и ответов за несколько минут. Если бы вы следили за нашей предыдущей статьей о ботах ChatGPT, вам было бы еще проще понять процесс.

3. Поскольку мы собираемся обучать чат-бота с искусственным интеллектом на основе собственных данных, рекомендуется использовать мощный компьютер с хорошим процессором и графическим процессором. Тем не менее, вы можете использовать любой слабый компьютер для тестирования, и он будет работать без проблем. Я использовал 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 Terminal в Windows, но вы также можете использовать командную строку. Оказавшись здесь, запустите приведенную ниже команду, и она выведет версию Python. В Linux и macOS вам, возможно, придется использовать python3 –version вместо python –version.

python --version

Обновить Пип

Когда вы устанавливаете Python, Pip одновременно устанавливается в вашей системе. Итак, давайте обновим его до последней версии. Для тех, кто не знает, Pip — это менеджер пакетов для Python. По сути, он позволяет вам устанавливать тысячи библиотек Python из терминала. С помощью Pip мы можем установить библиотеки OpenAI, gpt_index, gradio и PyPDF2. Вот шаги, которые необходимо выполнить.

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, пришло время установить необходимые библиотеки, которые помогут нам обучить чат-бота AI с пользовательской базой знаний. Вот шаги, которые необходимо выполнить.

1. Откройте терминал и выполните приведенную ниже команду, чтобы установить библиотеку OpenAI. Мы будем использовать его как LLM (большую языковую модель) для обучения и создания чат-бота с искусственным интеллектом. И мы также импортируем фреймворк 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. Это предназначено для создания простого пользовательского интерфейса для взаимодействия с обученным чат-ботом AI. Мы закончили установку всех необходимых библиотек для обучения чат-бота с искусственным интеллектом.

pip install gradio

Скачать редактор кода

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

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

Получите ключ API OpenAI бесплатно

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

1. Отправляйтесь в платформа.openai.com/signup и создать бесплатную учетную запись. Если у вас уже есть учетная запись OpenAI, просто войдите в систему.

2. Затем нажмите на свой профиль в правом верхнем углу и выберите «Просмотреть ключи API» в раскрывающемся меню.

3. Здесь нажмите «Создать новый секретный ключ» и скопируйте ключ API. Обратите внимание, что позже вы не сможете скопировать или просмотреть весь ключ API. Поэтому настоятельно рекомендуется немедленно скопировать и вставить ключ API в файл Блокнота.

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

Обучите и создайте ИИ-чат-бота с пользовательской базой знаний

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

Добавьте свои документы, чтобы обучить чат-бота с искусственным интеллектом

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

2. Затем переместите документы, которые вы хотите использовать для обучения ИИ, в папку «docs». Вы можете добавить несколько текстовых или PDF-файлов (даже отсканированных). Если у вас есть большая таблица в Excel, вы можете импортировать ее в виде файла CSV или PDF, а затем добавить в папку «docs». Вы даже можете добавить файлы базы данных SQL, как описано в этом Лэнгчейн 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 выше.

7. Наконец, нажмите «Ctrl + S», чтобы сохранить код. Теперь вы готовы запустить код.

Создайте бот ChatGPT AI с пользовательской базой знаний

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. Чтобы перезапустить сервер чат-бота AI, просто снова перейдите на рабочий стол и выполните приведенную ниже команду. Имейте в виду, что локальный URL-адрес останется прежним, но общедоступный URL-адрес будет меняться после каждого перезапуска сервера.

python app.py

10. Если вы хотите обучить чат-бота ИИ на новых данных, удалите файлы в папке «docs» и добавьте новые. Вы также можете добавить несколько файлов, но подавать информацию по одному и тому же вопросу, иначе вы можете получить бессвязный ответ.

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

python app.py

12. Чтобы отслеживать свои токены, перейдите на онлайн-страницу OpenAI. панель приборов и проверьте, сколько свободного кредита осталось.

13. Наконец, вам не нужно трогать код, если вы не хотите изменить ключ API или модель OpenAI для дальнейшей настройки.

Создайте собственного чат-бота с искусственным интеллектом, используя собственные данные

Вот как вы можете обучить чат-бота ИИ с помощью пользовательской базы знаний. Я использовал этот код для обучения ИИ на медицинских книгах, статьях, таблицах данных и отчетах из старых архивов, и он работал безупречно. Итак, создайте своего собственного чат-бота с искусственным интеллектом, используя модель большого языка OpenAI и ChatGPY. Впрочем, это все от нас. Если вы ищете лучшие альтернативы ChatGPT, перейдите к нашей связанной статье. А чтобы использовать ChatGPT на Apple Watch, следуйте нашему подробному руководству. Наконец, если вы столкнулись с какими-либо проблемами, сообщите нам об этом в разделе комментариев ниже. Мы обязательно постараемся вам помочь.