Die Image Describer API ist ein leistungsstarkes Werkzeug zur Erstellung von Bildbeschreibungen, das intelligent präzise, detaillierte und aufschlussreiche Beschreibungen von Bildern basierend auf dem bereitgestellten Bild und Prompt erzeugt. Diese KI-gestützte Bilderkennungs-API versteht und analysiert Bildinhalte und generiert entsprechende Textbeschreibungen gemäß Ihren Prompts. Sie ist weit verbreitet in verschiedenen Szenarien der Bildverstehen, Bildanalyse und Bildinhaltsgenerierung und ermöglicht Ihnen die einfache Implementierung von Bild-Frage-Antwort-Systemen und Bild-zu-Text-Konvertierung.
Die Image Describer API kann Sie dabei unterstützen, Bildverstehen und Inhaltsgenerierung in den folgenden Bereichen effizient durchzuführen:
Um auf die Image Describer API zugreifen zu können, benötigen Sie zunächst einen gültigen API-Schlüssel. Dieser Schlüssel wird verwendet, um Ihre Anfragen zu authentifizieren und einen sicheren Zugriff auf die API zu gewährleisten.
Wichtig: Geben Sie ihn nicht an Dritte weiter und legen Sie ihn nicht im Browser, im clientseitigen Code oder an einem anderen unsicheren Ort offen. Bewahren Sie Ihren Schlüssel sicher auf, um unbefugten Zugriff zu verhindern.
POST https://api.imagedescriber.app/api/v1/generate_content
Header | Typ | Erforderlich | Beschreibung |
---|---|---|---|
content-type | string | Ja | `application/json` |
authorization | string | Ja | `Bearer ${api_key}`, wobei `${api_key}` Ihr API-Schlüssel ist. |
{
"image": "data:image/jpeg;base64,{image_base64_data}",
"prompt": "Was ist das für ein Objekt? Beschreiben Sie seine möglichen Verwendungszwecke.",
"lang": "de"
}
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
image | string | Ja | Die URL oder Base64-codierte Daten des Bildes. Unterstützte Bildformate sind in Details zu Bildformaten aufgeführt. |
prompt | string | Nein | Die Frage oder Beschreibungsanforderung für das Bild, z. B. "Was ist das?" oder "Beschreibe dieses Bild." |
lang | string | Nein | Der Sprachcode für die zurückgegebene Beschreibung. Standardmäßig `en` (Englisch). Unterstützte Sprachcodes sind unten aufgeführt. |
Code | Sprache |
---|---|
en | Englisch (Standard) |
zh | Chinesisch |
fr | Französisch |
de | Deutsch |
es | Spanisch |
ja | Japanisch |
ko | Koreanisch |
curl --location 'https://api.imagedescriber.app/api/v1/generate_content' \
--header 'content-type: application/json' \
--header 'authorization: Bearer your_api_key' \
--data '{
"image":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQE...",
"prompt":"Was ist das für ein Objekt? Beschreiben Sie seine möglichen Verwendungszwecke.",
"lang":"de"
}'
import requests
import base64
def image_to_base64(image_path):
"""Konvertiert ein Bild in eine Base64-Codierung"""
with open(image_path, "rb") as image_file:
encoded_string = base64.b64encode(image_file.read()).decode("utf-8")
return encoded_string
def generate_image_description(api_key, image_path, prompt, lang="de"):
"""Generiert eine Bildbeschreibung mit der Image Describer API"""
url = "https://api.imagedescriber.app/api/v1/generate_content"
headers = {
"content-type": "application/json",
"authorization": f"Bearer {api_key}"
}
image_base64_data = image_to_base64(image_path)
payload = {
"image": f"data:image/jpeg;base64,{image_base64_data}",
"prompt": prompt,
"lang": lang
}
response = requests.post(url, headers=headers, json=payload)
if response.status_code == 200:
result = response.json()
print(result["data"]["content"])
else:
print(f"Fehler: {response.status_code}")
print(response.text)
# Beispielhafte Verwendung
api_key = "your_api_key"
image_path = "your_image.jpg"
prompt = "Was ist das für ein Objekt? Beschreiben Sie seine möglichen Verwendungszwecke."
generate_image_description(api_key, image_path, prompt)
import fs from 'fs';
// Serverseitige Implementierung
const buffer = await fs.readFileSync("/temp/test.jpg");
const base64Image = buffer.toString('base64');
const imageData = `data:image/jpeg;base64,${base64Image}`;
// Clientseitige Implementierung
const file:File = /* Datei aus Input- oder Drop-Ereignis */;
const arrayBuffer = await file.arrayBuffer();
const bytes = new Uint8Array(arrayBuffer);
const base64Image = btoa(String.fromCharCode.apply(null, bytes as any));
const imageData = `data:${file.type};base64,${base64Image}`;
const body = {
"image": imageData,
"prompt": "Beschreibe das Bild im Detail",
"lang": "de"
};
const response = await fetch('https://api.imagedescriber.app/api/v1/generate_content', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer {your_api_key}'
},
body: JSON.stringify(body),
});
const result = await response.json();
console.log(result);
Die API gibt jetzt die vollständige Antwort in einem einzigen JSON-Objekt zurück. Das Feld content
innerhalb des data
-Objekts enthält die generierte Bildbeschreibung im Markdown-Format.
{
"code": 0,
"message": "Erfolg",
"request_id": "eindeutige_anfrage_id_zeichenkette",
"data": {
"content": "Generierter Inhalt im Markdown-Format"
}
}
Feld | Typ | Beschreibung |
---|---|---|
code | Zahl | Statuscode, `0` zeigt Erfolg an, nicht `0` zeigt einen Fehler an. |
message | String | Statusmeldung, beschreibt den Status der Anfrage. |
request_id | String | Eindeutige Anfrage-ID, wird für Tracking und Fehlerbehebung verwendet. |
data | String | Enthält den generierten Inhalt. Markdown-Format. |
content | String | Der generierte **Bildbeschreibungstext**. Das Format ist **Markdown**. |
Um die Dienststabilität und -gerechtigkeit zu gewährleisten, ist jeder API-Schlüssel auf 5 Anfragen pro Minute (300 Anfragen pro Stunde) beschränkt. Anfragen, die dieses Limit überschreiten, werden mit dem Fehlercode 1004
abgelehnt.
Wie bekomme ich mehr Credits?
Sie können die Seite zum Aufladen von Credits besuchen, um Credit-Pakete zu kaufen, um mehr API-Aufrufe zu unterstützen. Wir bieten verschiedene Pakete an, um die Bedürfnisse verschiedener Benutzer zu erfüllen.
Die folgende Tabelle listet häufige Fehlercodes, ihre Bedeutungen und Lösungen auf:
Fehlercode | Beschreibung | Lösung |
---|---|---|
1002 | Nicht autorisiert | Bitte überprüfen Sie, ob Ihr `authorization`-Header korrekt gesetzt ist. |
1003 | Ungültiger API-Schlüssel | Bitte überprüfen Sie, ob Ihr API-Schlüssel korrekt ist, oder besorgen Sie sich einen neuen. |
1004 | Zu viele Anfragen | Bitte reduzieren Sie Ihre Anfragefrequenz, maximal 5 Anfragen pro Minute. |
1005 | Ungültige Parameter | Bitte überprüfen Sie, ob Ihre Anfrageparameter den Spezifikationen entsprechen. |
2002 | Nicht genügend Credits | Bitte laden Sie Ihre Credits auf. |
2003 | Inhalt durch Filter blockiert | Bitte ändern Sie Ihr Bild oder Ihren Prompt, um sicherzustellen, dass der Inhalt den Vorschriften entspricht. |
2004 | Ungültiges Bildformat | Bitte verwenden Sie ein unterstütztes Bildformat, siehe Details zu Bildformaten. |
2005 | Bild-Upload fehlgeschlagen | Bitte überprüfen Sie, ob Ihre Bild-URL gültig ist, oder versuchen Sie den Upload später erneut. |
5050 | Interner Serverfehler | Bitte wenden Sie sich an unser technisches Support-Team und geben Sie die `request_id` an. |
Derzeit unterstützte Bildformate sind: JPG
, JPEG
, PNG
, WebP
. Die maximale Bildgröße beträgt 4 MB.
Wenn Sie Fragen oder Anregungen haben, können Sie uns gerne über die folgenden Methoden kontaktieren:
Beginnen Sie jetzt mit der Nutzung der Image Describer API und erschließen Sie die grenzenlosen Möglichkeiten des Bildverstehens!