Налаштування та використання чат-бота ШІ

Підключіть постачальника ШІ, увімкніть основного бота, безпечно перевірте його та усуньте причини відсутніх відповідей.

Розберіться з трьома окремими складовими

Робочий постачальник ШІ — лише перша складова бота живого чату. Постачальника, основного бота й місце надсилання відповідей потрібно налаштувати окремо.

СкладоваЩо це робитьЧого це не підтверджує
Постачальник ШІГенерує текст за допомогою Ollama, розміщеного API або іншого підтримуваного сервісу.Що живий чат захоплюється або відповіді можна публікувати.
Основний чат-ботВизначає, які захоплені повідомлення живого чату мають отримати відповідь ШІ.Що вихідна платформа або обліковий запис дозволяє надсилання відповідей.
Місце надсилання відповідейПублікує згенеровані відповіді в каналі виводу бота й також може надсилати їх через захоплене джерело чату.Те, що bot.html відкрито або створено окремий обліковий запис бота платформи.

Важливо: зелений Підключено результат лише підтверджує, що вибраний постачальник і модель відповіли на один тестовий запит.

1. Налаштуйте постачальника ШІ

  1. Відкрийте налаштування Social Stream і розгорніть Чат-боти та сервіси ШІ.
  2. Відкрити Налаштувати постачальника сервісу LLM.
  3. Виберіть постачальника, який відповідає сервісу, що ви фактично використовуєте.
  4. Введіть кінцеву точку, назву моделі, ключ API або інші поля, показані для цього постачальника.
  5. Виберіть Перевірити вибраний чат-бот і переконайтеся, що під кнопкою з’являється справжня текстова відповідь.
Розділ Configure LLM із вибраним Ollama, заповненими полями локальної кінцевої точки й моделі та результатом перевірки постачальника Connected
Це підтверджує, що постачальник і модель відповіли. Це не вмикає основного бота й не перевіряє захоплення живого чату та публікацію.
  • Ollama (власний локальний API): використовуйте це лише для Ollama. Звичайна локальна кінцева точка — http://localhost:11434.
  • Власний API: використовуйте це для серверів, сумісних з OpenAI, як-от llama.cpp, LM Studio, vLLM і подібних сервісів.
  • Розміщений постачальник: введіть ключ API та модель, потрібні цьому постачальнику. Вартість, квоти й назви моделей постачальника контролюються поза Social Stream Ninja.
  • Локальна модель у браузері: використовуйте відповідну опцію Local Gemma або Local Qwen і дотримуйтеся її інструкцій щодо ресурсів моделі.

Спочатку потрібно встановити Ollama? Скористайтеся офіційною сторінкою завантаження Ollama. Повний список постачальників дивіться в Інтеграція ШІ в командах та API.

Підтримання завантаженої моделі Ollama: 0 вивантажує модель після запиту. Це не вимикає бота, але кожна наступна відповідь може потребувати нового холодного запуску.

Налаштування OpenAI / ChatGPT API

Використовуйте стандартний ключ OpenAI API для запитів до моделей. Ключ OpenAI Admin API призначений для кінцевих точок адміністрування організації, а не звичайних викликів моделей. Ключ має належати проєкту, з якого ви плануєте оплачувати запити, а його фактичні дозволи мають дозволяти запити до моделей.

  1. Створіть або перевірте ключ на Сторінка ключів API OpenAI Platform. Ніколи не вставляйте ключ у повідомлення підтримці або діагностичний звіт.
  2. У Social Stream виберіть ChatGPT API, вставте повний ключ, введіть модель, доступну цьому проєкту, і виберіть Перевірити вибраний чат-бот.
  3. Якщо перевірка повідомляє Status: 401, Code: missing_scope, і Missing scope: model.request, OpenAI відхилив облікові дані, оскільки їхні фактичні права не включають запити до моделей. model.request — дозвіл, названий сервером, а не налаштування, яке слід додати до запиту або назви моделі.
  4. Переконайтеся, що це стандартний ключ API проєкту, що вибрано потрібний проєкт і що ключ необмежений або явно має дозвіл на запити до моделей. Якщо не впевнені, створіть новий стандартний ключ у правильному проєкті та замініть збережений ключ у Social Stream.
  5. Якщо на OpenAI Platform активний автоматичний переклад браузера, а елементи керування дозволами або підписи поводяться неочікувано, перейдіть на оригінальну англійську сторінку перед перевіркою й збереженням налаштувань ключа. Це допомогло в одному повідомленому випадку, але не є задокументованою універсальною причиною помилок OpenAI 401.

Кошти й дозволи — окремі речі: додавання коштів API не надає відсутньої області дозволів ключа. OpenAI документує недійсні облікові дані й дозволи кінцевих точок як помилки 401, тоді як вичерпана квота зазвичай є помилкою 429. Дивіться матеріали OpenAI: Посібник із помилок API і довідник з автентифікації.

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

2. Увімкніть і налаштуйте основного бота

Відкрити Чат-бот — основний. Це окремо від налаштування постачальника та приватного chatbot.html інтерфейсом.

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

Застереження щодо тригера: якщо тригер починається з !, загальне налаштування фільтра команд може відкинути це повідомлення до того, як воно потрапить до бота ШІ.

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

3. Виконайте безпечну наскрізну перевірку

  1. Увімкніть Social Stream і переконайтеся, що живе джерело відкрите.
  2. Надішліть звичайне повідомлення з другого облікового запису глядача безпосередньо в чаті вихідної платформи, наприклад YouTube або Twitch, і переконайтеся, що воно з’явилося в доку Social Stream. Для першої перевірки не використовуйте повідомлення, введене в доку або засобах чату ведучого; віддзеркалені повідомлення бота чи ведучого можуть пропускатися, щоб запобігти циклам відповідей.
  3. Переконайтеся, що перевірка постачальника показує Підключено.
  4. Використовуйте наведені вище налаштування основного бота для першої перевірки, включно з режимом лише оверлею.
  5. Відкрийте bot.html посилання, показане в Сторінка оверлею та озвучення для чат-бота. Використовуйте згенероване посилання, щоб сесія збігалася.
  6. З облікового запису глядача надішліть: NinjaBot, reply with exactly: Hello.
  7. Надішліть тест один раз і дочекайтеся відповіді. Локальна модель ще може завантажуватися, а наступні повідомлення можуть пропускатися, поки одна відповідь уже обробляється.

Навіщо другий обліковий запис? Так перевірка краще відтворює реального глядача та не плутає обліковий запис для вихідних відповідей з обліковим записом, що надсилає тест.

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

4. З’ясуйте, коли мовчання є нормальним

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

  • Коротке привітання, наприклад hello може ігноруватися, якщо модель вважає, що відповідь не додасть користі.
  • Пряме звернення до власного імені бота робить намір зрозумілішим.
  • Налаштований тригер має збігатися з вхідним повідомленням.
  • Режим лише для модераторів ігнорує повідомлення, не позначені як повідомлення модераторів.
  • Коли ввімкнено надсилання відповідей на платформу, типова затримка становить п’ять секунд на джерело. Типове обмеження паралельності — одна відповідь у кожному режимі.
  • Повідомлення, визначені як вивід бота, віддзеркалення, порожні або надто схожі на попередню відповідь, можуть ігноруватися.

5. Виберіть, куди надходять відповіді

РежимРезультатВимоги
Лише оверлей: увімкненоВідповіді надходять до каналу виводу бота й не надсилаються назад у чат платформи.Відкрити bot.html з тією самою сесією, щоб побачити або почути їх. Для озвучення ця сторінка також потрібна.
Лише оверлей: вимкненоВідповіді й далі надходять до каналу виводу бота, а Social Stream також намагається публікувати їх через початкове захоплене джерело.Режим джерела має підтримувати надсилання, обліковий запис має бути авторизований і мати дозвіл на публікацію, чат ведучого не має бути вимкнений, а джерело має залишатися відкритим. bot.html залишається необов’язковою, якщо вам не потрібен оверлей або озвучення.

Власне ім’я бота є префіксом повідомлення; воно не створює нового облікового запису платформи. Якщо не налаштовано маршрутизацію за ролями облікових записів окремого застосунку, відповіді публікуються через обліковий запис захопленого джерела.

Користувачі окремого застосунку, яким потрібне окреме ім’я Twitch, можуть скористатися Посібник з облікового запису бота Twitch.

6. Очищуйте й автоматично приховуйте відповіді бота

Ці засоби керування впливають на сторінку основного чат-бота, bot.html. Вони не очищують основний оверлей вибраних повідомлень.

ВаріантЗначенняПриклад
showtimeВикористовує один фіксований час показу в мілісекундах.&showtime=10000 приховується через 10 секунд.
autohideОцінює час показу за кількістю слів у відповіді. autotime також приймається.&autohide
mintime / maxtimeЗадає мінімальний і максимальний час показу за довжиною. Типові значення — 4 000 і 30 000 мілісекунд.&autohide&mintime=5000&maxtime=20000
hideafterttsЗалишає відповідь видимою до завершення озвучення, потім приховує її. Якщо відтворення не почнеться, використовується запасний розрахунок за довжиною.&hideaftertts
hidedelayДодає затримку після завершення озвучення. Типово 500 мілісекунд.&hideaftertts&hidedelay=1000
ttstimeoutЗахисний тайм-аут, якщо озвучення залишається активним безкінечно. Типово 120 000 мілісекунд.&hideaftertts&ttstimeout=60000

Якщо ввімкнено кілька режимів, hideaftertts має пріоритет, після нього — autohide, потім showtime. Згенеровані налаштування оверлею бота містять поширені параметри.

Очистити вручну

  • У налаштуваннях Social Stream виберіть Очистити оверлей бота зараз.
  • Увімкнувши Remote API Control, відкрийте https://io.socialstream.ninja/SESSION_ID/clearBotOverlay.
  • Через WebSocket API надішліть {"action":"clearBotOverlay"}.

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

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

Шукайте несправність за останнім робочим етапом

Що ви бачитеІмовірна причинаЩо перевірити
Перевірка постачальника не проходитьНалаштування постачальникаКінцева точка, ключ API, назва моделі, стан локального сервісу, CORS/брандмауер, квота постачальника й точна помилка під кнопкою перевірки.
401 missing_scope / model.requestДозволи ключа OpenAIВикористовуйте стандартний ключ потрібного проєкту, а не ключ Admin; перевірте дозвіл на запити до моделей; замініть старий збережений ключ; і повторіть спробу з оригінальної англійської сторінки OpenAI Platform, якщо автоматичний переклад зробив елементи керування ненадійними. Кошти не додають цього дозволу.
401 invalid_api_key або неправильний ключ APIОблікові дані OpenAIПеревірте, чи немає пропущеного символу або пробілу, чи ключ не видалено й не деактивовано, чи вибрано потрібну організацію/проєкт і чи Social Stream не використовує старий збережений ключ.
429 помилка квоти або обмеження частотиОплата або обмеження постачальникаПеревірте оплату API та бюджет проєкту окремо від підписок ChatGPT, а потім зменште частоту запитів або зачекайте, якщо постачальник повідомляє про тимчасове обмеження частоти.
Підключено, але повідомлення глядача відсутнє в докуЗахоплення чатуСтан увімкнення Social Stream, вікно джерела, вхід на платформу, налаштування дозволу/фільтрації джерела та чи відкрито правильний живий чат.
Повідомлення надходить у док, але відповідь не надходить до оверлею ботаРішення основного ботаПереконайтеся, що повідомлення надійшло безпосередньо з вихідного чату, а потім перевірте перемикач основного бота, збіг тригера, режим лише для модераторів, власне ім’я бота, обмеження зайнятості/затримки, додаткові інструкції та тимчасовий режим нефільтрованих відповідей.
Відповідь надходить в оверлей, але не в чат платформиМаршрутизація відповідей на платформуРежим лише оверлею, підтримка запису платформою/джерелом, авторизація облікового запису, доступність поля чату, маршрутизація за ролями облікових записів і налаштування Disable host chat.
Відповідь залишається видимою після озвученняЧасові параметри оверлею ботаУвімкніть Hide after TTS, автоматичне приховування за довжиною або фіксований час показу в параметрах оверлею бота. Використовуйте clearBotOverlay для ручного очищення через API.
!bot не робитьФільтрація командВикористовуйте звичайне слово як тригер або дозвольте цю команду в загальному фільтрі команд.
Обробляється лише перша перевіркаЧасові параметриДочекайтеся активного запиту, дотримуйтеся затримки й пам’ятайте, що keep-alive 0 може додавати холодний запуск до кожного запиту.
Приватний chatbot.html порожнєОкремий приватний ботУвімкніть приватний чат-бот і використовуйте згенероване посилання з тією самою сесією. Це не перевіряє основного бота живого чату.

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

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

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

Ширший набір функцій ШІ описано в Посібник із режимів ШІ.