Пресеты позволяют вам отделить конфигурацию LLM от вашего кода. Создавайте предустановки и управляйте ими с помощью веб-приложения LLMSTORE для управления маршрутизацией поставщика, выбором модели, системными подсказками и другими параметрами, а затем ссылайтесь на них в запросах API LLMSTORE.

Что такое пресеты?

Пресеты — это именованные конфигурации, которые инкапсулируют все настройки, необходимые для конкретного варианта использования. Например, вы можете создать: — пресет «электронный копирайтер» для создания маркетингового текста. — предустановка «входящий классификатор» для категоризации запросов клиентов. — пресет «code-reviewer» для анализа пул-реквестов. Каждый пресет может управлять: — настройки маршрутизации провайдера (сортировка по цене, задержке и т. д.)
  • Выбор модели (конкретная модель или массив моделей с запасными вариантами)
  • Системные подсказки
  • Параметры генерации (температура, top_p и т.д.)
  • Правила включения/исключения провайдера
  • Инструменты (function tools, передаются модели дословно)

Быстрый старт

  1. Создать пресет. Например, выберите модель и ограничьте маршрутизацию поставщиков несколькими поставщиками.
    Создание нового пресета
  2. Сделайте запрос API к пресету:

Преимущества

Разделение интересов

Пресеты помогают четко разделить код приложения и конфигурацию LLM. Это делает ваш код более семантическим и простым в обслуживании.

Быстрая итерация

Обновите конфигурацию LLM без внесения изменений в код:
  • Переход на новые версии модели
  • Настройка системных подсказок
  • Изменить параметры
  • Изменить настройки провайдера

Использование пресетов

Существует три способа использования пресетов в запросах API.
  1. Прямая ссылка на модель
Вы можете ссылаться на пресет, как если бы это была модель, отправляя запросы на @preset/preset-slug
  1. Предустановленное поле
  1. Комбинация модели и предустановки

Инструменты в пресетах

Пресет может хранить массив tools — точно такой же, как тот, который вы отправляете в запросе. Определения function tools сохраняются и пересылаются дословно:
Любой клиент, который ссылается на @preset/{slug}, применяет эти инструменты на стороне сервера — не требуется SDK или код оркестровки, и вы можете добавлять, удалять или перенастраивать инструменты позже, не затрагивая клиент.

Как инструменты пресета объединяются с инструментами запроса

Когда запрос, ссылающийся на пресет, также отправляет свою собственную tools, два массива объединяются, и инструмент запроса переопределяет инструмент пресета с тем же идентификатором (так же, как поля запроса переопределяют конфигурацию пресета в других местах). Function tools сравниваются по имени функции. Инструменты пресета сохраняют свой относительный порядок; инструменты запроса добавляются после них.

Создание пресетов из запросов API

Помимо панели управления, вы можете создать (или обновить) пресет непосредственно из любого тела запроса вывода, которое вы уже используете. Это полезно, если вы хотите сохранить заведомо исправный запрос в качестве многократного использования. конфигурацию без повторного ввода ее в пользовательском интерфейсе. У каждой формы вывода свой эндпоинт. Отправьте то же JSON-тело, которое вы отправили бы на соответствующий маршрут вывода — LLMSTORE сохраняет только те поля, которые пересекаются с конфигурацией пресета (например model, temperature, provider, top_p, system, tools). Преходящие поля вроде messages, input, prompt и stream молча игнорируются. Эндпоинты:
  • POST /v1/presets/{slug}/chat/completions — форма Chat Completions
  • POST /v1/presets/{slug}/messages — форма Anthropic Messages
  • POST /v1/presets/{slug}/responses — форма Responses
{slug} — URL-безопасный идентификатор пресета. Если пресет с таким слагом уже существует в вашем воркспейсе, создается новая версия и назначается активной. Если не существует — создается новый пресет.

Из запроса chat completions

Отправьте POST с тем телом, которое хотите переиспользовать, на /v1/chat/completions:
Объект messages игнорируется при сохранении предустановок; только поля конфигурации (model, temperature, provider) и извлеченные системные приглашения сохраняются.

Из запроса Anthropic Messages

Высший уровень Поле system становится системным приглашением пресета.

Из запроса ответов Поле

Объект instructions становится системным приглашением пресета.

Форма ответа

Все три эндпоинты возвращают результирующий пресет с его обозначенная версия:
После создания пресет можно использовать в последующих выводах. запросы через любой из трех стилей ссылок, показанных на Использование предустановок.

Рекомендуемый порядок действий

  1. Создайте и протестируйте запрос на /chat/completions (или /messages / /responses), пока не будет получен результат, который вы хочу.
  2. POST то же самое тело, подходящее /v1/presets/{slug}/... эндпоинт для захвата конфигурации.
  3. В рабочем коде замените вызов вывода на ссылку. @preset/{slug} вместо повторения конфигурации.
Это позволяет вам перебирать подсказки и параметры в коде, а затем перевести рабочую конфигурацию в предустановленную без ручного управления транскрипция.

Другие примечания

  1. Если вы используете учетную запись организации, все ее участники имеют доступ к настройкам организации. Это отличный способ поделиться передовым опытом между командами.
  2. История версий сохраняется для понимания внесенных изменений и возможности отката. Однако при обращении к предустановке через API всегда используется последняя версия.
  3. Если вы указываете параметры в запросе, они имеют приоритет над значениями пресета. Эти два поля частично объединены, что означает, что поля уровня запроса переопределяют соответствующие предустановленные поля, но предустановленные поля, отсутствующие в запросе, сохраняются.