Qwen: Qwen3.5-27B
Qwen3.5-27B ist Qwens dichtes Vision-Language-Modell mit 27 Milliarden Parametern für Text, Bilder und Video mit Textausgabe. Es unterstützt Schlussfolgern, Programmierung, werkzeuggestützte Arbeit und mehrsprachige Aufgaben, mit wählbarem Denkmodus und einem nativen Kontext von 262,144 Token.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsqwen/qwen3.5-27b - Ailoot Ultra · Anthropic Messages
POST /v1/messagesqwen/qwen3.5-27b
Ü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 Stärken von Qwen3.5 in der dichten 27B-Edition
Qwen3.5-27B ist ein nachtrainiertes dichtes Vision-Language-Modell. Text, Bilder und Video können in einer Aufgabe zusammenwirken; das Ergebnis ist Text: eine Erklärung, ein Codevorschlag, extrahierte Informationen oder ein anderes angefordertes Arbeitsergebnis. Die frühe Fusion von textlichem und visuellem Training der Familie entwickelt Schlussfolgerungs-, Programmier-, Agenten- und visuelle Fähigkeiten, mit Reinforcement Learning über zunehmend komplexe Aufgaben und Unterstützung von 201 Sprachen und Dialekten.
Diese Sprachabdeckung hilft bei der Ausrichtung mehrsprachiger Aufgaben, garantiert aber keine identische Zuverlässigkeit für jeden Dialekt oder Fachwortschatz. Geben Sie die Zielsprache, Zielgruppe und die unverändert zu belassenden Begriffe an. Kennzeichnen Sie bei einem sprachübergreifenden Dokumentvergleich jede Quelle und fordern Sie ein Ergebnis an, das nach den zu vergleichenden Fakten oder Fragen gegliedert ist.
Modellübersicht
Die genaue 27B-Edition ist dicht und besitzt 64 Sprachmodellschichten sowie einen Vision-Encoder. Ihre hybride Architektur wechselt zwischen Gruppen aus drei Gated-DeltaNet-Schichten und einer Schicht mit Gated Attention unter Verwendung dichter Feedforward-Netze. Multi-Token Prediction ist Teil des Trainings. Die für andere Qwen3.5-Größen beschriebene spärlich aktivierte Mixture-of-Experts-Architektur sollte diesem Modell nicht zugeschrieben werden; seine Identität mit 27 Milliarden Parametern ist seine eigene Checkpoint-Spezifikation.
Der native Kontext umfasst 262,144 Token, mit einer bedingten Erweiterung auf 1,010,000. Qwen empfiehlt für komplexe Aufgaben im Denkmodus nach Möglichkeit einen Kontext von mindestens 128K beizubehalten, erlaubt jedoch kleinere Einstellungen, wenn Speicherbeschränkungen dies erfordern. Dies ist eine Konfigurationsempfehlung und kein Beleg dafür, dass jede Schnittstelle den vollständigen Kontext zugänglich macht. Ausgangstext, visuelle Token, Verlauf, Denkprozess und Antwort teilen sich das Sequenzbudget.
Text und visuelle Inhalte vorbereiten
Bewahren Sie bei einem technischen Dokument Abschnittskennungen und verlangen Sie eine Anforderungstabelle oder Erklärung, die von diesen Abschnitten gestützt wird. Erhalten Sie bei einem Diagramm die Beschriftungen und stellen Sie Definitionen bereit, die im Bild nicht sichtbar sind. Geben Sie für eine Programmieraufgabe die relevante Funktion, das beobachtete Verhalten und das erforderliche Ergebnis an. Eine nützliche Antwort sollte die verwendeten Belege benennen, Annahmen getrennt ausweisen und das fertige Arbeitsergebnis in einer überprüfbaren Form zurückgeben.
Benennen Sie bei einer Videofrage das relevante Ereignis oder die Abfolge und erhalten Sie Zeitinformationen und Bildreihenfolge. Das Herstellerbeispiel verwendet im unterstützten Ablauf zwei Bilder pro Sekunde. Seine Hinweise zu langen Videos empfehlen für die Analyse stundenlangen Materials mit höherer Abtastrate ein größeres Prozessorbudget, das ungefähr 224K Video-Token entspricht. Diese Einstellungen erfordern Konfiguration und begründen keine allgemeingültige Garantie für Dauer oder genaue Ereigniszeitstempel.
Denkmodus und direkte Antworten
Der Denkmodus ist standardmäßig aktiviert und geht der endgültigen Antwort voraus. enable_thinking kann ihn für eine direkte Antwort deaktivieren. Qwen3.5 unterstützt die älteren weichen Umschalter /think und /nothink nicht offiziell. Der Hersteller empfiehlt, in früheren Assistentennachrichten nur den Text der endgültigen Antwort statt des Denkinhalts beizubehalten. Dies sind die Vorgaben für Qwen3.5; sie sollten vom für spätere Veröffentlichungen dokumentierten Verhalten zur Beibehaltung früherer Schlussfolgerungen getrennt bleiben.
Wählen Sie vor dem Absenden der Aufgabe eine endgültige Form: eine kurze Schlussfolgerung mit unterstützenden Werten, eine Tabelle extrahierter Felder oder einen erläuterten Codepatch. Eine direkte Antwort bleibt eine generierte Antwort, die geprüft werden muss; ein ausführliches Denkprotokoll ist kein unabhängiger Beleg für die Richtigkeit seiner Schlussfolgerung.
Nutzung als Agent
Der Hersteller unterstützt Werkzeugaufrufe und empfiehlt Qwen-Agent mit konfigurierten oder über MCP angeschlossenen Werkzeugen sowie Qwen Code für Abläufe mit Programmieragenten. Geben Sie den Werkzeugen der Anwendung eine klare Rolle und liefern Sie ihre tatsächlichen Beobachtungen an das Modell zurück. Das Modell kann anhand dieser Rückmeldungen planen und überarbeiten, während die Anwendung die Aktionen ausführt. Werkzeugunterstützung allein belegt keinen integrierten Zugriff auf Internet, Dateien oder eine Codeausführungsumgebung über jede Schnittstelle.
Sehr langer Text
Die Erweiterung verwendet YaRN mit der eigenen Positionskonfiguration des Checkpoints. Ein Faktor von vier zielt auf den Ablauf mit ungefähr einer Million Token; für 524,288 Token wird ein Faktor von zwei empfohlen. Statische Skalierung kann die Qualität bei kürzerem Text senken. Der Hersteller empfiehlt sie daher, wenn der größere Kontext tatsächlich benötigt wird. Halten Sie langes Material geordnet und reservieren Sie Platz für die erforderliche Antwort, statt die größte Kontextzahl als unbegrenztes Erinnerungsvermögen für Dokumente zu interpretieren.
Empfehlungen zur Generierung und Grenzen
Die Best Practices empfehlen für allgemeine Aufgaben im Denkmodus temperature 1.0, top_p 0.95, top_k 20, min_p 0, presence penalty 1.5 und repetition penalty 1.0. Präzise Programmierung verwendet temperature 0.6 und presence penalty null. Allgemeine direkte Antworten verwenden temperature 0.7, top_p 0.8 und presence penalty 1.5; top_k beträgt 20, min_p beträgt 0 und repetition penalty beträgt 1.0. Schlussfolgern mit direkter Antwort verwendet die gesonderte Best-Practices-Voreinstellung mit 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 senken.
Die empfohlenen Generierungsbudgets betragen 32,768 Token für die meisten Aufgaben und 81,920 für außergewöhnlich komplexe Mathematik oder Programmierung. Sie sind keine unabhängigen harten Ausgabegrenzen. Geben Sie das Antwortschema oder Trennzeichen ausdrücklich an und prüfen Sie Code, Berechnungen, Zitate und visuelle Details anhand der Quelle. Das nützliche Ergebnis ist ein konkretes Textdokument, bei dem die genaue dichte 27B-Identität, die Eingaben und der Antwortmodus erhalten bleiben.
Praktische Aufgabe
Praktische Aufgabe
Technisches Beispiel auf Englisch
Compare a multilingual specification
Compare these two product notes and write the finding in English. [EN] "Store at 5-25 C. Keep the lid closed." [FR] "Conserver entre 5 et 20 C. Garder le couvercle fermé." Identify matching instructions, the temperature discrepancy and a clarification question for the author. Preserve both source ranges without deciding which is correct.Erwartetes Ergebnis
A source-labelled English comparison with matching lid guidance, differing ranges and one unresolved question.Ergebnis prüfen
Check that 20 C and 25 C remain distinct and neither language is assumed authoritative.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions qwen/qwen3.5-27b
qwen/qwen3.5-27bStart
Qwen3.5-27B ist Qwens dichtes Vision-Language-Modell mit 27 Milliarden Parametern für Text, Bilder und Video mit Textausgabe. Es unterstützt Schlussfolgern, Programmierung, werkzeuggestützte Arbeit und mehrsprachige Aufgaben, 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
- Eingabetypen
text- Ausgabetypen
text- Ausgabeformat
- json oder SSE
| Feld | Typ | Anforderung | Werte und Limits | Standard |
|---|---|---|---|---|
Feldmodel | Typstring | AnforderungErforderlich | Werte und Limits qwen/qwen3.5-27b | 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.00052 / 1K Token Ausgabe · Ausgabetoken $0.00412 / 1K Token Eingabe · Cache-Lesen $0 / 1K Token Eingabe · Cache-Schreiben $0 / 1K Token Eingabe · Cache-Schreiben, 1 Stunde — / 1K Token |
| KonfigurationAnfragelängenstufe 1 | Tarifstaffel— | Kontexttoken, mehr als0 | Kontexttoken, bis einschließlichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00052 / 1K Token Ausgabe · Ausgabetoken $0.00412 / 1K Token Eingabe · Cache-Lesen $0 / 1K Token Eingabe · Cache-Schreiben $0 / 1K Token Eingabe · Cache-Schreiben, 1 Stunde — / 1K Token |
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.5-27b", "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-27b',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-27b',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-27b
Aliasnamen für Methodenpfade
Verwenden Sie die oben angezeigten Methodenpfade.
Zugehörige Aufrufer-IDs
Ailoot Ultra · Anthropic Messages POST /v1/messages qwen/qwen3.5-27b
qwen/qwen3.5-27bStart
Qwen3.5-27B ist Qwens dichtes Vision-Language-Modell mit 27 Milliarden Parametern für Text, Bilder und Video mit Textausgabe. Es unterstützt Schlussfolgern, Programmierung, werkzeuggestützte Arbeit und mehrsprachige Aufgaben, 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
- Eingabetypen
text- Ausgabetypen
json,sse- Ausgabeformat
- JSON oder SSE
| Feld | Typ | Anforderung | Werte und Limits | Standard |
|---|---|---|---|---|
Feldmodel | Typstring | AnforderungErforderlich | Werte und Limits qwen/qwen3.5-27b | 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.00052 / 1K Token Ausgabe · Ausgabetoken $0.00412 / 1K Token Eingabe · Cache-Lesen $0 / 1K Token Eingabe · Cache-Schreiben $0 / 1K Token Eingabe · Cache-Schreiben, 1 Stunde — / 1K Token |
| KonfigurationAnfragelängenstufe 1 | Tarifstaffel— | Kontexttoken, mehr als0 | Kontexttoken, bis einschließlichKeine Obergrenze | Gebühr Eingabe · Eingabetoken $0.00052 / 1K Token Ausgabe · Ausgabetoken $0.00412 / 1K Token Eingabe · Cache-Lesen $0 / 1K Token Eingabe · Cache-Schreiben $0 / 1K Token Eingabe · Cache-Schreiben, 1 Stunde — / 1K Token |
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.5-27b",
"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-27b', '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-27b', '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-27b
Aliasnamen für Methodenpfade
Verwenden Sie die oben angezeigten Methodenpfade.
Zugehörige Aufrufer-IDs
FAQ · Qwen: Qwen3.5-27B
- Welche Eingaben und Ergebnisse sind verfügbar?
POST /v1/chat/completions·qwen/qwen3.5-27b:text→textPOST /v1/messages·qwen/qwen3.5-27b:text→json,sse- Welche Felder verwendet die Anfrage?
POST /v1/chat/completions·qwen/qwen3.5-27b:model,messages,stream,modalities,providerPOST /v1/messages·qwen/qwen3.5-27b:model,messages,max_tokens,stream- Welche Grenzen gelten?
POST /v1/chat/completions·qwen/qwen3.5-27b:messages.min_items:1