Nach Fähigkeit
Dateien hochladen
Nutzen Sie den Datei-Upload der Plattform, wenn ein Client nur eine lokale Bild-, Video-, Audio-, PDF-, Tabellen- oder sonstige Datei hat. Die API gibt ein temporäres Upload-Ziel und eine stabile public_url zurück; Details der Speicherimplementierung bleiben für den Client verborgen.
#URL, Upload oder Base64 wählen
| Vorhandene Eingabe | Empfohlener Weg | Warum |
|---|---|---|
| Vorhandene öffentliche HTTPS-URL | URL direkt senden | Kein doppelter Upload und der kleinste Anfrage-Body. |
| Lokale Datei auf dem Gerät | Hochladen, dann public_url senden | Zuverlässig für große Dateien und bei Wiederholungen wiederverwendbar. |
| Kleines Inline-Bild, und das Modell unterstützt Base64 ausdrücklich | Base64 ist zulässig | Nur verwenden, wenn der Vertrag des gewählten Modells es erlaubt. |
#Ablauf für lokale Datei-Uploads
- 1
Aktuelles Limit lesen
Verwenden Sie denselben API-Schlüssel, damit nutzerspezifische Limits gelten.
GET /v1/media/upload-policy - 2
Upload-Policy erstellen
Senden Sie kind, einen konkreten content_type und die exakte Größe in Bytes.
POST /v1/media/upload-policy - 3
Datei hochladen
Senden Sie jeden zurückgegebenen fields-Eintrag plus die Datei per POST an upload_url.
multipart/form-data - 4
Zurückgegebene URL verwenden
Setzen Sie public_url in das Medienfeld, das das Modell unterstützt.
public_url
curl https://www.aisplice.store/v1/media/upload-policy \
-H "Authorization: Bearer sk-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"kind": "file",
"content_type": "application/pdf",
"size": 1048576
}'#Upload-Felder als Blackbox behandeln
Senden Sie jeden Schlüssel und Wert aus fields, ohne sie umzubenennen, zu filtern oder zwischenzuspeichern. Die Upload-Policy ist kurzlebig und an einen generierten Dateipfad gebunden.
const form = new FormData();
for (const [key, value] of Object.entries(policy.fields)) {
form.append(key, String(value));
}
form.append("file", file); // keep the file field last
const uploaded = await fetch(policy.upload_url, {
method: "POST",
body: form,
});
if (!uploaded.ok) throw new Error(await uploaded.text());
const modelInputUrl = policy.public_url;#Dateitypen und Modellunterstützung
Erfolgreicher Upload heißt nicht, dass das Modell die Datei annimmt
Immer noch nicht gelöst?
Senden Sie uns die Anfrage-ID oder die Fehlermeldung, und wir sehen uns das an.