Мультимодальность
Изображения
Как передавать изображения в мультимодальные модели AllTokens через /api/v1/chat/completions.
Запросы с изображениями отправляются через POST /api/v1/chat/completions с массивом messages. Внутри content используется элемент типа image_url, а само изображение можно передать либо по URL, либо в виде base64-строки.
Если вы передаёте несколько изображений, добавляйте их отдельными элементами массива content. Обычно удобнее сначала передать текстовую инструкцию, а затем изображения.
AllTokens поддерживает два основных способа передачи изображений:
- URL: удобнее для публично доступных файлов
- base64: нужен для локальных файлов и закрытых изображений
Передача изображения по URL
Вот пример запроса, где изображение передаётся по ссылке:
Передача изображения в base64
Для локальных изображений и непубличных файлов используйте base64. В этом случае в image_url.url передаётся data:-строка.
Поддерживаемые типы изображений
image/pngimage/jpegimage/webpimage/gif
Что важно помнить
URL удобнее для публичных изображений и крупных файлов: тело запроса получается меньше, а код проще. Base64 нужен, если файл лежит локально или недоступен по публичной ссылке.
Частые вопросы
Можно ли передать несколько изображений в одном запросе?
Можно ли передать несколько изображений в одном запросе?
Да. Для этого добавьте несколько элементов image_url в массив content. Допустимое число изображений зависит от модели и поставщика.
Текст долже н идти до изображения или после?
Текст долже н идти до изображения или после?
Обычно лучше сначала передать текстовую инструкцию, а затем изображение. Так модель проще понимает задачу. Если картинка должна идти первой, лучше объяснить контекст в system-сообщении.
Как понять, поддерживает ли модель изображения?
Как понять, поддерживает ли модель изображения?
Смотрите architecture.input_modalities в Каталоге моделей. Если там есть нужный тип ввода, модель подходит для такого сценария.