Qwen: Qwen3.7 Flash
Qwen3.7 Flash ist Qwens Vision-Language-Modellfamilie für Text, Bilder und Video mit Textausgabe. Der Hersteller hebt stärkere Objekterkennung, räumliches Verständnis, multimodale Agentenarbeit und visuelle Codeerstellung hervor, mit standardmäßig aktiviertem Thinking und optionalem Direktantwortmodus.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsqwen/qwen3.7-flash - Ailoot Ultra · Anthropic Messages
POST /v1/messagesqwen/qwen3.7-flash
Über das Modell
Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.
Die Qwen3.7-Flash-Veröffentlichung
Qwen3.7 Flash ist eine native Vision-Language-Modellfamilie für Text-, Bild- und Videoverständnis mit Textantworten. Die Herstellerveröffentlichung beschreibt gegenüber Qwen3.6 Flash eine stärkere multimodale Wahrnehmung und Agentenausführung. Ihr praktischer Aufgabenbereich umfasst Objekterkennung, Verständnis visueller Szenen, Schlussfolgerungen zu räumlichen Beziehungen und die Erstellung von Code oder Erklärungen aus visuellem Material.
Die offizielle Veröffentlichung nennt sowohl qwen3.7-flash als auch das datierte qwen3.7-flash-2026-07-15. Bewahren Sie bei der Aufzeichnung eines Ergebnisses den genauen Modellnamen: Der undatierte Flash-Name bezeichnet keinen festen Hersteller-Snapshot. Die hier verwendete Veröffentlichungsbeschreibung belegt weder eine Parameteranzahl eines offenen Checkpoints noch eine numerische Repräsentation.
Objekterkennung, Wahrnehmung der realen Welt und Raum
Stellen Sie ein Szenenbild mit einer konkreten Frage bereit: welches Objekt wichtig ist, welche Beziehung untersucht werden soll und welche sichtbaren Details die Antwort stützen sollen. Bewahren Sie bei einem Diagramm Beschriftungen und stellen Sie die zu deren Interpretation nötigen Definitionen bereit. Eine hilfreiche Ausgabe trennt Beobachtungen von abgeleiteten Beziehungen und erleichtert damit den Vergleich der Erklärung mit der Quelle.
Kennzeichnen Sie bei mehreren Bildern jede Eingabe und verlangen Sie einen nach diesen Kennzeichnungen geordneten Vergleich. Benennen Sie bei Video das relevante Ereignis und bewahren Sie Abfolge oder Zeitinformationen. Prüfen Sie exakte Anzahlen, räumliche Messungen und Beobachtungen auf Frame-Ebene anhand des bereitgestellten Materials.
Multimodale Agenten
Die Veröffentlichung hebt Search-Agent- und Code-Interpreter-Agent-Szenarien mit stabilerer mehrstufiger Ausführung hervor. In einem solchen Ablauf stellt die Anwendung die erlaubten Tools bereit, führt deren Aktionen aus und gibt deren Beobachtungen zurück. Das Modell kann diese Ergebnisse zur Aktualisierung seines Plans nutzen. Beschreiben Sie Ziel und Abschlussbedingung und fordern Sie ein endgültiges Artefakt plus etwaige offene Belege an. Der Hersteller nennt Function Calling, Structured Outputs, Prefix Completion und Context Caching. Websuche wird in Beijing und Singapore unterstützt und in den anderen angeführten regionalen Bereichen nicht unterstützt. Batch-Inferenz wird für den Beijing-Alias unterstützt und anderswo nicht; Fine-Tuning wird nicht unterstützt.
Die Agentenspezialisierung eines Modells darf nicht mit eingebautem Zugriff auf aktuelle Quellen oder eine Ausführungsumgebung in jeder Schnittstelle verwechselt werden. Wenn eine Aufgabe Abruf oder Codeausführung erfordert, unterscheiden Sie das von einem tatsächlichen Tool zurückgegebene Ergebnis von einer vorgeschlagenen Aktion im Modelltext. Diese Beschreibung belegt nicht, welche Tools eine andere Anwendung anbietet.
Visuelle Codeerstellung
Qwen beschreibt verbesserte Programmierung anhand visuellen Materials. Eine hilfreiche Anfrage kann einen Screenshot oder ein Layout mit funktionalen Anforderungen kombinieren und bearbeitbaren Code verlangen. Legen Sie in der Aufgabe Framework oder Ausgabeform, Interaktionszustände und Vorgaben fest. Fordern Sie das generierte Artefakt getrennt von der Erklärung an, damit es im Entwicklungsablauf geprüft oder gerendert werden kann.
Benennen Sie bei einer bestehenden Oberfläche die beabsichtigte Änderung und den relevanten Quellkontext, statt eine sachfremde Neugestaltung anzufordern. Das Modell kann eine visuelle Anforderung mit einem Programmierungsvorschlag verbinden; dieser Vorschlag belegt nicht, dass die Oberfläche gerendert wurde oder sich korrekt verhält. Diese Aufgabenbeispiele wenden den visuellen Programmierbereich des Herstellers an, ohne eine Ausführungsgarantie hinzuzufügen.
Thinking und direkte Antworten
Der Leitfaden des Herstellers zu unterstützten Modellen führt Qwen3.7 Flash als Hybrid-Thinking-Familie mit standardmäßig aktiviertem Thinking an. Der dokumentierte hybride Ablauf kann Thinking für eine direkte Antwort deaktivieren. Halten Sie die Denkausgabe von der endgültigen Antwort getrennt, wenn eine Schnittstelle beide bereitstellt. Optionen eines gesondert benannten Qwen-Omni-Modells oder eines offenen dichten Modells dürfen nicht allein wegen des gemeinsamen Namens Qwen übernommen werden.
Nutzen Sie tiefere Analyse für eine visuelle Frage, die mehrere Beobachtungen verbindet; verlangen Sie für eine einfache Beschreibung ein direktes Ergebnis. Legen Sie eine überprüfbare abschließende Struktur fest, etwa eine Beobachtungstabelle, eine knappe Schlussfolgerung oder Codedateien, statt die Antwortlänge als Qualitätssignal zu verwenden.
Grenzen und Eingabevorbereitung
Alibabas eigene Qwen3.7-Flash-Seite nennt einen Kontext von 1,000,000 Tokens, eine maximale Eingabe von 991,808 Tokens für direkte Antworten oder 983,616 für Thinking und eine maximale Ausgabe von 131,072 in beiden Modi. Sie nennt gesondert eine maximale Chain-of-Thought-Länge von 262,144 Tokens. Halten Sie relevante visuelle Details lesbar, kürzen Sie sachfremdes Material und reservieren Sie Platz für das erforderliche Ergebnis. Prüfen Sie Objektbeschriftungen, räumliche Schlussfolgerungen, extrahierten Text und Codevorschläge anhand der bereitgestellten Belege. Die hilfreiche Beschreibung ist der konkrete Wahrnehmungs-, Agenten- und visuelle Programmierbereich des Herstellers unter Beibehaltung seines hybriden Antwortmodus.
Praktische Aufgabe
Praktische Aufgabe
Technisches Beispiel auf Englisch
Check a spatial claim from a text grid
Use this written grid description: the red box is at row 2, column 1; the blue box is at row 2, column 3; the green box is at row 1, column 3. Rows increase downward and columns increase rightward. Describe their relative positions and assess the claim that green is directly above red.Erwartetes Ergebnis
A relative-position description and a supported assessment of the claim, citing grid coordinates.Ergebnis prüfen
Check that directly above requires the same column and that the stated row direction is respected.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions qwen/qwen3.7-flash
qwen/qwen3.7-flashEinstieg
Qwen3.7 Flash ist Qwens Vision-Language-Modellfamilie für Text, Bilder und Video mit Textausgabe. Der Hersteller hebt stärkere Objekterkennung, räumliches Verständnis, multimodale Agentenarbeit und visuelle Codeerstellung hervor, mit standardmäßig aktiviertem Thinking und optionalem Direktantwortmodus.
- Zulässige Eingaben
- Text
- Ergebnisse
- Text
In Ailoot verfügbar · Eingaben und Methoden
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Eingabe
text- Ausgabe
text- Ausgabeformat
- json oder SSE
| Feld | Typ | Anforderung | Werte und Limits | Standard |
|---|---|---|---|---|
Feldmodel | Typstring | AnforderungErforderlich | Werte und Limits qwen/qwen3.7-flash | Standard— |
Feldmessages | Typmessage[] | AnforderungErforderlich | Werte und Limits Mindestanzahl Elemente: 1 | Standard— |
Feldmessages[].role | Typstring | AnforderungErforderlich | Werte und Limits Beispiele: system, user, assistant, tool, function Bedingungen: Diese Rollen sind in den Kompatibilitätstypen des Quellcodes ausdrücklich dargestellt; der genaue Rollenumfang bleibt modellspezifisch. Modellabhängig | Standard— |
Feldmessages[].content | Typstring|content_part[]|null | AnforderungOptional | Werte und Limits | Standard— |
Feldmessages[].tool_calls | Typtool_call[] | AnforderungOptional | Werte und Limits | Standard— |
Feldmessages[].tool_call_id | Typstring | AnforderungOptional | Werte und Limits Gilt, wenn: role=tool; die tatsächlich zurückgegebene ID verwenden | Standard— |
Feldmessages[].name | Typstring | AnforderungOptional | Werte und Limits | Standard— |
Feldmessages[].reasoning_content | Typstring | AnforderungOptional | Werte und Limits Gilt, wenn: Tatsächlich zurückgegebene Reasoning-Daten erneut übermitteln, sofern dieses Modell sie verwendet | Standard— |
Feldmessages[].reasoning_details | Typobject|array | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldmax_tokens | Typinteger | AnforderungOptional | Werte und Limits Minimum: 1 Modellabhängig | Standard— |
Feldmax_completion_tokens | Typinteger | AnforderungOptional | Werte und Limits Minimum: 1 Modellabhängig | Standard— |
Feldstream | Typboolean | AnforderungOptional | Werte und Limits | Standardfalse |
Feldstream_options.include_usage | Typboolean | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldtemperature | Typnumber | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldtop_p | Typnumber | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldstop | Typstring|string[] | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldtools | Typfunction_tool[] | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldtools[].type | Typstring | AnforderungOptional | Werte und Limits function Modellabhängig | Standard— |
Feldtools[].function.name | Typstring | AnforderungErforderlich | Werte und Limits Gilt, wenn: Funktionswerkzeug bereitgestellt | Standard— |
Feldtools[].function.description | Typstring | AnforderungOptional | Werte und Limits | Standard— |
Feldtools[].function.parameters | TypJSON_schema | AnforderungOptional | Werte und Limits | Standard— |
Feldtool_choice | Typstring|object | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldparallel_tool_calls | Typboolean | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldresponse_format | Typobject | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldreasoning_effort | Typstring | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldreasoning | Typobject | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldservice_tier | Typstring | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldinstructions | Typstring | AnforderungOptional | Werte und Limits Kompatibilitätsfeld | Standard— |
Feldfunctions | Typfunction[] | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldfunction_call | Typstring|object | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldprompt_cache_options | Typobject | AnforderungOptional | Werte und Limits Modellabhängig | Standard— |
Feldmodalities | Typstring[] | AnforderungOptional | Werte und Limits text | Standard— |
Feldprovider | Typobject | AnforderungOptional | Werte und Limits Bedingungen: provider.options wird auf dieser Ultra-Textroute abgelehnt | Standard— |
Feldcache_control.ttl | Typstring | AnforderungOptional | Werte und Limits Bedingungen: 1h wird in den tatsächlichen Prompt-Cache-Feldern abgelehnt | Standard— |
Kombinationen von Eingabematerialien
Text · UTF8-Text
messages[].content
Methodenparameter und Lebenszyklus
| Parameter | Vertrag |
|---|---|
Parametercontent_type | Vertragapplication/json |
Parameterrequired | Vertragmodel, messages |
Parametermaterial_types | Vertragtext |
Parametermessages | VertragNachrichtenarray mit role/content-Struktur |
Parameterfile_material | VertragTatsächliches UTF-8-Dokument als wörtlicher Text eingefügt; keine Datei-ID abgeleitet |
Parameteroptional_controls | Vertragstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametercontrol_scope | VertragModellspezifisch; benutzerseitige Funktionswerkzeuge unterscheiden sich von gehosteten Werkzeugen |
Parameteroutput_modalities | Vertragtext |
Parameterhosted_operations | Vertragfalse |
Parametermultimodal_input_binding | Vertragnull |
Lebenszyklus: synchronous_or_streamed
Die genaue Modell-ID zusammen mit messages senden.
Die Kontextlänge ist keine Ausgabeobergrenze.
Eine Textdatei kann wörtlichen Text liefern; Bild-, Audio- und Dateiobjekteingaben benötigen eine exakte Zuordnung.
Tarife
Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.
- Schnellmodus
- Standardtarif Wenn der Schnellmodus ausgewählt ist
- Flex-Modus
- Standardtarif Wenn der Modus flex ausgewählt ist
- Maximaler Denkaufwand
- Standardtarif Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird
Ailoot-Tarife
Preise nach Konfiguration
Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.
| Konfiguration | Tarifstaffel | Kontexttoken, mehr als | Kontexttoken, bis einschließlich | Gebühr |
|---|---|---|---|---|
| KonfigurationBasistarife für Token | TarifstaffelGrundtarif | Kontexttoken, mehr als— | Kontexttoken, bis einschließlichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00006 / 1K Tokens Ausgabe · Ausgabetoken $0.00026 / 1K Tokens Eingabe · Cache lesen $0.000012 / 1K Tokens Eingabe · In Cache schreiben $0.000076 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 1 | Tarifstaffel— | Kontexttoken, mehr als0 | Kontexttoken, bis einschließlich32 000 | Gebühr Eingabe · Eingabetoken $0.00006 / 1K Tokens Ausgabe · Ausgabetoken $0.00026 / 1K Tokens Eingabe · Cache lesen $0.000012 / 1K Tokens Eingabe · In Cache schreiben $0.000076 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 2 | Tarifstaffel— | Kontexttoken, mehr als32 000 | Kontexttoken, bis einschließlich256 000 | Gebühr Eingabe · Eingabetoken $0.0002 / 1K Tokens Ausgabe · Ausgabetoken $0.0008 / 1K Tokens Eingabe · Cache lesen $0.00004 / 1K Tokens Eingabe · In Cache schreiben $0.00025 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 3 | Tarifstaffel— | Kontexttoken, mehr als256 000 | Kontexttoken, bis einschließlichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.0004 / 1K Tokens Ausgabe · Ausgabetoken $0.0016 / 1K Tokens Eingabe · Cache lesen $0.00008 / 1K Tokens Eingabe · In Cache schreiben $0.0005 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →
Beispielanfragen
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "qwen/qwen3.7-flash", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='qwen/qwen3.7-flash',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
with client.chat.completions.stream(model='qwen/qwen3.7-flash',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
for event in stream:
payload=event.to_dict(mode="json")
log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
print(json.dumps(payload,ensure_ascii=False))
final=stream.get_final_completion()
save_result(final.to_dict(mode="json"),"stream-result")
Ergebnisse abrufen und speichern
Ailoot Ultra · OpenAI Chat
json oder SSE
Alle fertiggestellten Ergebnisse aufbewahren
Bewahren Sie jede vollständig zurückgegebene Antwort, Datei und jeden Inhaltsteil auf.
Alle Antwortvarianten mit ihren Inhalten, Werkzeugaufrufen und Reasoning-Daten beibehalten. In SSE die Deltas nach Varianten- und Werkzeugindex zusammensetzen; endgültigen Beendigungsgrund und Verbrauchsdaten beibehalten.
Wenn die ursprüngliche Antwort geprüft werden muss
Anfrage- und Antwort-IDs sowie Header beibehalten. Eine allgemeine URL zum Abrufen von Textaufträgen wird nicht angegeben.
Antwortfelder
| Feld | Typ |
|---|---|
Feldchoices[].index | Typinteger |
Feldchoices[].message.content | Typstring|null |
Feldchoices[].message.tool_calls | Typtool_call[] |
Feldchoices[].message.reasoning_content | Typstring |
Feldchoices[].message.reasoning_details | Typobject|array |
Feldchoices[].finish_reason | Typstring|null |
Feldusage | Typobject |
Fehler und nächste Schritte
| Antwort | Bedingung | Nächster Schritt |
|---|---|---|
Antwort400 · invalid_request_error | BedingungPflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültig | Nächster SchrittDie angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren. |
Aliasnamen
Modellaliasnamen
Ailoot Ultra qwen/qwen3.7-flash
Aliasnamen für Methodenpfade
Verwenden Sie die oben angezeigten Methodenpfade.
Zugehörige Aufrufer-IDs
Ailoot Ultra · Anthropic Messages POST /v1/messages qwen/qwen3.7-flash
qwen/qwen3.7-flashEinstieg
Qwen3.7 Flash ist Qwens Vision-Language-Modellfamilie für Text, Bilder und Video mit Textausgabe. Der Hersteller hebt stärkere Objekterkennung, räumliches Verständnis, multimodale Agentenarbeit und visuelle Codeerstellung hervor, mit standardmäßig aktiviertem Thinking und optionalem Direktantwortmodus.
- Zulässige Eingaben
- Text
- Ergebnisse
- json · sse
In Ailoot verfügbar · Eingaben und Methoden
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Eingabe
text- Ausgabe
json,sse- Ausgabeformat
- JSON oder SSE
| Feld | Typ | Anforderung | Werte und Limits | Standard |
|---|---|---|---|---|
Feldmodel | Typstring | AnforderungErforderlich | Werte und Limits qwen/qwen3.7-flash | Standard— |
Feldmessages | Typmessage[] | AnforderungErforderlich | Werte und Limits | Standard— |
Feldmessages[].role | Typstring | AnforderungErforderlich | Werte und Limits user, assistant | Standard— |
Feldmessages[].content | Typstring | AnforderungErforderlich | Werte und Limits | Standard— |
Feldmax_tokens | Typinteger | AnforderungErforderlich | Werte und Limits | Standard— |
Feldstream | Typboolean | AnforderungOptional | Werte und Limits | Standardfalse |
Kombinationen von Eingabematerialien
Text · UTF-8-Text
Zeichenfolge messages[].content
Methodenparameter und Lebenszyklus
| Parameter | Vertrag |
|---|---|
Parametercontent_type | Vertragapplication/json |
Parameterrequired | Vertragmodel, messages, max_tokens |
Parameteroptional_controls | Vertragstream |
Parametermaterial_types | Vertragtext |
Parametertext_file_material | VertragDas tatsächliche UTF-8-Dokument lesen und seinen Text in die angegebene Zeichenfolge für Eingabe oder Nachrichteninhalt einfügen. |
Lebenszyklus: synchronous_or_streamed
Tarife
Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.
- Schnellmodus
- Standardtarif Wenn der Schnellmodus ausgewählt ist
- Flex-Modus
- Standardtarif Wenn der Modus flex ausgewählt ist
- Maximaler Denkaufwand
- Standardtarif Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird
Ailoot-Tarife
Preise nach Konfiguration
Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.
| Konfiguration | Tarifstaffel | Kontexttoken, mehr als | Kontexttoken, bis einschließlich | Gebühr |
|---|---|---|---|---|
| KonfigurationBasistarife für Token | TarifstaffelGrundtarif | Kontexttoken, mehr als— | Kontexttoken, bis einschließlichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00006 / 1K Tokens Ausgabe · Ausgabetoken $0.00026 / 1K Tokens Eingabe · Cache lesen $0.000012 / 1K Tokens Eingabe · In Cache schreiben $0.000076 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 1 | Tarifstaffel— | Kontexttoken, mehr als0 | Kontexttoken, bis einschließlich32 000 | Gebühr Eingabe · Eingabetoken $0.00006 / 1K Tokens Ausgabe · Ausgabetoken $0.00026 / 1K Tokens Eingabe · Cache lesen $0.000012 / 1K Tokens Eingabe · In Cache schreiben $0.000076 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 2 | Tarifstaffel— | Kontexttoken, mehr als32 000 | Kontexttoken, bis einschließlich256 000 | Gebühr Eingabe · Eingabetoken $0.0002 / 1K Tokens Ausgabe · Ausgabetoken $0.0008 / 1K Tokens Eingabe · Cache lesen $0.00004 / 1K Tokens Eingabe · In Cache schreiben $0.00025 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 3 | Tarifstaffel— | Kontexttoken, mehr als256 000 | Kontexttoken, bis einschließlichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.0004 / 1K Tokens Ausgabe · Ausgabetoken $0.0016 / 1K Tokens Eingabe · Cache lesen $0.00008 / 1K Tokens Eingabe · In Cache schreiben $0.0005 / 1K Tokens Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens |
Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →
Beispielanfragen
Ailoot Ultra · Anthropic Messages
{
"model": "qwen/qwen3.7-flash",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'qwen/qwen3.7-flash', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'qwen/qwen3.7-flash', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
Ergebnisse abrufen und speichern
Ailoot Ultra · Anthropic Messages
JSON oder SSE
Alle fertiggestellten Ergebnisse aufbewahren
Bewahren Sie jede vollständig zurückgegebene Antwort, Datei und jeden Inhaltsteil auf.
Alle Inhaltsblöcke, Thinking-Signaturen und tatsächlichen Werkzeugaufruf-IDs beibehalten. Alle SSE-Blockdeltas zusammensetzen; der erste Textblock ist nicht die vollständige Ausgabe.
Wenn die ursprüngliche Antwort geprüft werden muss
Anfrage- und Antwort-IDs sowie Header beibehalten. Eine allgemeine URL zum Abrufen von Textaufträgen wird nicht angegeben.
Antwortfelder
| Feld | Typ |
|---|---|
Feldid | Typstring |
Feldmodel | Typstring |
Feldcontent[] | Typtext|thinking|tool_use|other content block |
Feldstop_reason | Typstring|null |
Feldusage | Typobject |
Fehler und nächste Schritte
| Antwort | Bedingung | Nächster Schritt |
|---|---|---|
Antwort400 · invalid_request_error | BedingungPflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültig | Nächster SchrittDie angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren. |
Aliasnamen
Modellaliasnamen
Ailoot Ultra qwen/qwen3.7-flash
Aliasnamen für Methodenpfade
Verwenden Sie die oben angezeigten Methodenpfade.
Zugehörige Aufrufer-IDs
FAQ · Qwen: Qwen3.7 Flash
- Welche Eingaben und Ergebnisse sind verfügbar?
POST /v1/chat/completions·qwen/qwen3.7-flash:text→textPOST /v1/messages·qwen/qwen3.7-flash:text→json,sse- Welche Felder verwendet die Anfrage?
POST /v1/chat/completions·qwen/qwen3.7-flash:model,messages,stream,modalities,providerPOST /v1/messages·qwen/qwen3.7-flash:model,messages,max_tokens,stream- Welche Grenzen gelten?
POST /v1/chat/completions·qwen/qwen3.7-flash:messages.min_items:1