AI-задачи и инструменты
metadata app.aiTasks + app.aiTools; ToolSessionRunner крутит AI↔tools синхронно или async через callback Gateway.
AI-задачи, AI Magic с откатом, vector search через pgvector, генерация Formula и работа с файлами.
metadata app.aiTasks + app.aiTools; ToolSessionRunner крутит AI↔tools синхронно или async через callback Gateway.
/AiMagic/execute даёт diff, applyChanges пишет AiCorrectionHistory, revert возвращает previousValues.
Тип vector (1–16000 dim, HNSW/IVFFlat, cosine/l2/inner); SelectBuilder: vectorSimilar/Nearest/WithinRadius/TextSearch.
EmbeddingHook → EmbeddingQueueItem → GenerateEmbedding Job; RetryFailedEmbeddings каждые 5 мин, max 3 попытки.
AiFileOperation: transcribe/translate/analyze/correct/extractPdf/extractDoc/summarize/tts; стейт-машина pending→processing→completed/failed.
/AiFormula/generate (admin): 5 режимов с инструментами check_formula_syntax, get_entity_metadata, get_formula_functions.
voice-recognition-helper: MediaStreamRecorder + Whisper transcription прямо в ai-menu полях.
Модуль BPM2B Ai Communicator — это слой бизнес-логики AI-операций для платформы BPM2B. Он отвечает за подготовку данных, оркестрацию AI-задач, выполнение инструментов, файловые операции, vector search и режим AI Magic с возможностью отката изменений. Сам модуль провайдеров не реализует — для связи с моделями используется bpm2bAiGateway или удалённый шлюз через HTTP.
app.aiTasks описывается метод (chat / toolSession / embedding / transcribe), inputTemplate, responseFormat и список инструментов; AiService.executeTask готовит контекст по сущности и запускает выполнение.app.aiTools, синхронный цикл AI ↔ tools (ToolSessionRunner), асинхронный режим через webhook от Gateway (POST /AiCommunicator/toolCallback/:token) — модель сама дёргает get_entity_metadata, get_formula_functions и т. п.POST /AiMagic/execute возвращает diff изменений; затем POST /AiMagic/applyChanges применяет и создаёт AiCorrectionHistory с previousValues; в любой момент POST /AiMagic/revert возвращает значения как было — поддержка linkMultiple и мультиязычных полей (Ru/Kz/En).vector (1–16000 dim, HNSW / IVFFlat / none, метрики cosine / l2 / inner); сущность EntityEmbedding хранит вектор + хеш текста; SelectBuilder понимает vectorSimilar, vectorNearest, vectorWithinRadius, vectorTextSearch, similarToEntity.EmbeddingHook на afterSave кладёт сущность в очередь EmbeddingQueueItem; ScheduledJob запускает GenerateEmbedding Job; RetryFailedEmbeddings каждые 5 минут перезапускает падения (max 3 попытки); конфигурация per entity через embeddingConfig.AiFileOperation с типами transcribe / translate / analyze / correct / extractPdf / extractDoc / summarize / tts; стейт-машина pending → processing → completed / failed; конфигурация в app.fileOperations.POST /AiFormula/generate (только админ) — 5 режимов (generate / explain / find / pattern / improve); внутри Tool Session с инструментами проверки синтаксиса и выдачи метаданных; полное описание языка Formula Script для AI хранится в app.aiFormulaDescription.AiJob для длительных операций (web_search / deep_research / batch); поля responseId и webhookEventId с индексами для матчинга колбэков от провайдера.fuzzyContains, fuzzyWordContains, fuzzyEquals, levenshtein — через расширения PostgreSQL pg_trgm и fuzzystrmatch.ai-magic, ai-menu (с голосовым вводом через MediaStreamRecorder + Whisper), vector; side panel ai-correction-history; формула-функции aiConnector\aiTask, aiTaskEntity, aiToolSession.Модуль предназначен для команд, встраивающих AI глубже, чем «один промпт в чате»: автозаполнение полей с ревертом, поиск по смыслу, безопасная генерация Formula-скриптов, обработка голоса и документов. Зависит от bpm2bApiLog ≥ 1.1.0 и bpm2bCore ≥ 2.1.0; опционально — bpm2bAiGateway (LocalAiClient).
Покажем работу системы на ваших данных за 30 минут. Расскажем, как окупится в вашей отрасли, и подберём конфигурацию под ваши процессы.