Docs
Funktionen

Dateien

Dateien hochladen und als Kontext in eine Nachricht einbinden

Laden Sie eine Datei einmal hoch und referenzieren Sie sie dann über ihre id in jeder Chat-Anfrage. Das Modell liest den Dateiinhalt als Kontext.

Unterstützte Dateien

TypFormateLimitWas das Modell bekommt
BilderJPEG, PNG, WebP, HEIC, GIF, BMP, TIFF20 MBdas Bild (HEIC wird vorher konvertiert)
PDFapplication/pdf50 MBextrahierter Text oder Seitenbilder (siehe unten)
Text und Code.txt .csv .md .json .py .ts .go .rs und ähnliche50 MB, erste 200.000 Zeichenden Dateiinhalt, an dieser Marke abgeschnitten
AudioMP3, WAV, WebM/Opus, OGG, FLAC, M4A25 MBein Transkript
VideoMP4, WebM, MOV, MKV, AVI5 Minutenein Transkript und Keyframes
Apple iWork.pages .numbers .key50 MBextrahierten Text oder die Vorschau als Seitenbilder

Dateien verfallen 30 Tage nach dem Upload. Ein Upload-Body ist auf 100 MB begrenzt, die 5-Minuten-Grenze bei Video greift also lange vor jeder Byte-Zahl.

.env, .pem, .p12, .pfx, .cer und .crt lehnen wir mit 422 ab, damit keine Zugangsdaten versehentlich in einem Prompt landen.

Eine .pages- oder .key-Datei ohne QuickLook-Vorschau kommt leer zurück. Exportieren Sie sie als PDF und laden Sie das hoch.

PDFs

Talos verarbeitet ein PDF auf zwei Wegen und entscheidet pro Datei:

  • Digital erzeugtes PDF, also alles mit Textebene: eine ERP-Rechnung, ein Word-Export, ein generierter Report. Talos extrahiert den Text, bis zu 200.000 Zeichen, das sind grob 70 bis 100 dichte Seiten. Alles darüber wird abgeschnitten.
  • Scan oder Foto-PDF ohne Textebene: Talos rendert die Seiten zu Bildern und schickt sie an das Vision-Modell, das sie liest wie ein Foto.

Sie senden in beiden Fällen dieselbe Anfrage. Talos prüft, ob eine Textebene vorhanden ist, und nimmt den günstigeren Weg, wenn es eine gibt.

Bis zu 20 Seiten pro Dokument. Talos wählt pro gerenderter Seite das günstigere von PNG und JPEG, ein körniger Flachbett-Scan kostet damit etwa so viel wie ein sauberer; gemessen an 20-seitigen A4-Scans liefern beide alle 20 Seiten. Eine Größenbremse stoppt das Rendern vorzeitig, wenn die Seiten zusammen über rund 32 MB wachsen würden, was realistische Dokumente nicht erreichen.

Sehr kleine Schrift auf einem dichten Scan kann das Vision-Modell weiterhin überfordern. Es antwortet dann, dass es nichts gefunden hat, statt einen Wert zu erfinden.

Die Entscheidung fällt pro Dokument, nicht pro Seite. Ein PDF, das getippte Seiten mit einem gescannten Anhang mischt, nimmt den Textweg, und die gescannten Seiten erreichen das Vision-Modell nie. Teilen Sie eine solche Datei auf, wenn der gescannte Teil zählt.

Eine Datei hochladen

POST /v1/files erwartet ein multipart-Formular mit einem einzelnen file-Feld. Die Antwort ist ein FileOut-Objekt.

curl https://api.ablatic.ai/v1/files \
  -H "Authorization: Bearer $ABLATIC_API_KEY" \
  -F [email protected]

Ein FileOut-Objekt hat diese Felder:

{
  "id": "file-...",
  "object": "file",
  "filename": "report.pdf",
  "purpose": "...",
  "mime_type": "application/pdf",
  "size": 184320,
  "status": "...",
  "content_kind": "...",
  "token_estimate": 4096,
  "created_at": 1744588800,
  "expires_at": 1747180800
}

Verwenden Sie id als file_id, wenn Sie die Datei in einer Nachricht referenzieren.

Eine Datei in einer Nachricht referenzieren

Fügen Sie einer User-Nachricht einen Content-Block vom Typ file hinzu. Der file_id ist die id aus der Upload-Antwort.

curl https://api.ablatic.ai/v1/chat/completions \
  -H "Authorization: Bearer $ABLATIC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "talos",
    "messages": [
      {
        "role": "user",
        "content": [
          { "type": "text", "text": "Summarize this report." },
          { "type": "file", "file": { "file_id": "file-..." } }
        ]
      }
    ]
  }'

Eine Datei ohne Upload senden

Legen Sie die Datei direkt in die Nachricht und sparen Sie sich /v1/files. Talos verarbeitet sie genauso und speichert nichts.

curl https://api.ablatic.ai/v1/chat/completions \
  -H "Authorization: Bearer $ABLATIC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "talos",
    "messages": [
      {
        "role": "user",
        "content": [
          { "type": "text", "text": "Fasse diesen Bericht zusammen." },
          {
            "type": "file",
            "file": {
              "filename": "report.pdf",
              "file_data": "data:application/pdf;base64,JVBERi0..."
            }
          }
        ]
      }
    ]
  }'

Der Request-Body ist auf 50 MB begrenzt, und base64 schlägt rund ein Drittel drauf, also passen etwa 37 MB PDF hinein. Alles Größere laden Sie hoch und referenzieren es über die id.

Auf /v1/responses senden Sie dieselbe Datei als input_file mit file_data. Auf /v1/messages nutzen Sie Anthropics document-Block, beschrieben unter Anthropic-Kompatibilität.

Dateien verwalten

GET    /v1/files              list your files
GET    /v1/files/{file_id}    fetch one FileOut object
DELETE /v1/files/{file_id}    delete a file

Alle vier Endpoints verwenden Key-Auth.

Limits

  • 30 Uploads pro Stunde pro Benutzer.
  • 100 Dateien pro Benutzer.
  • Dateien verfallen 30 Tage nach dem Upload.
  • Die Limits pro Datei stehen in der Tabelle oben. Ein Upload-Body ist auf 100 MB begrenzt; eine inline gesendete Datei fällt stattdessen unter das 50-MB-Limit des Request-Bodys.

Nächste Schritte