Документация / Языковые модели
Языковые модели
Для администратораПри подключении и при смене поставщика
Платформа не привязана к одной языковой модели. Автоматизация просит модель нужной силы, а какая именно и через кого ответит, решаете вы настройкой. Поэтому сменить поставщика можно, не трогая ни одной автоматизации.
Термины этой страницы. Класс модели - это то, что просит автоматизация, например сильная или легкая модель. Развертывание - это конкретная модель у конкретного поставщика, на которую класс отображается. Токен - это единица счета текста, примерно два-три знака кириллицы. В токенах считается и длина запроса, и длина ответа, и расход.
Четыре класса моделей
Автоматизации написаны в терминах классов, а не имен моделей. Классов ровно четыре, список закрыт справочником платформы, и автоматизация с неизвестным классом не проходит проверку.
| Класс | Для чего | Типичный пример работы |
|---|---|---|
| Сильная модель | Сложное рассуждение и длинные документы | Проект решения по заявке, разбор договора |
| Обычная модель | Генерация общего назначения | Описание товара, ответ сотруднику, черновик письма |
| Легкая модель | Короткие быстрые ответы | Подсказка в поиске, отнесение к категории |
| Модель с картинками | Вызовы, где на вход идет изображение | Фотография товара, скан документа |
Что гарантирует класс
Класс - это не пожелание, а обещание платформы. Развертывание, которое обещание не покрывает, в класс назначить нельзя, и проверка при старте такую конфигурацию отклонит.
| Класс | Длина контекста, токенов | Вызов действий | Ответ полями | Картинки |
|---|---|---|---|---|
| Сильная модель | 32 768 | Да | Да | Нет |
| Обычная модель | 8 192 | Нет | Да | Нет |
| Легкая модель | 4 096 | Нет | Нет | Нет |
| Модель с картинками | 8 192 | Нет | Нет | Да |
Практическое следствие простое. Шаг, которому нужен ответ строгими полями, не соберется на легкой модели, а шаг с вызовом действий подключения требует сильной. Проверка скажет об этом при сборке автоматизации, а не при первом запуске.
Поставщики и порядок
У каждого класса свой список развертываний в порядке приоритета. Платформа идет по нему сверху вниз.
Если поставщик отвечает отказами, платформа временно обходит его и считает через следующего, а на экране у такого развертывания появляется состояние «на паузе после отказов». Пауза снимается сама, когда поставщик снова начинает отвечать. Один класс может быть назначен на одно и то же развертывание вместе с другими классами, и это нормально для небольшой платформы.
Каталог моделей у каждой компании свой и в поставку платформы не входит. В базовом описателе его нет вовсе, он задается вашим слоем. Адреса поставщиков, к которым платформе разрешено обращаться, перечисляются там же. В промышленном и закрытом профилях адрес, не названный в описателе, недоступен сервису по построению, а не по договоренности; показной профиль выхода в интернет не ограничивает, потому что он для оценки.
Куда уходит запрос
Столбец «Маршрут данных» на экране «Модели и маршрутизация» показывает, куда уходит текст запроса. У языковых моделей российских сервисов маршрут данных внешний, то есть текст запроса уходит за пределы вашей сети к сервису языковых моделей.
Что именно уходит наружу при внешнем маршруте, зависит от правил автоматизации. Персональные данные заменяются метками до обращения к модели, и подробно это разобрано на странице персональных данных. Куда данные каждого класса вообще разрешено передавать, задается маршрутами данных в правилах автоматизации, и эта проверка работает во время работы автоматизации, а не только при сборке.
Потолок одного ответа
Потолок ограничивает длину одного ответа в токенах. Он защищает не от расхода, а от единичного выброса. От расхода защищают пределы, а потолок обрывает один слишком длинный ответ.
| Кто обращается | Потолок, токенов | Сколько это примерно |
|---|---|---|
| Сотрудник | 4 096 | Около трех страниц кириллицы |
| Служебный вызов платформы | 16 384 | Около двенадцати страниц |
| Остальные каналы | 8 192 | Около шести страниц |
Числа взяты из базового описателя и переопределяются вашим слоем. Слишком низкий потолок обрывает не выбросы, а обычную работу, поэтому поднимать его имеет смысл от замера средней длины ответа, а не наугад.
Пределы расхода
Расход считается в токенах и сводится по областям. Область - это либо вся платформа, либо служебные вызовы платформы, либо один вход в конкретную автоматизацию.
- Предел не задан означает, что расход этой области не ограничен. Это не то же самое, что «нет данных». Второе значит, что платформа сейчас не смогла получить справку о пределе.
- Окно - это календарные сутки по вашему часовому поясу, счетчик обнуляется в полночь.
- Исчерпанный предел останавливает обращения этой области, а не всей платформы. Остальные области продолжают работать.
Пределы задаются конфигурацией и описаниями автоматизаций, с экрана они не меняются. Экран показывает израсходованное, предел и остаток.
Отказы и что они значат
Перечень отказов модельной поверхности закрыт. Ниже те, что встречаются в работе, и что за каждым стоит.
| Отказ | Что случилось | Что делать |
|---|---|---|
| Слишком длинный контекст | Запрос не влез в длину контекста класса | Взять класс с большей длиной или сократить то, что передается шагу |
| Запрещено политикой | Политика платформы не разрешает этот класс или этот маршрут данных | Смотреть правила автоматизации и политику платформы |
| Нарушение границы доверия | В модель пошли данные класса, которому туда нельзя | Править маршруты данных автоматизации, не политику |
| Предел не настроен | Область расхода не имеет предела, а обращение его требует | Задать предел в конфигурации |
| Предел исчерпан | Расход области уперся в предел | Дождаться полуночи или поднять предел |
| Слишком часто | Поставщик ограничил частоту обращений | Ничего, платформа повторит сама |
| Работа с ограничениями | Часть поставщиков недоступна, платформа считает через оставшихся | Смотреть экран моделей, какое развертывание на паузе |
| Источник политики недоступен | Платформа не смогла прочитать политику и не стала считать без нее | Звать администратора платформы |
| Время вышло | Поставщик не ответил за отведенное время | Ничего, шаг повторится по своим правилам повторов |
Ошибка после первых слов ответа стоит особняком. Частичный текст уже ушел, поэтому повтора нет, и платформа обрывает ответ сообщением об ошибке.
Поиск по документам считает другой сервис
Векторные представления, по которым работает поиск по документам, считает не модельная поверхность, а отдельная часть платформы. Обращение за ними к модельной поверхности отвечает прямым отказом с указанием, кто этим занимается.
Для администратора это означает, что классы моделей и поиск по документам настраиваются отдельно и в разных разделах описателя. Про корпуса документов рассказано на странице источников данных.
Как сменить поставщика
Порядок такой же, как у любого изменения платформы.
- Правите раздел моделей в своем слое описателя.
- Собираете конфигурацию заново и проверяете готовность.
- Применяете обновление, после чего сервис выбора модели перезапускается.
- Открываете экран моделей и убеждаетесь, что новое развертывание в работе.
Автоматизации при этом не меняются. Если новый поставщик отвечает хуже на ваших данных, это видно по результатам запусков, а не по экрану моделей.
Обратный порядок тоже бывает нужен. Если после смены поставщика ответы стали хуже, вернуть прежнее развертывание можно тем же путем, а автоматизации об этом не узнают.
Что про модель видно в журнале
По каждому обращению к модели платформа записывает, какой класс просила автоматизация и какая именно модель ответила. Это два разных факта, и оба нужны.
- Класс отвечает на вопрос, какая модель была разрешена политикой.
- Имя модели отвечает на вопрос, кто ответил на самом деле.
В журнале аудита обращения к внешним моделям отбираются отдельным видом события. Это первое, что смотрят, когда нужно ответить на вопрос, уходили ли данные наружу и какие именно.