Перейти к основному содержимому
Версия: Next

Подключение ИИ

Можно подключить редактор к ИИ напрямую через LLM-провайдер, если он имеет OpenAI совместимое API.

В этом режиме вы также можете использовать своего агента (или любое другое прокси), если он поддерживает OpenAI совместимое API.

Доступ к ИИ

Здесь вам потребуется получить доступ к какой-либо ИИ-модели (LLM). Например, вы можете:

  • поднять локальную LLM;
  • поднять у себя в контуре LLM-gateway (например, LiteLLM) с какой-либо моделью внутри;
  • воспользоваться услугами облачных LLM провайдеров.

Подключение сервиса

Нужно при конфигурации редактора также подключить сервис aiChat, через метод withFeatureServices, например:

// конфигурация сервиса
const aiChatClient: IAIChatClient = {
config: {
chatURL: 'https://example.com/nginx/proxy',
},
};
const container = document.getElementById('editor-container');
const documentOpenApi = await new EditorBuilder()
.withAutonomousMode()
// подключение сервиса
.withFeatureServices({ aiChat: () => aiChatClient })
.withLicenseToken('xxx.xxx.xxx')
.mount(container, 'http://localhost:9002/');

Интерфейс сервиса

В интерфейсе вы можете указать id требуемой ИИ-модели, которая доступна в вашем LLM провайдере, и задать некоторые ограничения для запросов.

Также вы можете добавить свои заголовки в запрос к LLM и модифицировать тело запроса.

Подробнее можно узнать здесь: IAIChatClient

Авторизация

Есть несколько вариантов реализации авторизации.

примечание

API ключ можно получить у вашего LLM провайдера.

Настроить прокси

подсказка

Используйте этот вариант авторизации в production. Это позволит вам добавить свою авторизацию для запросов, а также обезопасит доступ к LLM, скрыв API ключ от пользователя.

Редактор будет ходить в LLM через прокси. Где запрос будет обогащаться API ключем.

Например, схема взаимодействия может быть следующей:

  1. редактор отправляет запрос на ваш прокси-сервер с вашим токеном авторизации;
  2. прокси-сервер проверяет ваш токен авторизации;
  3. прокси-сервер отправляет запрос в LLM с API ключем в заголовке авторизации.
const aiChatClient: IAIChatClient = {
config: {
chatURL: 'https://example.com/nginx/proxy',
model: 'qwen3',
},
headers: () => ({
authorization: 'Bearer yourJwtToken',
}),
};

Указать API ключ

осторожно

Не используйте этот вариант. Он предназначен только для ознакомления и тестирования. Этот вариант небезопасен, так как раскрывается API ключ в заголовках запроса.

Редактор будет отправлять запросы напрямую в LLM, с API ключем в заголовках запроса.

const aiChatClient: IAIChatClient = {
config: {
chatURL: 'https://example.com/chat/completion',
model: 'qwen3',
apiKey: 'secret-key',
},
};