Як підключити ChatGPT від OpenAI до чат-бота
У SendPulse ви можете підключити модель GPT від OpenAI до чат-бота, щоб надавати користувачам ще більш просунуті, автоматизовані відповіді та допомагати їм вирішувати різні додаткові завдання.
Розглянемо, як створити обліковий запис OpenAI, підключити його до вашого чат-бота, які бувають моделі і як можна натренувати відповіді бота під ваші завдання.
Ознайомлення з OpenAI
GPT (Generative Pre-trained Transformer) — це великомасштабна нейронна мережа від компанії OpenAI, яку можна використовувати для генерації тексту та коду.
Основні моделі можуть реалізовувати різні завдання: аналізувати тексти різної складності та видавати відповіді, оптимізувати текст під SEO або SMM завдання, категоризувати текст у таблиці, допомагати з мозковим штурмом, редагувати та перекладати тексти, працювати з кодом та математичними завданнями, підтримувати діалог на будь-які чи задані теми.
Більше про завдання та можливості використання GPT моделей читайте в нашому блозі: «GPT в чат-ботах: можливості для бізнесу та експертів у 2023 році».
Для налаштування GPT під ваші завдання через бот, потрібно вибрати модель і додати вказівки — наприклад, ви можете додати тон відповідей, обмежити список питань, надати додаткову інформацію або приклад, в якому вигляді бажаєте відповідати.
Створіть обліковий запис
Перейдіть на сторінку OpenAI та створіть обліковий запис. Для цього натисніть «Sign-up», введіть email адресу та натисніть «Continue» або продовжіть з обліковим записом у Google або Microsoft.
Якщо вводили адресу, введіть пароль у наступному вікні. Вам на пошту прийде лист підтвердження. Натисніть у листі на кнопку «Verify» і після переходу на сторінку, введіть дані про себе: ім'я та назву організації.
Введіть номер, на який прийде SMS підтвердження. Введіть код та увійдіть до облікового запису.
При введенні номера зверніть увагу на те, що OpenAI доступний не в усіх країнах. Ви можете ознайомитися зі списком країн, що підтримуються за посиланням «Supported countries and territories».
Скопіюйте API ключ
У верхньому правому куті натисніть на аватар і виберіть «Manage account».
Перейдіть у вкладку «API Keys», натисніть «Create new secret Key» і скопіюйте ключ.
Вам потрібно зберегти ключ на своєму пристрої, оскільки під час повторного входу ви не зможете скопіювати ключ. Якщо ви втратите його, вам потрібно буде згенерувати новий ключ.
Підключення інтеграції
Вставте ключ API
Виберіть бота і перейдіть до «Налаштування бота» (Bot settings) у вкладку «Інтеграції» (Integrations). Навпроти «OpenAI» натисніть «Підключити» (Enable).
Вставте скопійований ключ.
Виберіть модель
Виберіть, яку модель AI використовуватиме генерації відповідей.
Модель | Опис моделі | Рекомендована область використання |
Davinci | Найточніша і найдорожча модель, але повільніша, оскільки працює з великим обсягом даних. Може виконувати завдання всіх інших моделей, але вимагає менше вказівок у «Інструкція для робота».
Найчастіше використовується для завдань, де потрібно глибше аналізувати та розуміти контекст та генерувати складніший текст чи код. Також використовується для вирішення логічних завдань та пояснення причин. |
Складні завдання, аналіз причин та наслідків, написання висновків, пояснення та генерація коду |
Curie | Може аналізувати текст, відповідати на прямі запитання та надавати ключові слова.
Найчастіше використовують для Q&A і в чат-ботах. Наприклад, у полі «Інструкція для робота» ви можете ввести свої запитання та відповіді, які бот видаватиме. |
Переклад тексту, комплексна класифікація, тональність тексту, написання висновків |
Babbage | Добре вловлює очевидні закономірності в тексті, а потім використовує їх як зразок для створення тексту.
Може ранжувати інформацію та надавати категорії. Для творчих додатків може розуміти структуру достатньою мірою, щоб створювати прості сюжети та заголовки. |
Помірна класифікація, класифікація семантичного пошуку |
Ada | Найшвидша та найдешевша модель. Використовується частіше у випадках, коли від відповіді потрібно більше швидкості видачі та обсягу інформації, ніж її точності. | Парсинг тексту, проста класифікація, корекція адреси, вилучення ключових слів |
ChatGPT | Потужна модель gpt-3.5-turbo , навчена на розмовних даних та оптимізована для чатів. Здатна генерувати людиноподібні відповіді на запити, більш природні у порівнянні з іншими моделями. Може персоналізувати відповіді на запити з урахуванням теми та попередніх діалогів з користувачем. |
Генерація відповідей для месенджерів, використання як віртуальних помічників, впровадження систем запитань і відповідей. Створення інтерфейсу для програм із "живою" мовою спілкування. Репетиторство з різних предметів. Моделювання персонажів для відеоігор і багато іншого. |
ChatGPT (gpt-3.5-turbo-16k) | Такі ж можливості, як у моделі gpt-3.5-turbo , тільки враховує в 4 рази більшу кількість символів/токенів в контексті. |
|
GPT-4 | Остання та найдосконаліша модель сімейства ChatGPT, розроблена для полегшення багатоетапних розмов. Модель також корисна для одноетапних завдань без діалогу. Доступна тільки для тих користувачів, які отримали доступ до неї з OpenAI. | Генерація тексту та електронних листів, коду, переклад, моделювання персонажів для відеоігор, відповіді на запитання про набір документів, робота з інтерфейсом, репетиторство з різних предметів. |
Користувацька fine-tuned модель* | Ви можете навчити одну з базових моделей на своїх даних (fine-tuning) за допомогою інструментів, що надаються OpenAI, щоб створити власну модель. | Генерація тексту, коду, пошук інформації, синтаксичний аналіз, аналіз тональності та інші завдання машинного навчання: як звичайні, так і специфічні з урахуванням вимог вашого бізнесу. |
* Для налаштування користувача Fine-tuning доступні тільки моделі davinci
, curie
, ada
та babbage
. При підключенні до чат-бота SendPulse необхідно вказати унікальну назву створеної вами моделі в бібліотеці OpenAI (Fine-tuned model name); при цьому створена користувацька модель буде доступна тільки з вашим API ключем відповідного облікового запису.
Ви також можете задати як Fine-tuned — системні моделі OpenAI, які не є постійними. Повний список моделей доступний у документації сервісу.
Ви можете переглянути приклади використання моделі в розділі «Examples» та «OpenAI Cookbook», а також поекспериментувати в «Playground».
Додайте інструкцію для бота
Моделі GPT можуть виконувати різні завдання — від складного аналізу тексту до створення відповіді на необмежений список тем. Щоб обмежити область відповідей робота, надати тональність розмови, персоніфікувати вашого бота під певного персонажа чи людину, а також додати інформацію про свою компанію, потрібно створити вказівки для бота.
Створюючи підказку, пам'ятайте наступні рекомендації:
- Додайте максимальну кількість контексту та умов для відповіді у кожному сценарії. Перерахуйте всі передумови взаємодії з ботом: вкажіть, які користувачі та на якому етапі вирішення своїх завдань будуть звертатися, які подробиці необхідно врахувати у відповідях, а які теми уникати.
Давайте моделі завдання згенерувати кілька результатів, щоб мати можливість порівняти та вказати їй найбільш відповідний. - Дайте зрозуміти, чого ви хочете, за допомогою прикладів. Наприклад, якщо вам потрібно, щоб модель ранжувала список елементів в алфавітному порядку або класифікувала абзац за настроєм, перерахуйте приклади запитів і очікуваний формат результату або якого ефекту ви хочете досягти. Якщо вам потрібно, щоб бот на запитання відповідав належним чином — наведіть приклад запитання та відповіді.
- Надайте якісні та максимально точні дані. Перевірте свої приклади - модель зазвичай досить розумна, щоб упізнати основні орфографічні помилки, але вона також може припустити, що це зроблено навмисно, і це може вплинути на відповідь. Якщо вам потрібно, щоб модель відповідала певною мовою, вкажіть цю мову прямо. Також рекомендується використовувати слова замість цифр. Пам'ятайте, що AI розуміє всі вказівки буквально.
- Персоніфікуйте модель. Щоб модель могла увійти в образ певної людини чи персонажа, опишіть, чим вона займається, які якості має, в якому тоні або з яким лексиконом спілкуватиметься, а також інші аспекти життя віртуального помічника.
- Тестуйте отриманий результат та оновлюйте інструкцію. Після налаштування підказок обов'язково протестуйте отриманий результат, переглядайте діалоги з користувачами та за потреби коригуйте вказівки бота, додаючи або прибираючи деталі. Тренуйте модель, поки не досягнете бажаних результатів.
Читайте докладніше: розділ «Prompt design» та «Prompt Optimization». Також зверніть увагу, що OpenAI має правила модерації відповідей — читайте докладніше в розділах «Usage policies» та «Moderation».
Ви можете протестувати різні моделі під різні інструкції бота на сторінці Prompt Compare.
Ви також можете знайти натхнення для контекстних підказок у таких прикладах: 160 ChatGPT Prompts You Can’t Miss To Try Out In 2023 — або взяти участь у написанні підказок у репозиторії на GitHub: Awesome ChatGPT Prompts.
У полі «Інструкція для бота» (Bot instruction) додайте вказівки у вільній формі, дотримуючись рекомендацій.
Зверніть увагу, що у моделей є різні ліміти за кількістю символів, які ви можете ввести. Читайте докладніше в таблиці про ліміти.
AI аналізує текст всіма мовами та може відповідати мовою, яку ви вказали, але найкраще він взаємодіє з англійською. Якщо ви не вказуєте мову, за замовчування відповідатиме англійською.
Якщо виникнуть питання щодо знаходження кращого опису для інструкції бота або за можливими сценаріями реалізації, ви можете звернутися до відкритої спільноти OpenAI.
Додайте кількість токенів
Токен – частина слова, яка використовується для обробки природної мови. Для англійського тексту 1 токен це приблизно 4 символи або 0,75 слова. Для інших мов та більш точного розрахунку, ви можете скористатись калькулятором від OpenAI.
У полі «Максимальна кількість відповідних токенів» (Maximum number of tokens in response) вкажіть число з останнього стовпчика:
Модель | Максимальна кількість символів у полі «Інструкція для бота»* | Максимальна кількість токенів у відповіді підписнику* |
Сurie / Babbage /Ada / Fine-tuned | до 2048 | до 1024 |
Davinci / ChatGPT | до 4096 | до 2048 |
ChatGPT (gpt-3.5-turbo-16k) | до 16348 | до 8174 |
GPT-4 | до 8192 | до 4096 |
*При кожному запиті враховується кількість токенів з: поля «Інструкція для бота»; останніх повідомлень у діалозі з ботом; поточного запиту, який користувач введе боту; поточної відповіді, яку бот видасть користувачеві.
Якщо в полі «Інструкція для бота» ви вкажете максимально допустиму кількість токенів, то може статися, що сумарна кількість даних в токенах буде вище ліміту ОpenАІ. У результаті запит завершиться помилкою і ваш підписник не отримає відповідь.
В такому випадку ви можете передивитися помилку в вашому аккаунті SendPulse в правому верхньому куті у вигляді спливаючого тосту: OpenAI: This model's maximum context length is 4097 tokens, however you requested 4131 tokens (2083 in your prompt; 2048 for the completion). Please reduce your prompt; or completion length
. Щоб виправити її — вам потрібно буде зменшити кількість символів в полі «Інструкція для бота» або кількість токенів у відповіді.
При першій реєстрації OpenAI дає $18 доларів на 3 місяці. З цієї суми зніматиметься плата за використання токенів. Тарифи за токени різняться, залежно від моделі, що використовується. Наприклад, використання моделі Davinchi у звичайному середовищі коштує $0.1200 за тисячу токенів, а використання моделі Ada у тестовому середовищі – $0.0004.
Читайте докладніше «What are tokens and how to count them» та про тарифи в розділі «Pricing».
Визначте температуру
Оберіть показник температури від 0 до 2.
Температура — це параметр, який впливає на абстрактність відповідей. Наприклад, якщо ставити одне й те саме запитання, то вихідні дані будуть різні відповідно до обраної температури — абстрактні або більш точні. Вищі значення ближчі до 2, наприклад, 1,3, зроблять відповіді більш випадковими. Нижчі значення ближчі до 0, наприклад, 0.2, зроблять їх більш вичерпними, але однаковими за сенсом.
Натисніть «Зберегти» (Save) і перейти до тестування бота.
Щоб подивитися, скільки токенів у вас залишилося, перейдіть у ваш обліковий запис OpenAI у вкладку «Usage».
Щоб переглянути історію використання токенів, прокрутіть сторінку нижче до розділу «Daily usage breakdown (UTC)». Ви можете переглянути всю історію або відобразити результати за дату чи співробітника.
Особливості використання
При підключенні інтеграції з OpenAI у чат-боті відключається ланцюжок «Стандартна відповідь». Тому потрібно додатково подбати про те, щоб користувач знав, що бот може йому відповісти. Наприклад, додайте інформацію про правила спілкування з ботом у вітальному або тригерному ланцюжку, який додайте в меню.
При використанні OpenAI у чат-ботах зверніть увагу, що AI використовує внутрішню бібліотеку інформації – він обробляє запит клієнта та видає результат у діалозі з клієнтом.
AI не має довгої пам'яті: при обробці запиту враховуються лише три останні повідомлення від користувача. Рекомендуємо переглядати діалоги з клієнтами в чатах, щоб коригувати вказівки для робота.
AI не інтегрується з додатковими програмами та не обробляє дані клієнта в аудиторії робота. Для цих функцій додайте меню або створіть команди для запуску тригерних ланцюжків, де ви додасте блоки «Запит API», «User input» та «Дія».
Приклади використання
Розглянемо різні приклади, які можна застосовувати до бота. Ви можете переглянути більше прикладів на сторінці «Examples».
Q&A під бізнес
Наприклад, у вас бот для компанії і ви хочете навчити робота самостійно розвивати діалог і генерувати відповіді на питання по ваших товарах і роботі магазину.
Для першого прикладу використовувалася модель «Davinci» з кількістю токенів 2048. У поле «Інструкція для бота» додали інформацію про компанію — чим вона займається і контактні дані. Бот уже на основі отриманих даних зможе розвивати діалог.
Текст прикладу: You are a bot assistant to the "Paper and pencil" company. Our company sells stationery and office supplies. A lot of items are in stock, but it is better to clarify by phone: (856) 267-5442.Store address: 4472 Central Avenue, Newark. Working hours: 9:00 AM – 7 PM.
Use the following text to answer questions about product availability and price: "Let us check and get back to you."
Use the following text to answer questions not related to office supplies: "Sorry, I have no information about it."
Для другого прикладу зібрали базу запитань і відповідей, які часто ставляться, щоб зробити відповіді більш точковими і розповісти більше детальної інформації про послуги.
В другому прикладі використовувалася модель «Davinci» з кількістю токенів 700. У полі «Інструкція для бота» додали основні запитання та відповіді на них. Користувачеві не обов'язково запитувати точно такі ж питання, але AI знатиме про ваш бізнес більше, щоб відповідати природною мовою.
Текст прикладу: The bot analyzes and provides information only from the given Q&A list.
Question: What is a bio link page?
Answer: A bio link page is a one-page site that can help you promote your brand on social media. Create a SendPulse account and build a bio link page using the landing page builder. Read more: https://sendpulse.com/en/features/landing-page-builder
Question: What elements can be added to my bio link page?
Answer: Text, Cover, Gallery, Button, Subscription form, Payments. Read more: https://sendpulse.com/knowledge-base/landing-page/builder/create-landing-page#adding-elements
Q&A під енциклопедію
Наприклад, у вас бот має розважально-інформаційний характер. Йому не потрібно відповідати на специфічні питання, а просто видавати факти з історії чи природознавства, чи будь-якої іншої теми з Інтернету.
Для прикладу використовувалася модель «Davinci» з кількістю токенів 700. У полі «Інструкція для робота» додано інформацію тільки про ім'я бота, на яку тему та якою мовою бот відповідає. Без вказівки, що бот може відповідати, він буде відповідати про різні факти.
Текст прикладу: The bot's name is Marl, and it can provide answers to encyclopedic questions in English. The bot answers using 1 word.
Розв'язання життєвих питань
Наприклад, якщо у вас бот допомоги, користувач може описати свою ситуацію, а потім запитати поради, що йому робити в цьому випадку.
Для прикладу використовувалася модель «Davinci» з кількістю токенів 700. У полі «Інструкція для бота» додавалася інформація лише для життєво важливих питань; якщо певна ситуація трапилася, слід звернутися за наступною адресою.
Текст прикладу: The bot helps people cope with critical situations. It empathizes with people and replies with care. In especially critical cases, such as death, suicide, acute poisoning, etc., please call +380501010200.
Розв'язання задач
Наприклад, якщо у вас бот для допомоги школярам, користувач може додати своє завдання і вказати, що потрібно вирішити.
Для прикладу використовувалася модель «Davinci» з кількістю токенів 700. У полі «Інструкція для бота» додали обмеження не відповідати на питання, які не стосуються математичних завдань.
Текст прикладу: The bot provides answers only to math-related questions. In other cases, the bot reminds users that it only helps with math.
Оптимізація тексту
Наприклад, якщо у вас сервіс з послуг SMM або SEO, бот допоможе вибрати ключові слова або оптимізувати та виправити введений текст.
Для прикладу використовувалася модель «Ada» з кількістю токенів 1024. У полі «Інструкція для бота» додали інформацію, що потрібно буде оптимізувати текст і шукати ключові слова. Якщо користувач не запровадить команду, то бот нагадає, як з ним працювати.
Текст прикладу: This bot is an SEO expert. It knows how to find keywords and suggest related topics. The bot answers in English.
Розшифровка коду
Наприклад, якщо у вас сервіс з навчання програмування, бот допоможе розшифрувати шматки коду або помилки та розповісти, за що відповідає певний елемент або функція. Також ви можете природною мовою попросити згенерувати код.
Для прикладу використовувалася модель «Curie» з кількістю токенів 700. У полі «Інструкція для бота» додали інформацію, що боту потрібно буде розшифровувати код і давати пояснення частин коду. Також додали тональність боту, щоб він відповідав у саркастичній манері та дуже простими словами.
Текст прикладу: The bot explains Python code in a way that even a beginner will understand. It can also describe functions and create simple applications. If users ask about something non-code-related, the bot reminds them that it only helps with coding.
Генерація тексту
Наприклад, якщо у вас є креативне маркетингове агентство, ви можете запропонувати послугу з підбору тексту для рекламної кампанії або придумати назву марки і так далі.
Для прикладу використовувалася модель «Davinchi» з кількістю токенів 700. У полі «Інструкція для бота» додали інформацію, що він працює у маркетинговій фірмі та допомагає клієнтам складати рекламні слогани та писати плани.
Текст прикладу: The bot works for a marketing agency and helps clients write ad slogans and feature descriptions.
Оновлено: 31.08.2023
Зареєструватися через соцмережі
Увійти з Facebook Увійти з Google