Розмова з майбутнім: Як API Flowise Відкриває Двері до Персоналізованого Чат-Досвіду
Зі звичайним захопленням та невгамовною цікавістю, я, Ліла Гарт, завжди шукаю глибину в технологіях, людське обличчя в алгоритмах. Сьогодні я занурююсь у світ Flowise, платформи, яка перетворює чат-досвід у творчий інструмент зручності та персоналізації. Це як знайти нову, невисловлену мову. І ключ до цієї мови, як виявилося, в API – мостах, що з’єднують наші прагнення з машинами. Отож, заварюйте каву, давайте разом пірнемо у захоплюючий світ API Flowise.
Відкриття Всесвіту API:
Flowise пропонує низку API-кінцевих точок, які, як чарівні ключі, відкривають двері до інтеграції ваших улюблених чат-потоків у власні розробки або сторонні платформи. Це не просто функціональність, це можливість вдихнути життя у кожну взаємодію. Це як створювати власні світи в межах вже існуючих!
Замість пересічних, усталених чат-вікон, з API Flowise вивільняєте своїх внутрішніх архітекторів досвіду. Можете вбудувати ваші чат-потоки куди завгодно: у персоналізовані програми, інтерактивні сайти чи навіть у інструменти автоматизації. Все залежить від вашої уяви.
Звісно, в голові виникає логічне питання: чим API відрізняється від вбудованого API? Вбудований API – це як давати чат-бульбашки веб-сайтам. А ось API – це відкриття космосу, де потоки чату стають доступними звідусіль.
Уявіть: ви можете викликати API з власного коду. Додати автентифікацію користувачів, щоб ваші взаємодії стали особистими. Маєте змогу інтегрувати їх з автоматизованими процесами, такими як Zapier та Make. А також – щось неймовірно амбіційне: об’єднати їх з платформами для чат-потоків на кшталт BotPress та VoiceFlow.
Дві ключові фрази для розуміння:
- Перша: API Flowise не лише забезпечує функціональність, а й відкриває світ для вираження особистості вашого бренду.
- Друга: Можна створити взаємодії, які будуть інтуїтивними, захопливими та неймовірно особистими.
Крок до технічної глибини:
У цьому посібнику ми не будемо занурюватися в код, адже є безліч платформ для інтеграції. Натомість, ми зосередимось на використанні API-кінцевих точок та їх потенціалу. Для цього ми будемо використовувати Postman. Якщо ви любите експерименти так само як я, запрошую вас приєднатись до нашої подорожі з Postman.
Тестимо, досліджуємо, захоплюємось:
Ми почнемо з простого, а саме – виклику чат-потоку за допомогою кінцевої точки API. Далі ми будемо змінювати значення в потоках чату динамічно, використовуючи кінцеву точку API. Мета: персоналізація та адаптивність.
Потім ми зануримось у RAG-чат-потік. Ми навчимо його спілкуватись з власними даними. Звісно, використовуючи API. На завершення – ми навчимось запускати операції з цими даними, та завантажувати файли через API.
Простий потік, безмежні можливості:
Для початку: LLM-ланцюжок, який генерує назву компанії на основі представленого продукту. Задана змінна – “product”. Якщо в чаті ввести “balloons” (повітряні кульки), ми отримаємо відповідь.
А тепер – серцевина нашої історії: як викликати цей чат-потік ззовні Flowise?
- Крок перший: натискаємо на “API endpoint”.
- Крок другий: обираємо необхідний код.
- Крок третій: обираємо потрібну кінцеву точку API, заголовок та поля тіла.
Для Zapier чи Voiceflow достатньо перейти на вкладку “curl”, щоб отримати всю необхідну інформацію.
Скопіювавши URL, використовуємо Postman. Змінюємо get-запит на post.
У розділі “Headers” встановлюємо “Content-Type” як “application/json”. У розділі “Body” змінюємо тип на “raw”. Копіюємо значення з “Body” у відповідне поле.
Натискаємо “Send”. Отримуємо результати. Змінимо “balloons” на “Cakes”, надсилаємо запит. Отримуємо відповідь! Ми використали API.
Глибина та деталі…
У Flowise в розділі “Settings” та “View Messages” виникає магія. Кожен виклик API породжує нову розмову. А в перспективі – можливість використовувати той же ідентифікатор сесії, щоб додавати повідомлення та продовжувати розмову.
Особлива властивість: override config.
Перейдемо до вкладки “Show Input Config”, яка виглядає дещо лякаюче – але легка у користуванні.
Спочатку – всі вузли на полотні. Наразі їх три: модель чату, ланцюжок All-in, шаблон підказки. override config дозволяє переписувати властивості цих вузлів.
Уявіть: ви хочете змінити модель “OpenAI” динамічно. Наприклад, встановити замість “GPT 3.5 Turbo” – “GPT 4”.
Щоб переписати ці значення:
- Додаємо в payload властивість “override config”.
- Вказуємо властивості – у фігурних дужках: далі.
- Знаходимо назву властивості для “model name”.
- Розширюємо вузол “chatOpenAI” з можливими властивостями.
- Копіюємо властивість “model name”.
- Вставляємо в payload: “model name”: “GPT 4”
Запускаємо. Отримуємо відповідь. Як пересвідчитись, що буде використано GPT4?
За допомогою аналітичного інструменту LangSmith, де можна побачити яку модель використовували.
Переписуємо все!
Відтепер можна переписувати шаблон підказки. Щоб це зробити:
- Знаходимо властивість “template”.
- Вставляємо у Postman шаблон (“tell me a joke about product”).
- Змінюємо дані.
- Надсилаємо, отримуємо відповідь.
Також можна призначати конкретні值 для змінних, копіюючи властивість “prompt values”.
Як? Де? Що? Відповідь проста.
Щодо кількох шаблонів підказок на тому самому потоці – все легко.
- Отримуємо “node ID”, натиснувши на інформаційній кнопці на вузлі.
- Копіюємо ID.
- Видаляємо значення у стрічці та замінюємо його на фігурні дужки.
- У лапках вказуємо “node ID” та значення.
Потоки розмови:
При надсиланні повідомлень у потоках розмови ми отримуємо властивість “session ID”. Її можна використовувати для продовження існуючої розмови. Властивість “session ID” – як нитка, що пов’язує події розмови.
Змінюємо текст. Направляємо. Ви отримуємо того ж самого “session ID”.
В розділі “view messages” можна все прослідити.
Обмеження та рішення:
Сьогодні є одне обмеження з потоками розмови. Хоча й було зазначено ім’я “Leon”, модель може забути його. Але є рішення:
-
Властивість “history” – масив з повідомленнями.
-
Об’єкти з двома властивостями – “message” та “type”.
У цьому випадку історія – це контекст! Повідомлення в “history” не додаються до кінцевої розмови.
Щодо отримання історії, треба зробити:
- Ввести URL, вказати server.
- Вставити API V1 chat message.
- Вказати workflow ID.
- Вказати session ID та його значення.
- Подивитись результати.
Альтернативний, найкращий, спосіб:
Використовуємо пам’ять “Upstash Redis”. Поєднуємо з вузлом “Upstash Redis backed chat memory”. У Postman видаляємо session ID, змінюємо текст, надсилаємо. Ми все ще використовуємо “Upstash”. Копіюємо session ID.
У базі даних Redis зберігаються дані розмови! Великий плюс: не треба більше вказувати “history” – Flowise автоматично збирає інформацію.
RAG чат-потік та API:
За допомогою API можна робити багато цікавого.
- Створювати RAG чат-потік.
- Використовувати API для роботи з даними.
- Змінювати веб-скрапер на файл.
Пропонуємо зробити “upsert” – завантажуємо з файлу.
Етапи завантаження:
- Видаляємо старі значення.
- Вибираємо “Show API” та клацнути “curl”.
- У Postman – вставити API, змінити тип на “post”.
- В “Headers” додати value.
- В “Body” замість тексту – обрати файл.
- Надсилаємо, отримуємо відповідь.
- Використовуємо “predict” для перевірки.
Під час завантаження – все працює!
Безпека та обмеження:
Для захисту API є ключ. До нього можна дістатись в Flowise в розділі API keys. Або взяти з curl-команди.
В Postman:
- В “Headers” додаємо “Authorization”.
- Вставляємо bearer-токен.
Також є ліміти на кількість повідомлень. Їх можна налаштувати в розділі “Settings” –> “configuration” –> “write limiting”.
Змінюємо ліміт, надсилаємо запит – отримуємо повідомлення.
Завершення мандрівки:
Ще раз нагадую, що весь цей процес – чудовий приклад того, як API може розширити можливості вашої роботи. Залишайтеся допитливими, експериментуйте та насолоджуйтеся цим захоплюючим шляхом! І пам’ятайте, що я, Ліла Гарт, завжди з вами, щоб перетворити складне на захопливе.