Предисловие. Продолжаю публиковать свои наработки и мысли по работе с ИИ. На этот раз я решил что просто собирать информацию с сервисов или агентов генерировать ответ это интересно, но скучно. Надо что бы система могла делать сложные действия. Для выполнения сложного действия нужен программа или я как это назвал сценарий. Сценарий работает исходя и списка доступных сервисов который есть у него. Доступные сервисы предполагают не только получения информации но и действия . К примеру отправка письма или приведение в действие какого либо устройства с необходимый для работы параметрами. Генерация сценария это только первый этап работы по обработки сложных запросов. Но начнем с него. Дальше с полученным json кодом будет работать интерпретатор. Его я буду рассматривать в следующих статьях. Наверное. Но это не точно может мне будет лень продолжать. Так что начнем вот сама статья.
В современном мире автоматизации бизнес-процессов одной из ключевых проблем остается координация различных сервисов и инструментов для выполнения комплексных задач. Представьте систему, которая способна не только понимать ваши запросы на естественном языке, но и автоматически генерировать последовательности действий, объединяющие различные API и сервисы. Именно такую задачу решает ScenarioGenerator — интеллектуальный координатор рабочих процессов.
Как работает система
Архитектура решения
ScenarioGenerator построен на принципе декомпозиции задач. Когда пользователь формулирует запрос, система:
Анализирует доступные ресурсы из конфигурационного файла
resources.jsonСоздает интеллектуальный промт для языковой модели
Генерирует JSON-сценарий с последовательностью шагов
Валидирует результат и возвращает готовый план действий
# Пример конфигурации инструментов { "resources": [ { "name": "vessels_radius_search", "description": "Поиск судов в радиусе от указанных координат", "type": "http", "url": "http://127.0.0.1:12323/vessels/radius" }, { "name": "email_service", "description": "Сервис для работы с электронной почтой", "type": "http", "url": "http://127.0.0.1:12322/emails" } ] }
Практическое применение
Пример 1: Логистическая аналитика
Запрос: "Найти суда рядом с портом Владивосток и отправить уведомление по email" Сгенерированный сценарий: { "scenario": [ { "step": 1, "tool": "vessels_radius_search", "purpose": "Поиск судов в радиусе 50 км от порта Владивосток", "parameters": { "latitude": 43.133, "longitude": 131.900, "radius_km": 50 } }, { "step": 2, "tool": "email_service", "purpose": "Отправка отчета по найденным судам", "parameters": { "recipient": "logistics@company.com", "subject": "Отчет по судам в порту Владивосток" } } ] }
Пример 2: Бизнес-аналитика
Запрос: "Найти в базе документов информацию о поставщиках и сравнить с номенклатурой из 1С" Сгенерированный сценарий: { "scenario": [ { "step": 1, "tool": "chroma_vector_db", "purpose": "Семантический поиск документов о поставщиках", "parameters": { "query": "поставщики контракты договоры", "limit": 10 } }, { "step": 2, "tool": "1c_products", "purpose": "Получение номенклатуры товаров для анализа", "parameters": { "category": "all", "limit": 100 } } ] }
Технические особенности
Интеграция с LM Studio
Система использует локальную языковую модель через LM Studio API, что обеспечивает:
Конфиденциальность данных — все обработки происходят локально
Гибкость в выборе моделей
Контроль над качеством генерации через параметры temperature и max_tokens
response = requests.post( self.lm_studio_url, json={ "messages": [ {"role": "system", "content": "Ты создаешь JSON сценарии..."}, {"role": "user", "content": prompt} ], "temperature": 0.1, # Низкая температура для детерминированности "max_tokens": 2000 }, timeout=90 )
Обработка ошибок
Система включает многоуровневую обработку ошибок:
Проверка доступности инструментов
Валидация JSON-ответов
Обработка сетевых сбоев
Резервные сценарии при недоступности сервисов
Преимущества подхода
Для бизнеса
Сокращение времени на проектирование workflows
Унификация процессов взаимодействия с различными API
Масштабируемость — легко добавлять новые инструменты
Документирование процессов через автоматически генерируемые сценарии
Для разработчиков
Чистая архитектура с разделением ответственности
Простота расширения функциональности
Логирование и отладка сложных последовательностей
Переиспользование существующих сервисов
Перспективы развития
Текущая реализация открывает путь для множества улучшений:
Визуальный редактор сценариев
Система мониторинга выполнения workflows
Машинное обучение для оптимизации последовательностей действий
Интеграция с оркестраторами т
Система шаблонов для часто используемых сценариев
Заключение
ScenarioGenerator представляет собой мост между естественным языком и технической реализацией сложных процессов. Эта система не просто автоматизирует рутинные задачи — она создает новый уровень взаимодействия человека с цифровой инфраструктурой, где сложные технические последовательности становятся доступными через простые запросы на естественном языке.
В эпоху, когда количество инструментов и сервисов растет экспоненциально, способность эффективно координировать их работу становится ключевым конкурентным преимуществом. ScenarioGenerator предлагает элегантное решение этой проблемы, открывая новые возможности для автоматизации бизнес-процессов.
Продолжение наверное последует.
