Создание и применение ботов

Создание клиента для ChatGPT бота

Последнее обновление: 02.03.2023

ChatGTP представляет чат-бот с искусственным интеллектом от компании OpenAI, который может в диалоговом режиме отвечать на запросы. B OpenAI предоставляет API, который позволяет нам встроить взаимодействие с ChatGPT ботом в свое приложение. Рассмотрим простейший пример.

Прежде всего нам надо установить пакет openai:

pip install openai

Стоит учитывать, что API поддерживает версию Python 3.7+.

Для отправки запросов нам потребуется токен. Его можно сгенерировать в личном кабинете на сайте openai по адресу https://platform.openai.com/account/api-keys.

Подключение к chatgtp openai в python

После нажатия на кнопку "Create new secret key" отобразится окно с сгенерированным токеном, который надо скопировать и сохранить. Затем этот токен отобразится в списке ключей, и его затем можно в любой момент удалить.

Подключение к chatgtp openai в программе на python

Далее определим следующий код на языке Python:

import openai
# указываем ключ из личного кабинета openai
openai.api_key = "sk-95Ez2Z1rtgegrRTFFDSTVTdsdfsgdv3422kjhLghnh53QiT8F"
messages = []
while True:
    message = input("User: ")   # вводим сообщение
    if message == "quit": break
    
    messages.append({"role": "user", "content": message})
    chat = openai.ChatCompletion.create(model="gpt-3.5-turbo", messages = messages)
    reply = chat.choices[0].message.content
    print(f"ChatGPT: {reply}")
    messages.append({"role":"assistant", "content": reply})

Сначала импортируем нужный нам пакет

import openai

Далее устанавливаем токен, который будет использоваться для отправки запросов к ChatGPT:

openai.api_key = "sk-95Ez2Z1rtgegrRTFFDSTVTdsdfsgdv3422kjhLghnh53QiT8F"

Далее определяем список сообщений (по умолчанию пустой)

messages = []

В бесконечном цикле считываем сообщения, введенные пользователем

message = input("User: ") 

Чтобы пользователь мог выйти из диалога с чат-ботом, пусть, если пользователь ввел "quit", то завершаем диалог:

if message == "quit": break

После ввода добавляем введеное сообщение в список messages:

messages.append({"role": "user", "content": message})

Причем сообщение добавляется в виде словаря, где ключ "role" определяет, кто отправил сообщение. Для текущего пользователя в качестве роли устанавливаем "user". Другой элемент словаря - "content" собственно хранит текст сообщения, которое отправляется чат-боту.

Дальше выполняем запрос к ChatGPT:

chat = openai.ChatCompletion.create(model="gpt-3.5-turbo", messages = messages)

Для выполнения запроса в метод create() передается название модели и список сообщений.

После этого из переменной chat мы сможем получить ответ чат-бота.

reply = chat.choices[0].message.content

Далее выводим ответ от ChatGPT на консоль и добавляем его ответ в список messages:

messages.append({"role":"assistant", "content": reply})

В списке сообщений все ответы от ChatGPT сопоставляются с ролью "assistant".

Пример работы программы:

создание бота для ChatGPT на python
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850