Диагностика · opencode
opencode: This Model Does Not Support Image Input — решение
opencode молча подменяет приложенные изображения заметкой, если модальности модели не объявлены. Однострочное объявление в opencode.json, которое включает ввод изображений.
Что вы видите
this model does not support image inputПочему возникает
- Моделей своего провайдера нет в каталоге models.dev, поэтому opencode присваивает им текстовые возможности по умолчанию — независимо от того, что модель умеет на самом деле.
- С текстовыми возможностями opencode заменяет приложенные изображения встроенной заметкой "this model does not support image input"; до провайдера изображение не доходит вовсе.
- Модальности объявили, но opencode после этого не перезапустили.
Что делать
- Объявите модальность изображений для модели в opencode.json явно и перезапустите opencode.
- Как только "image" есть в modalities.input, вставленные и приложенные изображения уходят стандартными image-частями Chat Completions, которые этот шлюз принимает.
Объявите ввод изображений для модели
{
"provider": {
"apitoken": {
"models": {
"gpt-5.6-sol": {
"name": "GPT-5.6 Sol",
"attachment": true,
"modalities": {
"input": ["text", "image"],
"output": ["text"]
}
}
}
}
}
}Похожие запросы
opencode image not sentopencode attachment ignored
Вопросы и ответы
Почему модель отвечает так, будто не видела моё изображение?+
Она его и не видела. Без объявленной модальности изображений opencode вырезает вложение и отправляет вместо него текстовую заметку — до провайдера доходит чисто текстовый запрос.
Это ограничение провайдера?+
Нет — это клиентский гейт по возможностям. Та же модель принимает изображения, как только модальность объявлена в opencode.json.
Нужно ли такое объявление другим инструментам?+
Только клиентам с гейтом по возможностям. Контракт на проводе — обычные image-части Chat Completions, поэтому клиентам без гейта, вроде OpenAI SDK, ничего дополнительно не нужно.
Пропустите сломанную настройку
apiToken.sale отдаёт стандартный Anthropic API — те же модели, те же SDK, один предоплаченный баланс. Направьте base URL вашего инструмента на него, и конфигурация с этой страницы заработает как написано.