[Штучний інтелект · Інтеграція LLM · Автоматизація]
AI-асистент і контекстна автоматизація
AI-компоненти всередині платформи, які розуміють запити користувачів у контексті, тоді як детерміновані правила бекенда перевіряють критичні операції та забезпечують їхню безпеку.
01Огляд проєкту
Асистент дає змогу користувачам спілкуватися з платформою природною мовою. Він підключений до реального стану застосунку, тож відповіді враховують налаштування, сигнали та історію користувача, а не є загальним текстом.
Головна ідея — розподіл відповідальності: мовна модель працює з мовою та гнучкими запитами, а бекенд і детерміновані правила вирішують, що насправді відбудеться.
02Інженерна задача
LLM гнучкі, але їхня правильність не гарантована. У продукті, що зачіпає торгові налаштування та стан акаунта, модель ніколи не має бути єдиним бар’єром між запитом і дією.
- A
Отримувати потрібний контекст для кожного запиту зі стану застосунку.
- B
Перетворювати відповіді моделі на структуровані дані, які можна перевірити.
- C
Блокувати дії, що не пройшли перевірку, незалежно від формулювання запиту.
- D
Спостерігати за поведінкою AI в продакшені, щоб знаходити й виправляти типові збої.
03Архітектура рішення
Наведіть або натисніть на етап.
Запит користувача
Повідомлення природною мовою з Mini App або чату Telegram.
LLM → мова й контекст · Бекенд → стан і операції · Правила → ліміти й захист · Моніторинг → поведінка й діагностика
04Основні компоненти
- 01
Сервіс асистента
Інтеграція з LLM API, формування запитів і обробка відповідей.
- 02
Збирач контексту
Збирає для кожного запиту потрібний стан застосунку та пам’ять діалогу.
- 03
Перевірка відповідей
Розбирає структуровані відповіді та відхиляє все, що не відповідає очікуваній схемі.
- 04
Шар правил
Детерміновані перевірки, що захищають критичні параметри й операції.
- 05
Маршрутизатор дій
Зіставляє перевірені наміри з операціями бекенда.
- 06
AI-моніторинг
Логи й аналіз AI-процесів для виявлення неочікуваної поведінки.
05Технологічний стек
AI
- OpenAI API
- Structured outputs
- Context & memory
Бекенд
- Python
- Rules engine
- Application state
Експлуатація
- Logging
- Workflow analysis
06Інтерактивна демонстрація
Симуляція обробки запиту
ІлюстраціяІлюстративна симуляція. Відповіді задані заздалегідь — модель не викликається, production-промпти не показуються.
Оберіть запит
- 01Запит користувача
- 02Отримання контексту
- 03Обробка AI
- 04Структурна перевірка
- 05Дія бекенда
- 06Відповідь користувачу
Отриманий контекст
- —
Відповідь моделі · структура
—
Перевірка та дія
Діалог
07Інженерні рішення
- 01
Гібрид за задумом
AI інтерпретує, правила вирішують. Так асистент лишається корисним, але не може обійти бізнес-логіку.
- 02
Схеми на межі
Відповідь моделі вважається недовіреним входом і перевіряється так само, як відповідь будь-якого зовнішнього API.
- 03
Контекст відбирається, а не звалюється
Моделі передається лише релевантний стан — відповіді точніші, а вартість передбачувана.
- 04
Спостережуваний AI
AI-процеси логуються й розбираються так само, як будь-який інший production-компонент.
08Надійність і тестування
- Перевірка за схемою кожної структурованої відповіді моделі.
- Запасні відповіді, якщо модель не відповіла або повернула некоректні дані.
- Перевірки правил, що працюють незалежно від моделі.
- Розбір залогованих діалогів для пошуку типових збоїв.
09Приклад коду
from dataclasses import dataclass
ALLOWED_INTENTS = {"show_signals", "update_language", "explain_signal"}
SUPPORTED_LANGUAGES = {"en", "pl", "uk", "ru"}
@dataclass
class Intent:
name: str
params: dict
def guard(intent: Intent) -> Intent:
"""Model output is untrusted input. Validate before acting."""
if intent.name not in ALLOWED_INTENTS:
raise ValueError(f"intent '{intent.name}' is not permitted")
if intent.name == "update_language":
lang = intent.params.get("language")
if lang not in SUPPORTED_LANGUAGES:
raise ValueError(f"unsupported language: {lang!r}")
return intentІлюстрація Ілюстративний інженерний приклад — перевірка запропонованого моделлю наміру перед виконанням.
Вихідний код продукту закритий. Приклади показують інженерний підхід, а не внутрішню логіку. Більше — в Engineering Lab.
10Можливий розвиток
- Набори оціночних запитів, що проганяються після зміни промпту чи моделі.
- Аналітика за намірами, яка показує, де користувачам складно.
- Tool-calling для ширшого набору безпечних перевірених операцій.