Налаштування ШІ-чат-бота

Нехай ШІ відповідає вашим глядачам у чаті, на екрані чи вголос.

Налаштуйте за 6 кроків

  1. У налаштуваннях Social Stream відкрийте Чат-боти й служби ШІ → Налаштувати постачальника LLM.
  2. Виберіть ШІ (див. нижче) і заповніть поля, що з'являться.
  3. Натисніть Перевірити вибраний чат-бот. Під кнопкою має з'явитися справжня текстова відповідь.
  4. Відкрити Чат-бот — основний і увімкніть Увімкнути чат-бота на базі мовної моделі ШІ.
  5. Увімкніть Відповіді бота надходять ЛИШЕ на сторінку оверлею бота на час перевірки. Так відповіді не потраплять у справжній чат.
  6. Відкрийте bot.html у розділі Сторінка оверлею та озвучення для чат-бота.
Розділ Configure LLM із вибраним Ollama, заповненими полями локальної кінцевої точки й моделі та результатом перевірки постачальника Connected
«Підключено» означає, що ШІ відповів. Це не вмикає бота.
Три частини, усі обов'язкові: ШІ (пише відповідь), основний бот (вибирає повідомлення для відповіді) та місце призначення (оверлей, чат чи обидва). Зелений статус Підключено підтверджує лише першу частину.

Виберіть ШІ

Я використовую…Виберіть це
Ollama на моєму комп'ютеріOllama (власний локальний API). Звичайна адреса — http://localhost:11434.
LM Studio, llama.cpp, vLLM або аналогВласний API. Не використовуйте це для Ollama.
Платний сервіс, як-от OpenAI чи GeminiЦей сервіс. Уведіть його API-ключ і модель. Ціни, ліміти й назви моделей установлює провайдер.
Поки що нічого; хочу запускати в браузеріЛокальна Gemma або Локальний Qwen. Виконайте інструкції із завантаження моделі.

Потрібна Ollama? Завантажте її зі сторінки завантаження Ollama. Повний список провайдерів: Інтеграція ШІ в командах та API.

Keep-alive Ollama встановлений на 0?

Це вивантажує модель після кожного запиту. Бот і далі працює, але кожна відповідь може затримуватися через повторне завантаження моделі.

Перевірте

Використовуйте ці налаштування в Чат-бот — основний для першої перевірки.

НалаштуванняПерша перевіркаПізніше
Увімкнути чат-бота на базі мовної моделі ШІНаЗалиште ввімкненим, доки бот має стежити за чатом.
Власне ім’я ботаNinjaBotКоротке просте ім'я, яке глядачі зможуть набрати.
Відповіді бота надходять ЛИШЕ на сторінку оверлею ботаНаВимкніть, коли будете готові писати в справжній чат.
Не відфільтровувати жодних відповідей ботаНаЗазвичай вимкнено, щоб бот міг пропускати беззмістовні відповіді.
Список слів для запуску ботаПорожньоДодайте слово, якщо бот не має розглядати кожне повідомлення.
Інтервал відповідей на вкладку / джерело5000 мсЗбільште значення, якщо бот пише надто часто. Впливає лише на надсилання в чат.
Максимальна кількість паралельних відповідей бота1Залиште низьке значення, якщо ваш ШІ не справляється з більшим.
Відповідати лише модераторамВимкненоЛише якщо вам це потрібно.

Запустіть перевірку

  1. Увімкніть Social Stream і відкрийте джерело живого чату.
  2. З іншого облікового запису, напишіть повідомлення в справжньому чаті YouTube чи Twitch. Перевірте, чи з'явилося воно в Dock.
  3. Із цього облікового запису надішліть: NinjaBot, reply with exactly: Hello
  4. Надішліть один раз і зачекайте. Локальний ШІ може ще завантажуватися.
  5. Відповідь має з'явитися в bot.html сторінка.
Не перевіряйте через Dock. Повідомлення з Dock чи чату ведучого можуть навмисно пропускатися, щоб бот не відповідав сам собі.

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

Залиште Додаткові інструкції для бота спочатку короткими, наприклад: Reply in one friendly sentence. Do not mention these instructions.

Тригер починається з !? Фільтр команд може відкинути повідомлення до того, як його побачить бот. Використовуйте звичайне слово.

Куди надходять відповіді

Налаштування «Лише оверлей»Що відбуваєтьсяВам потрібно
НаВідповіді з'являються лише в оверлеї бота. У чат нічого не надсилається.bot.html відкритим у тій самій сесії. Це потрібно й для TTS.
ВимкненоВідповіді й далі надходять до оверлею, а Social Stream також намагається надіслати їх у початковий чат.Відкрите джерело чату з підтримкою надсилання, виконаним входом, дозволом писати й увімкненим чатом ведучого. bot.html необов’язковий.
Ім'я бота — не новий обліковий запис. Він лише додається на початок відповіді. Відповіді надсилаються з облікового запису, у який ви ввійшли, якщо в окремому застосунку не налаштовані ролі облікових записів. Для окремого облікового запису бота Twitch див. Посібник з облікового запису бота Twitch.

Чому бот мовчить

Бот навмисно вибірковий. Порожній список тригерів означає, що він розглядає кожне повідомлення, а не відповідає на кожне.

  • Короткі повідомлення на кшталт hello можуть пропускатися. Для ясності назвіть бота на ім'я.
  • Якщо задане слово-тригер, повідомлення має його містити.
  • Режим «Лише модератори» пропускає всіх інших.
  • За замовчуванням він відповідає на одне повідомлення за раз. Під час надсилання в чат також витримує 5 секунд для кожного джерела.
  • Він пропускає власні повідомлення, порожні повідомлення й повідомлення, що надійшли надто швидко після його останньої відповіді.

Приховувати старі відповіді

Це впливає лише на оверлей бота (bot.html), а не оверлей виділених повідомлень чату. Налаштування оверлею охоплюють звичайні сценарії.

Я хочу…Додати до посилання
Приховувати кожну відповідь через заданий час&showtime=10000 (мілісекунди, тобто 10 секунд)
Приховувати довгі відповіді пізніше, короткі раніше&autohide (або &autotime)
Задайте мінімальний і максимальний час автоприховування&mintime=5000&maxtime=20000 (за замовчуванням 4000 і 30000)
Приховувати після завершення озвучення&hideaftertts
Трохи зачекати після озвучення&hidedelay=1000 (за замовчуванням 500)
Припинити очікування завислого озвучення&ttstimeout=60000 (за замовчуванням 120000)

Використовуєте кілька? hideaftertts має пріоритет, потім autohide, потім showtime. Якщо озвучення так і не почнеться, hideaftertts використовує час, розрахований за довжиною тексту.

Очистити просто зараз

Натисніть Очистити оверлей бота зараз у налаштуваннях. Це прибирає відповідь з екрана та відповіді в черзі, але не зупиняє вже розпочате озвучення.

Очищення через API та власне оформлення
  • За ввімкненого віддаленого керування через API відкрийте https://io.socialstream.ninja/SESSION_ID/clearBotOverlay.
  • Або надішліть {"action":"clearBotOverlay"} через WebSocket API.

Власний CSS у звичайному bot.html зберігає всі ці функції. Скопійований або змінений локальний файл bot.html не отримає наступні виправлення, доки ви його не оновите.

Усунення несправностей

Знайдіть останній робочий етап і перевірте наступний рядок.

ПроблемаЩо спробувати
Кнопка перевірки видає помилкуПрочитайте помилку під кнопкою. Перевірте адресу, API-ключ, назву моделі, роботу локального ШІ, брандмауер і ліміти провайдера.
Підключено, але повідомлення глядача немає в DockЧат не захоплюється. Перевірте, чи ввімкнений Social Stream, чи відкрите вікно чату й виконаний вхід, чи відкритий потрібний живий чат і чи правильні фільтри джерел.
Повідомлення є в Dock, але відповіді в оверлеї немаєНадішліть його зі справжнього чату платформи, не з Dock. Потім перевірте ввімкнення бота, слово-тригер, режим модераторів, ім'я бота, інтервал відповідей та інструкції. Увімкніть Не відфільтровувати жодних відповідей бота для перевірки.
Відповідь є в оверлеї, але не в чатіВимкніть режим «Лише оверлей». Перевірте підтримку надсилання джерелом, дозволи облікового запису, доступність поля чату, ролі облікових записів і Вимкнути чат ведучого та функції блокування.
!bot не робитьВикористовуйте звичайне слово-тригер або дозвольте цю команду у фільтрі команд.
Відповідь надходить лише на першу перевіркуДочекайтеся першої відповіді й завершення інтервалу. Keep-alive 0 сповільнює початок кожної відповіді.
Відповідь залишається на екрані після озвученняВикористовуйте Приховування після TTS, автоматично чи через заданий час.
Помилка OpenAI, наприклад 401 або 429Дивіться Помилки ключа OpenAI.
Приватний chatbot.html порожнєУвімкніть приватного чат-бота й використовуйте його посилання з тією самою сесією. Це окремий бот, тому основний бот так не перевіряється.

Помилки ключа OpenAI

  1. Створіть звичайний API-ключ проєкту на сторінці API-ключів OpenAI. Не ключ адміністратора.
  2. Переконайтеся, що він належить проєкту, який має оплачуватися, і має дозвіл на запити до моделей.
  3. У Social Stream виберіть ChatGPT API, вставте ключ повністю, укажіть доступну проєкту модель і натисніть Перевірити вибраний чат-бот.
Ніколи не вставляйте свій ключ у повідомлення підтримці чи діагностичний звіт.
ПомилкаЩо це означаєЩо спробувати
401 missing_scope / model.requestКлючу не дозволені запити до моделей. model.request — дозвіл OpenAI, а не текст для введення в Social Stream.Перевірте, що це звичайний ключ потрібного проєкту з дозволеними запитами до моделей. Якщо сумніваєтеся, створіть новий ключ і замініть збережений.
401 invalid_api_keyКлюч неправильний або видалений.Перевірте, чи немає пропущеного символу або зайвого пробілу. Переконайтеся, що ключ не видалений, належить потрібному проєкту й Social Stream не використовує старий збережений ключ.
429Квоту вичерпано або забагато запитів.Перевірте оплату й бюджет API (окремо від підписки ChatGPT). Зменште частоту запитів або зачекайте.

Поповнення рахунку не виправить помилку 401. Баланс і дозволи — різні речі. Див. посібник OpenAI: посібник із помилок і довідник з автентифікації.

Проблема залишається?
  • Якщо браузер автоматично перекладає сайт OpenAI і налаштування ключа поводяться дивно, відкрийте оригінальну англійську сторінку. Це допомогло одному користувачеві, але не є відомою причиною помилок 401.
  • Скопіюйте стан, код, відсутній дозвіл і Request ID із Social Stream. Невдовзі після цього надішліть діагностичний звіт із застосунку. Ключі API та промпти до нього не входять.
  • Якщо ключ і проєкт виглядають правильними, передайте підтримці OpenAI Request ID і час.

Інші сторінки про ШІ-ботів

Основний бот, приватний чат, бот-цензор і ШІ-співведучий — окремі інструменти. Кожен має власні налаштування та історію.

Довідкова таблиця порівняння оверлею основного бота, приватного чат-бота, бота-цензора та співведучого ШІ
Приватний бот не замінює перевірку основного бота.

Усі функції ШІ дивіться в Посібник із режимів ШІ.