Qwen: Qwen3.5-122B-A10B
Qwen3.5-122B-A10B ist Qwens Vision-Language-Mixture-of-Experts-Modell mit insgesamt 122 Milliarden und 10 Milliarden aktivierten Parametern. Es verarbeitet Text, Bilder und Video für Schlussfolgerungs-, Programmier- und Agentenaufgaben und liefert Text mit wählbarem Denkmodus und einem nativen Kontext von 262,144 Token.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsqwen/qwen3.5-122b-a10b - Ailoot Ultra · Anthropic Messages
POST /v1/messagesqwen/qwen3.5-122b-a10b
Ü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.
Qwen3.5: Stärken des Expertenmodells 122B-A10B
Qwen3.5-122B-A10B ist ein nachtrainiertes Vision-Language-Modell für gemeinsame Aufgaben mit Text und visuellen Inhalten. Es akzeptiert Text, Bilder und Video und gibt Text zurück, einschliesslich Erklärungen, Codevorschlägen und angeforderten Dokumentartefakten. Die Familie entsteht durch frühe Text-Bild-Fusion und Reinforcement Learning mit zunehmend komplexen Aufgaben und entwickelt Schlussfolgern, Programmierung, Agenten und visuelles Verständnis. Sie beschreibt eine Abdeckung von 201 Sprachen und Dialekten, ohne damit identische Zuverlässigkeit für jede Sprache oder Domäne zu behaupten.
Eine nützliche Aufgabe kann eine technische Spezifikation, Diagramme und relevanten Code verbinden und das Modell bitten, die Komponenten zu erklären und einen Implementierungsvorschlag zurückzugeben. Eine Dokumentanalyse kann einen Vergleich mit stützenden Abschnitts- oder Seitenverweisen verlangen.
Modellübersicht
Der dünn besetzte Mixture-of-Experts-Checkpoint besitzt insgesamt 122 Milliarden Parameter und aktiviert zehn Milliarden. Er hat 48 Sprachmodellschichten, mit Gruppen aus drei Gated-DeltaNet-Expertenschichten und anschliessend einer Expertenschicht mit Gated Attention. Der Hersteller nennt 256 geroutete Experten, von denen acht zusammen mit einem gemeinsamen Experten ausgewählt werden. Ein Vision-Encoder und Multi-Token Prediction sind Teil des Modells. Die Gesamtzahl und die Zahl aktivierter Parameter haben unterschiedliche Bedeutungen; die aktivierte Zahl entspricht nicht der vollständigen Checkpoint-Grösse.
Dies ist eine eigenständige Ausgabe gegenüber dem dichten Qwen3.5-27B, dem dünn besetzten Qwen3.5-35B-A3B und späteren Modellgenerationen. Leiten Sie allein aus der Grösse keine allgemeine Leistungs- oder Latenzrangfolge ab. Der native Kontext beträgt 262,144 Token, und die dokumentierte Erweiterung erreicht per Konfiguration 1,010,000. Qwen empfiehlt für komplexes Schlussfolgern nach Möglichkeit mindestens einen 128K-Kontext beizubehalten und berücksichtigt zugleich, dass Speicherdruck ein kleineres Fenster erfordern kann.
Text und visuelle Belege gemeinsam vorbereiten
Erhalten Sie Diagrammbeschriftungen, Diagrammachsen, Tabellenüberschriften und Einheiten. Geben Sie an, ob das Ergebnis eine Beziehung erklären, benannte Felder extrahieren oder Code vorschlagen soll. Kennzeichnen Sie mehrere relevante Quellen und verlangen Sie eine nach denselben Kennungen gegliederte Ausgabe. Trennen Sie sichtbare Fakten von Annahmen, damit Prüfende den Denkweg zum gelieferten Material zurückverfolgen können.
Benennen Sie für eine Programmieranfrage das beabsichtigte Verhalten, den relevanten Quellcode und eine Eingabe, die das Problem demonstriert. Verlangen Sie einen bearbeitbaren Patch mit einer Erklärung der betroffenen Bedingungen und Prüfungen. Erhalten Sie bei Video Ereignisreihenfolge und Zeitangaben und präzisieren Sie die Frage, statt eine undifferenzierte Zusammenfassung zu verlangen. Das Textergebnis des Modells ist ein zu prüfendes Entwurfsartefakt; visuelle Eingabefähigkeit bedeutet keine Bild-, Video- oder Sprachgenerierung.
Denkmodus und Verlauf
Der Denkmodus ist standardmässig aktiviert, mit dem Denkverlauf vor der endgültigen Antwort. Die Herstellereinstellung enable_thinking kann ihn für direkte Antworten deaktivieren. Die alten Soft-Schalter /think und /nothink werden offiziell nicht unterstützt. Qwen3.5 empfiehlt, in früheren Assistentennachrichten endgültige Antworten ohne Denkinhalt zu bewahren. Dies darf nicht allein wegen eines gemeinsamen Familiennamens durch Aufbewahrungsoptionen späterer Qwen-Generationen ersetzt werden.
Machen Sie das Endergebnis leicht auffindbar, etwa als definiertes Antwortfeld, abgegrenzten Wert oder getrenntes Codeartefakt. Eine direkte Antwort muss weiterhin geprüft werden; längeres Schlussfolgern ist nur dann nützlich, wenn seine Schritte eine überprüfbare Schlussfolgerung stützen.
Agenteneinsatz
Qwen dokumentiert Tool Calling und empfiehlt Qwen-Agent mit konfigurierten oder über MCP angebundenen Werkzeugen sowie Qwen Code für Programmieragentenarbeit. Definieren Sie erlaubte Aktionen, verfügbare Belege und Abschlusskriterien. Angebundene Werkzeuge führen Operationen aus und liefern Ergebnisse zurück; das Modell nutzt diese Rückmeldungen in seiner Analyse. Ein vorgeschlagener Befehl, eine Abrufanfrage oder ein Patch sollte von einer tatsächlich durch die Anwendung abgeschlossenen Aktion getrennt bleiben.
Sehr langer Kontext und Video
Die Erweiterung des Herstellers verwendet YaRN mit den verschachtelten Positionseinstellungen des Checkpoints. Ein Faktor von vier zielt auf den Ablauf mit ungefähr einer Million Token; für Arbeitslasten mit 524,288 Token wird zwei vorgeschlagen. Statische Skalierung kann die Leistung bei kürzeren Texten beeinträchtigen und sollte deshalb einem tatsächlichen Bedarf an grösserem Kontext folgen. Eingabe, visuelle Repräsentationen, Verlauf, Denkverlauf und endgültige Antwort nutzen alle das konfigurierte Sequenzbudget.
Das unterstützte Videobeispiel verwendet standardmässig zwei Bilder pro Sekunde. Für Material im Stundenbereich empfiehlt der Hersteller, das Prozessorbudget auf ungefähr 224K Video-Token für eine höhere Abtastrate zu erhöhen. Dies ist eine konfigurationsabhängige Anleitung, keine allgemeingültige Garantie für Mediendauer, vollständige Erinnerung oder Zeitstempelpräzision.
Empfehlungen zur Generierung und inhaltliche Grenzen
Die Best Practices empfehlen für allgemeines Schlussfolgern temperature 1.0, top_p 0.95, top_k 20, min_p 0, eine Presence Penalty von 1.5 und eine Repetition Penalty von 1.0. Präzise Programmierung verwendet temperature 0.6 und eine Presence Penalty von null. Allgemeine direkte Antworten verwenden temperature 0.7, top_p 0.8 und eine Presence Penalty von 1.5; top_k beträgt 20, min_p 0 und die Repetition Penalty 1.0. Schlussfolgern mit direkter Antwort hat eine separate Voreinstellung: temperature 1.0, top_p 1.0, top_k 40 und Presence Penalty 2.0. Höhere Presence Penalties können Sprachen vermischen oder die Qualität leicht mindern.
Empfohlene Generierungsbudgets sind 32,768 Token für die meisten Anfragen und 81,920 für ungewöhnlich komplexe Mathematik- oder Programmierarbeit; sie sind keine separat festgelegten harten Ausgabeobergrenzen. Definieren Sie das angeforderte Format, erhalten Sie Quellenkennungen und prüfen Sie Berechnungen, extrahierte Werte und vorgeschlagenen Code anhand der Originalbelege. Das nützliche Ergebnis ist ein vollständiges Textartefakt, dessen Annahmen und stützendes Material sichtbar bleiben.
Praktische Aufgabe
Praktische Aufgabe
Technisches Beispiel auf Englisch
Check a process graph against its rule
A process specification says validation must complete before persistence. Textual graph G1 is receive -> persist -> validate -> acknowledge. Code excerpt: save(record); validate(record); return "accepted". Propose an implementation correction and update the graph in text. Include a test showing that an invalid record never reaches save.Erwartetes Ergebnis
A corrected sequence diagram in text, a focused code proposal and a test using an invalid record.Ergebnis prüfen
Check that the graph and code agree on validate-before-save and that acknowledgment follows successful persistence.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions qwen/qwen3.5-122b-a10b
qwen/qwen3.5-122b-a10bEinstieg
Qwen3.5-122B-A10B ist Qwens Vision-Language-Mixture-of-Experts-Modell mit insgesamt 122 Milliarden und 10 Milliarden aktivierten Parametern. Es verarbeitet Text, Bilder und Video für Schlussfolgerungs-, Programmier- und Agentenaufgaben und liefert Text mit wählbarem Denkmodus und einem nativen Kontext von 262,144 Token.
- 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.5-122b-a10b | 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 einschliesslich | Gebühr |
|---|---|---|---|---|
| KonfigurationBasistarife für Token | TarifstaffelGrundtarif | Kontexttoken, mehr als— | Kontexttoken, bis einschliesslichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00058 / 1K Tokens Ausgabe · Ausgabetoken $0.00458 / 1K Tokens Eingabe · Cache lesen $0 / 1K Tokens Eingabe · Cache schreiben $0 / 1K Tokens Eingabe · Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 1 | Tarifstaffel— | Kontexttoken, mehr als0 | Kontexttoken, bis einschliesslichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00058 / 1K Tokens Ausgabe · Ausgabetoken $0.00458 / 1K Tokens Eingabe · Cache lesen $0 / 1K Tokens Eingabe · Cache schreiben $0 / 1K Tokens Eingabe · 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 abschliessenden 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.5-122b-a10b", "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.5-122b-a10b',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.5-122b-a10b',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.5-122b-a10b
Aliasnamen für Methodenpfade
Verwenden Sie die oben angezeigten Methodenpfade.
Zugehörige Aufrufer-IDs
Ailoot Ultra · Anthropic Messages POST /v1/messages qwen/qwen3.5-122b-a10b
qwen/qwen3.5-122b-a10bEinstieg
Qwen3.5-122B-A10B ist Qwens Vision-Language-Mixture-of-Experts-Modell mit insgesamt 122 Milliarden und 10 Milliarden aktivierten Parametern. Es verarbeitet Text, Bilder und Video für Schlussfolgerungs-, Programmier- und Agentenaufgaben und liefert Text mit wählbarem Denkmodus und einem nativen Kontext von 262,144 Token.
- 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.5-122b-a10b | 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 einschliesslich | Gebühr |
|---|---|---|---|---|
| KonfigurationBasistarife für Token | TarifstaffelGrundtarif | Kontexttoken, mehr als— | Kontexttoken, bis einschliesslichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00058 / 1K Tokens Ausgabe · Ausgabetoken $0.00458 / 1K Tokens Eingabe · Cache lesen $0 / 1K Tokens Eingabe · Cache schreiben $0 / 1K Tokens Eingabe · Cache schreiben, 1 Stunde — / 1K Tokens |
| KonfigurationAnfragelängenstufe 1 | Tarifstaffel— | Kontexttoken, mehr als0 | Kontexttoken, bis einschliesslichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00058 / 1K Tokens Ausgabe · Ausgabetoken $0.00458 / 1K Tokens Eingabe · Cache lesen $0 / 1K Tokens Eingabe · Cache schreiben $0 / 1K Tokens Eingabe · 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 abschliessenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →
Beispielanfragen
Ailoot Ultra · Anthropic Messages
{
"model": "qwen/qwen3.5-122b-a10b",
"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.5-122b-a10b', '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.5-122b-a10b', '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.5-122b-a10b
Aliasnamen für Methodenpfade
Verwenden Sie die oben angezeigten Methodenpfade.
Zugehörige Aufrufer-IDs
FAQ · Qwen: Qwen3.5-122B-A10B
- Welche Eingaben und Ergebnisse sind verfügbar?
POST /v1/chat/completions·qwen/qwen3.5-122b-a10b:text→textPOST /v1/messages·qwen/qwen3.5-122b-a10b:text→json,sse- Welche Felder verwendet die Anfrage?
POST /v1/chat/completions·qwen/qwen3.5-122b-a10b:model,messages,stream,modalities,providerPOST /v1/messages·qwen/qwen3.5-122b-a10b:model,messages,max_tokens,stream- Welche Grenzen gelten?
POST /v1/chat/completions·qwen/qwen3.5-122b-a10b:messages.min_items:1