Как использовать генеративный ИИ в проектах
Существует несколько способов интеграции вашего бота с генеративными моделями:
- метод
$gpt.createChatCompletion
; - тип ответа
llmRequest
в телефонном канале; - тег
AIAgent
; - интеграция через API с Jay Copilot;
- интеграция через API с Caila.
Метод $gpt.createChatCompletion
Этот метод является частью сервиса $gpt
и позволяет обращаться к моделям ChatGPT от OpenAI из сценария бота.
Он возвращает ответ модели на заданный запрос.
- ECMAScript 5
- ECMAScript 6
$gpt.createChatCompletion(messages, temperature, n, max_completion_tokens, model);
В среде ECMAScript 6 метод является асинхронным:
await $gpt.createChatCompletion(messages, temperature, n, max_completion_tokens, model);
Используйте этот метод, когда интеграция с Jay Copilot или Caila нецелесообразна или текущей модели $gpt.createChatCompletion
достаточно для решения задачи (простая классификация, генерация ответа).
Тип ответа llmRequest
Тип ответа llmRequest
позволяет использовать LLM в телефонном канале с минимальными паузами:
- Бот по предложениям получает текст от LLM и так же по предложениям синтезирует речь. Оба процесса проходят параллельно.
- Вы можете указать фразы, которые бот произнесет, чтобы заполнить паузу в начале генерации текста.
$response.replies = $response.replies || []
$response.replies.push({
type: "llmRequest",
provider: "CAILA_OPEN_AI",
// Модель для генерации текста
model: "gpt-4o",
// Название токена
tokenSecret: "MY_LLM_TOKEN",
// Фраза для заполнения паузы
fillersPhraseConfig: {"fillerPhrase": "Хороший вопрос!", "activationDelayMs": 1000},
// История диалога
messages: [{"role": "user","content": $request.query}]
});
Тег AIAgent
Тег AIAgent
позволяет создавать и настраивать AI-агентов.
Агенты используют LLM, чтобы гибко поддерживать диалог и обрабатывать любые запросы пользователей.
Каждый агент имеет свою роль и цель. Например, агент может быть переводчиком, который работает с несколькими языками:
state: Start
q!: $regex</start>
a: Чем могу помочь?
state: Translation
q!: * переведи *
# Агент, который будет переводить текст
AIAgent:
id = translator_agent
# LLM, которую использует агент
model = gpt-4o
# Роль в диалоге
role = Профессиональный переводчик
# Цель в диалоге
goal = Переведи текст на другой язык
# Инструкции для агента
instructions = Если нужно, уточни у пользователя целевой язык. Дай 3 лучших варианта перевода
# Агент перейдет в стейт /Start, если у пользователя больше нет вопросов
nextState = /Start
Интеграция с Jay Copilot
Jay Copilot — это ассистент, который помогает использовать генеративный искусственный интеллект в работе и повседневных задачах. C помощью Jay Copilot можно получить доступ к:
- текстовым генеративным моделям: GPT, YandexGPT, GigaChat и др.;
- моделями генерации изображений: DALL·E, Stable Diffusion, Flux и др.;
- распознаванию речи: AssemblyAI, Whisper;
- синтезу речи: ElevenLabs;
- готовым приложениям, которые используют модели для решения задач в различных областях.
Подробнее о работе с Jay Copilot читайте в пользовательской документации. У продукта также есть публичный API, который можно использовать для интеграции с вашим ботом.
Интеграция с Caila
Caila — платформа для создания и использования микросервисов, решающих различные ML-задачи, такие как:
- классификация и векторизация текста;
- распознавание именованных сущностей;
- доступ к генеративным моделям;
- синтез речи.
Подробнее о работе с Caila читайте в документации. У продукта также есть публичный API, который можно использовать для интеграции с вашим ботом.