Vi använder cookies. Cookies och webbläsarlagring håller dig inloggad och kommer ihåg dina preferenser. Med ditt tillstånd mäter vi också hur webbplatsen används. Du kan när som helst. Läs vår cookiepolicy.

Vision och filer

Endpoints

Vision och filer

Skicka bilder, PDF-filer, ljud och video som innehållsdelar i meddelanden till multimodala modeller, med format, exempel, gränser och felkoder.

Testa i playground

Multimodala modeller accepterar bilder, PDF-filer, ljud och video i ett användarmeddelande. Skicka content som en array av delar i stället för en sträng. För att se vad en modell accepterar, kontrollera architecture.input_modalities i Modeller (image, file, audio, video).

Innehållsdelar

DelFormAnteckningar
Text{ "type": "text", "text": "..." }
Bild{ "type": "image_url", "image_url": { "url": "https://..." | "data:image/png;base64,...", "detail": "auto" } }PNG, JPEG, WebP, GIF. URL eller base64-data-URL.
PDF / fil{ "type": "file", "file": { "filename": "doc.pdf", "file_data": "https://..." | "data:application/pdf;base64,..." } }Fungerar med alla modeller. Modeller utan inbyggt filstöd får tolkad text.
Ljud{ "type": "input_audio", "input_audio": { "data": "<base64>", "format": "wav" } }Endast base64. wav, mp3 och fler, beroende på modell.
Video{ "type": "video_url", "video_url": { "url": "https://..." } }Stöds av vissa modeller, t.ex. Gemini.
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.chat.completions.create({
  "model": "openai/gpt-5-mini",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "What is in this image?"
        },
        {
          "type": "image_url",
          "image_url": {
            "url": "https://upload.wikimedia.org/wikipedia/commons/3/3a/Cat03.jpg"
          }
        }
      ]
    }
  ]
});
console.log(result.choices[0].message.content);

Bildexempel

{
  "model": "google/gemini-2.5-flash",
  "messages": [
    {
      "role": "user",
      "content": [
        { "type": "text", "text": "What is in this picture?" },
        { "type": "image_url", "image_url": { "url": "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg" } }
      ]
    }
  ]
}

PDF-exempel

{
  "model": "anthropic/claude-sonnet-4.5",
  "messages": [
    {
      "role": "user",
      "content": [
        { "type": "text", "text": "Summarize this contract in five bullets." },
        { "type": "file", "file": { "filename": "contract.pdf", "file_data": "data:application/pdf;base64,JVBERi0xLjcK..." } }
      ]
    }
  ],
  "plugins": [{ "id": "file-parser", "pdf": { "engine": "pdf-text" } }]
}

Det valfria pluginet file-parser väljer hur en PDF läses: pdf-text (kostnadsfri textextrahering), mistral-ocr (OCR för skannade dokument, faktureras per sida) eller native (modellen läser filen själv). Kostnaden för tolkningen ingår i usage.cost.

Svar

Svaret är en vanlig chat completion. Bild-, fil- och ljudindata räknas som indata-tokens, och deras kostnad finns i usage.cost:

{
  "choices": [{ "index": 0, "finish_reason": "stop", "message": { "role": "assistant", "content": "A close-up of an ant on a leaf." } }],
  "usage": { "prompt_tokens": 1290, "completion_tokens": 12, "total_tokens": 1302, "cost": 0.000417 }
}

Gränser och fel

  • Ett anrop får vara högst 25 MB. Base64 gör filer ungefär 33 % större. Större anrop returnerar 413 payload_too_large. För stora bilder, använd publika URL:er.
  • En modell som inte accepterar en indatatyp returnerar ett uppströms 400 eller 404.
  • Övriga fel är desamma som för Chat completions. Se Fel.