tools.media-Konfiguration, die Fallback-Reihenfolge und die Integration in die Antwort-Pipeline.
Funktionsweise
1
Anhänge erfassen
Geordnete Fakten zu eingehenden Medien erfassen (
path, url, contentType und kind).2
Nach Fähigkeit auswählen
Für jede aktivierte Fähigkeit (Bild/Audio/Video) Anhänge gemäß der
attachments-Richtlinie auswählen (Standard: nur der erste Anhang).3
Modell auswählen
Den ersten geeigneten Modelleintrag auswählen (Größe + Fähigkeit + verfügbare Authentifizierung).
4
Bei Fehler auf Fallback zurückgreifen
Wenn ein Modell einen Fehler meldet, das Zeitlimit überschreitet oder das Medium
maxBytes überschreitet, den nächsten Eintrag versuchen.5
Bei Erfolg anwenden
Body wird zu einem [Image]-, [Audio]- oder [Video]-Block. Audio setzt außerdem {{Transcript}}; für die Befehlsanalyse wird, sofern vorhanden, der Untertiteltext verwendet, andernfalls das Transkript. Untertitel bleiben innerhalb des Blocks als User text: erhalten.Konfiguration
tools.media enthält eine einzige nach Fähigkeiten gekennzeichnete Modellliste sowie kompakte Steuerungsoptionen pro Fähigkeit:
image/audio/video):
Prompts, Limits, Sprachhinweise, Anfrageüberschreibungen und Provider-Optionen können als Standardwerte einer Fähigkeit festgelegt oder in einzelnen
tools.media.models[]-Einträgen überschrieben werden. Die Standardwerte einer Fähigkeit gelten auch für automatisch erkannte Provider, wenn kein explizites Modell konfiguriert ist.
Modelleinträge
Jedermodels[]-Eintrag ist ein Provider-Eintrag (Standard) oder ein CLI-Eintrag:
- Provider-Eintrag
- CLI-Eintrag
Provider-Anmeldedaten
Das Medienverständnis über Provider verwendet dieselbe Authentifizierungsauflösung wie normale Modellaufrufe: Authentifizierungsprofile, Umgebungsvariablen und anschließendmodels.providers.<providerId>.apiKey. tools.media.models[]-Einträge akzeptieren kein eingebettetes apiKey-Feld.
Regeln und Verhalten
- Medien, die
maxBytesüberschreiten, werden für dieses Modell übersprungen; anschließend wird das nächste versucht. - Audiodateien mit weniger als 1024 Bytes werden als leer/beschädigt behandelt und vor der Transkription übersprungen; der Agent erhält stattdessen ein deterministisches Platzhaltertranskript.
- Wenn das aktive primäre Bildmodell Vision bereits nativ unterstützt, überspringt OpenClaw den
[Image]-Zusammenfassungsblock und übergibt das Originalbild direkt an das Modell. MiniMax bildet eine Ausnahme:minimax,minimax-cn,minimax-portalundminimax-portal-cnleiten das Bildverständnis immer über den Plugin-eigenen Medien-ProviderMiniMax-VL-01, selbst wenn ältere MiniMax-M2.x-Chatmetadaten Bildeingaben angeben (nurMiniMax-M3und neuere Versionen gelten als nativ visionfähig). - Wenn ein primäres Gateway-/WebChat-Modell nur Text unterstützt, bleiben Bildanhänge als ausgelagerte
media://inbound/*-Referenzen erhalten, damit Bild-/PDF-Tools oder ein konfiguriertes Bildmodell sie weiterhin untersuchen können, statt den Anhang zu verlieren. - Ein explizites
openclaw infer image describe --file <path> --model <provider/model>(Alias:openclaw capability image describe) führt diesen bildfähigen Provider bzw. dieses Modell direkt aus, einschließlich Ollama-Referenzen wieollama/qwen2.5vl:7b, wenn untermodels.providers.ollama.models[]ein passendes bildfähiges Modell konfiguriert ist. - Wenn
<capability>.enablednichtfalseist, aber keine Modelle konfiguriert sind, versucht OpenClaw das aktive Antwortmodell, sofern dessen Provider die Fähigkeit unterstützt.
Automatische Erkennung (Standard)
Wenntools.media.<capability>.enabled nicht false ist und keine Modelle konfiguriert sind, versucht OpenClaw die folgenden Optionen der Reihe nach und beendet die Suche bei der ersten funktionierenden Option:
1
Konfiguriertes Bildmodell (nur Bild)
Primäre/Fallback-Referenzen aus
agents.defaults.imageModel, sofern das aktive Antwortmodell Vision nicht bereits nativ unterstützt. provider/model-Referenzen werden bevorzugt; nicht qualifizierte Referenzen werden nur anhand konfigurierter bildfähiger Provider-Modelleinträge qualifiziert, wenn die Übereinstimmung eindeutig ist.2
Aktives Antwortmodell
Das aktive Antwortmodell, sofern dessen Provider die Fähigkeit unterstützt.
3
Provider-Authentifizierung (nur Audio, vor lokalen CLIs)
Konfigurierte
models.providers.*-Einträge mit Audiounterstützung werden vor lokalen CLIs versucht. Gebündelte Provider-Prioritätsreihenfolge (Gleichstände werden alphabetisch nach Provider-ID aufgelöst): Groq/OpenAI → xAI → Deepgram → OpenRouter → Google/SenseAudio → Deepinfra/ElevenLabs → Mistral.4
Lokale CLIs (nur Audio)
Verfügbare lokale Binärdateien bilden eine geordnete Fallback-Liste:
whisper-clinur dann zuerst, wenn ein früherer Modellaufruf im aktuellen Prozess Metal oder CUDA erkannt hat- Standardmäßig CPU-basiertes
sherpa-onnx-offline(erfordertSHERPA_ONNX_MODEL_DIRmittokens.txt/encoder.onnx/decoder.onnx/joiner.onnx) whisper-cli, wenn Beschleunigung lediglich beim Build unterstützt wird oder noch nicht erkannt wurdeparakeet-mlxauf Apple Silicon (MLX-fähig, Gerätenutzung nicht erkannt)whisper(Python-CLI; verwendet standardmäßig das Modellturbound lädt es automatisch herunter)
5
Provider-Authentifizierung (Bild/Video)
Konfigurierte
models.providers.*-Einträge, die die Fähigkeit unterstützen, werden vor der gebündelten Fallback-Reihenfolge versucht. Nur für Bilder konfigurierte Provider mit einem bildfähigen Modell werden automatisch für das Medienverständnis registriert, auch wenn sie kein gebündeltes Provider-Plugin sind.Gebündelte Provider-Prioritätsreihenfolge (Gleichstände werden alphabetisch nach Provider-ID aufgelöst):- Bild: Anthropic/OpenAI → Google → MiniMax → Deepinfra → MiniMax Portal → Z.AI
- Video: Google → Qwen → Moonshot
6
Antigravity-CLI (nur Bild/Video)
Die erste installierte Binärdatei
agy oder antigravity (mit OPENCLAW_ANTIGRAVITY_CLI überschreibbar), in einer Sandbox auf das Verzeichnis des Mediums beschränkt.Die Binärdateierkennung erfolgt unter macOS/Linux/Windows nach bestem Bemühen. Stellen Sie sicher, dass sich die CLI unter
PATH befindet (~ wird expandiert), oder legen Sie einen expliziten CLI-Modelleintrag mit einem vollständigen Befehlspfad fest.Proxy-Unterstützung (Provider-Aufrufe für Audio/Video)
Provider-basiertes Audio- und Video-Understanding berücksichtigt die üblichen Umgebungsvariablen für ausgehende Proxys einschließlich der UmgehungsregelnNO_PROXY/no_proxy: HTTPS_PROXY, HTTP_PROXY, ALL_PROXY, https_proxy, http_proxy, all_proxy. Variablen in Kleinbuchstaben haben Vorrang vor solchen in Großbuchstaben. Wenn keine festgelegt sind, verwendet das Medienverständnis einen direkten ausgehenden Zugriff. Ist der Proxy-Wert fehlerhaft, protokolliert OpenClaw eine Warnung und greift auf einen direkten Abruf zurück. Das Bildverständnis verwendet diesen Proxy-Pfad nicht.
Fähigkeiten
Legen Siecapabilities in einem models[]-Eintrag fest, um ihn auf bestimmte Medientypen zu beschränken. Für gemeinsam genutzte Listen leitet OpenClaw die Standardwerte pro gebündeltem Provider ab:
Legen Sie für CLI-Einträge
capabilities explizit fest, um unerwartete Übereinstimmungen zu vermeiden; wird die Angabe ausgelassen, kommt der Eintrag für jede Funktionsliste infrage, in der er erscheint.
Provider-Unterstützungsmatrix
Hinweis zu MiniMax: Das Bildverständnis für
minimax, minimax-cn, minimax-portal und minimax-portal-cn stammt immer vom Plugin-eigenen Medien-Provider MiniMax-VL-01, selbst wenn veraltete Chat-Metadaten von MiniMax M2.x Bildeingaben ausweisen.Hinweise zur Modellauswahl
- Bevorzugen Sie für jede Medienfunktion das leistungsstärkste Modell der aktuellen Generation, wenn Qualität und Sicherheit wichtig sind.
- Vermeiden Sie bei Agenten mit Werkzeugzugriff, die nicht vertrauenswürdige Eingaben verarbeiten, ältere oder schwächere Medienmodelle.
- Halten Sie für die Verfügbarkeit mindestens ein Ausweichmodell pro Funktion bereit (Qualitätsmodell + schnelleres/günstigeres Modell).
- CLI-Ausweichlösungen (
whisper-cli,whisper,gemini) helfen, wenn Provider-APIs nicht verfügbar sind. - Bekannte Dateiausgabemodi sind maßgeblich: Eine leere oder fehlende abgeleitete Transkriptdatei erzeugt kein Transkript, statt auf die CLI-Fortschrittsausgabe zurückzugreifen.
parakeet-mlx: Verwenden Sie--output-format txt(oderall) mit--output-dirund der standardmäßigen Ausgabevorlage{filename}. Die vorgelagerten UmgebungsvariablenPARAKEET_OUTPUT_FORMATundPARAKEET_OUTPUT_TEMPLATEwerden ebenfalls berücksichtigt. OpenClaw liest<output-dir>/<media-basename>.txt; das standardmäßige Formatsrt, andere Formate und benutzerdefinierte Ausgabevorlagen verwenden weiterhin stdout.
Richtlinie für Anhänge
Die funktionsspezifische Einstellungattachments steuert, welche Anhänge verarbeitet werden:
"first" | "all"
Standard:"first"
Verarbeitet nur den ersten ausgewählten Anhang oder alle ausgewählten Anhänge.
number
Standard:"1"
Begrenzt die Anzahl der verarbeiteten Anhänge.
"first" | "last" | "path" | "url"
Auswahlpräferenz unter den infrage kommenden Anhängen.
mode: "all" werden Ausgaben mit [Image 1/2], [Audio 2/2] usw. gekennzeichnet.
Extraktion aus Dateianhängen
- Extrahierter Dateitext wird als nicht vertrauenswürdiger externer Inhalt umschlossen, bevor er an den Medien-Prompt angehängt wird. Dabei werden Begrenzungsmarkierungen wie
<<<EXTERNAL_UNTRUSTED_CONTENT id="...">>>/<<<END_EXTERNAL_UNTRUSTED_CONTENT id="...">>>sowie eine MetadatenzeileSource: Externalverwendet. - Dieser Pfad lässt das lange Banner
SECURITY NOTICE:absichtlich aus, um den Medien-Prompt kurz zu halten; die Begrenzungsmarkierungen und Metadaten gelten weiterhin. - Eine Datei ohne extrahierbaren Text erhält
[No extractable text]. - Wenn bei einer PDF-Datei ersatzweise gerenderte Seitenbilder verwendet werden, leitet OpenClaw diese Bilder an antwortende Modelle mit Bildverarbeitung weiter und behält den Platzhalter
[PDF content rendered to images]im Dateiblock bei.
Konfigurationsbeispiele
- Gemeinsame Modelle + Überschreibungen
- Nur Audio + Video
- Nur Bild
- Einzelner multimodaler Eintrag
Statusausgabe
Wenn die Medienanalyse ausgeführt wird, enthält/status eine Zusammenfassungszeile pro Funktion:
openclaw capability audio providers aus. Lokale Zeilen zeigen die lokale Ausweichlösung getrennt von der globalen Provider-Auswahl, der Bereitschaft und den separaten Feldern für fähiges/angefordertes/beobachtetes Backend. Dieselbe lokale Auswahl ist als informative Doctor-Feststellung verfügbar:
Hinweise
- Die Analyse erfolgt nach bestem Bemühen. Fehler blockieren keine Antworten.
- Anhänge werden auch dann an Modelle übergeben, wenn die Analyse deaktiviert ist.
- Verwenden Sie
scope, um einzuschränken, wo die Analyse ausgeführt wird (beispielsweise nur in Direktnachrichten).