modele

Qwen: Qwen3.5-122B-A10B

Markdown · JSON

Qwen: Qwen3.5-122B-A10B

Qwen3.5-122B-A10B to model wizyjno-językowy Qwen z architekturą mieszaniny ekspertów, liczący łącznie 122 miliardy parametrów i aktywujący 10 miliardów. Przyjmuje tekst, obrazy i wideo do zadań rozumowania, programowania i pracy agentów, zwracając tekst z wybieralnym rozumowaniem oraz natywnym kontekstem 262,144 tokenów.

O modelu

Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.

Najważniejsze cechy Qwen3.5: model z ekspertami 122B-A10B

Qwen3.5-122B-A10B to model wizyjno-językowy poddany dodatkowemu treningowi, przeznaczony do wspólnych zadań tekstowych i wizualnych. Przyjmuje tekst, obrazy i wideo oraz zwraca tekst, w tym wyjaśnienia, propozycje kodu i zamówione artefakty dokumentowe. Rodzina powstaje dzięki wczesnej fuzji tekstu z obrazem oraz uczeniu ze wzmocnieniem na zadaniach o stopniowo rosnącej złożoności, rozwijając rozumowanie, programowanie, agentów i rozumienie obrazu. Jej opis obejmuje 201 języków i dialektów, bez sugestii, że każdy język lub każda dziedzina cechują się identyczną niezawodnością.

Przydatne zadanie może łączyć specyfikację techniczną, diagramy i odpowiedni kod, wymagając od modelu objaśnienia komponentów i zwrócenia propozycji implementacji. Zadanie analizy dokumentów może wymagać porównania z odwołaniami do sekcji lub stron uzasadniających ustalenia.

Przegląd modelu

Checkpoint z rzadką architekturą mieszaniny ekspertów ma łącznie 122 miliardy parametrów i aktywuje dziesięć miliardów. Ma 48 warstw modelu językowego, z grupami trzech warstw ekspertów Gated DeltaNet, po których następuje jedna warstwa ekspertów z uwagą bramkowaną. Producent podaje 256 ekspertów wybieranych przez mechanizm routingu, z których wybieranych jest ośmiu wraz z jednym ekspertem współdzielonym. Model obejmuje enkoder obrazu i predykcję wielu tokenów. Całkowita i aktywowana liczba parametrów mają różne znaczenia; liczba aktywowanych parametrów nie jest pełnym rozmiarem checkpointu.

To odrębna edycja od gęstego Qwen3.5-27B, rzadkiego Qwen3.5-35B-A3B i późniejszych generacji modeli. Nie wyciągaj z samego rozmiaru wniosku o ogólnym rankingu wydajności lub opóźnień. Natywny kontekst wynosi 262,144 tokenów, a udokumentowane rozszerzenie po skonfigurowaniu sięga 1,010,000. Qwen zaleca zachowanie co najmniej 128K kontekstu, w miarę możliwości, dla złożonego rozumowania, uznając jednocześnie, że obciążenie pamięci może wymagać mniejszego okna.

Przygotowanie wspólnych dowodów tekstowych i wizualnych

Zachowaj etykiety diagramów, osie wykresów, nagłówki tabel i jednostki. Określ, czy wynik ma wyjaśniać zależność, wyodrębniać nazwane pola czy proponować kod. Gdy istotnych jest kilka źródeł, oznacz je i poproś o wynik uporządkowany według tych samych identyfikatorów. Oddziel widoczne fakty od założeń, aby osoba oceniająca mogła prześledzić powiązanie rozumowania z dostarczonym materiałem.

W poleceniu programistycznym wskaż zamierzone zachowanie, odpowiedni kod źródłowy i dane wejściowe ilustrujące problem. Poproś o edytowalną poprawkę z objaśnieniem warunków, na które wpływa zmiana, oraz sprawdzeń. W przypadku wideo zachowaj sekwencję zdarzeń i informacje o czasie oraz sprecyzuj pytanie, zamiast wymagać ogólnego streszczenia bez rozróżnień. Tekstowy wynik modelu jest roboczym artefaktem do oceny; możliwość przyjmowania materiałów wizualnych nie oznacza generowania obrazów, wideo ani mowy.

Rozumowanie i historia

Rozumowanie jest domyślnie włączone i poprzedza odpowiedź końcową. Ustawienie enable_thinking producenta pozwala je wyłączyć dla odpowiedzi bezpośrednich. Dawne miękkie przełączniki /think i /nothink nie są oficjalnie obsługiwane. Qwen3.5 zaleca zachowywanie odpowiedzi końcowych bez treści rozumowania w historycznych wiadomościach asystenta. Nie należy zastępować tego opcjami zachowywania historii z późniejszych generacji Qwen tylko dlatego, że mają wspólną nazwę rodziny.

Zadbaj, aby wynik końcowy był łatwy do znalezienia, na przykład jako zdefiniowane pole odpowiedzi, wartość z wyraźnymi separatorami lub osobny artefakt kodu. Odpowiedź bezpośrednia nadal wymaga sprawdzenia, a dłuższe rozumowanie jest przydatne tylko wtedy, gdy jego kroki uzasadniają weryfikowalny wniosek.

Zastosowania agentowe

Qwen dokumentuje wywoływanie narzędzi i zaleca Qwen-Agent z narzędziami skonfigurowanymi lub połączonymi przez MCP, a także Qwen Code do pracy agentów programistycznych. Zdefiniuj dozwolone działania, dostępne dowody i kryteria zakończenia. Połączone narzędzia wykonują operacje i zwracają wyniki; model wykorzystuje te informacje zwrotne w analizie. Proponowane polecenie, zapytanie wyszukiwawcze lub poprawka powinny pozostać odrębne od działania rzeczywiście zakończonego przez aplikację.

Bardzo długi kontekst i wideo

Rozszerzenie producenta wykorzystuje YaRN z przeplatanymi ustawieniami pozycyjnymi checkpointu. Współczynnik cztery służy do pracy z kontekstem liczącym około miliona tokenów, a współczynnik dwa jest sugerowany dla zadań liczących 524,288 tokenów. Statyczne skalowanie może wpływać na wydajność przy krótszym tekście, dlatego powinno odpowiadać rzeczywistej potrzebie większego kontekstu. Dane wejściowe, reprezentowane materiały wizualne, historia, rozumowanie i odpowiedź końcowa wykorzystują skonfigurowany budżet sekwencji.

Obsługiwany przykład wideo domyślnie wykorzystuje dwie klatki na sekundę. W przypadku materiałów o długości rzędu godzin producent zaleca zwiększenie budżetu procesora do około 224K tokenów wideo przy częstszym próbkowaniu. To instrukcja zależna od konfiguracji, a nie uniwersalna gwarancja długości mediów, kompletnego odtworzenia informacji lub precyzji znaczników czasu.

Zalecenia dotyczące generowania i istotne ograniczenia

Best Practices zalecają temperature 1.0, top_p 0.95, top_k 20, min_p 0, karę za obecność 1.5 i karę za powtórzenia 1.0 dla ogólnego rozumowania. Precyzyjne programowanie wykorzystuje temperature 0.6 i zerową karę za obecność. Ogólne odpowiedzi bezpośrednie wykorzystują temperature 0.7, top_p 0.8 i karę za obecność 1.5; top_k wynosi 20, min_p wynosi 0, a kara za powtórzenia 1.0. Rozumowanie z odpowiedzią bezpośrednią ma osobny zestaw ustawień: temperature 1.0, top_p 1.0, top_k 40 i karę za obecność 2.0. Wyższe kary za obecność mogą powodować mieszanie języków lub niewielki spadek jakości.

Zalecane limity generowania wynoszą 32,768 tokenów dla większości zapytań i 81,920 dla wyjątkowo złożonych zadań matematycznych lub programistycznych; nie są to osobno ustanowione twarde limity długości wyjścia. Zdefiniuj wymagany format, zachowaj identyfikatory źródeł i sprawdź obliczenia, wyodrębnione wartości oraz proponowany kod względem oryginalnych dowodów. Przydatny rezultat to kompletny artefakt tekstowy z widocznymi założeniami i materiałami uzasadniającymi.

Zadanie praktyczne

Zadanie praktyczne

Przykład techniczny po angielsku

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.

Oczekiwany wynik

A corrected sequence diagram in text, a focused code proposal and a test using an invalid record.

Sprawdź wynik

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-a10b

Alibaba /qwen/qwen3.5-122b-a10b

Start

Qwen3.5-122B-A10B to model wizyjno-językowy Qwen z architekturą mieszaniny ekspertów, liczący łącznie 122 miliardy parametrów i aktywujący 10 miliardów. Przyjmuje tekst, obrazy i wideo do zadań rozumowania, programowania i pracy agentów, zwracając tekst z wybieralnym rozumowaniem oraz natywnym kontekstem 262,144 tokenów.

Akceptowane dane wejściowe
Tekst
Wyniki
Tekst

Dostępne w Ailoot · dane wejściowe i metody

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Wejście
text
Wyjście
text
Format wyjściowy
json lub SSE
PoleTypWymaganieWartości i limityDomyślnie
PolemodelTypstringWymaganieWymaganeWartości i limity
qwen/qwen3.5-122b-a10b
Domyślnie—
PolemessagesTypmessage[]WymaganieWymaganeWartości i limity
Minimalna liczba elementów: 1
Domyślnie—
Polemessages[].roleTypstringWymaganieWymaganeWartości i limity
Przykłady: system, user, assistant, tool, function
Warunki: Te role są jawnie reprezentowane przez typy zgodności w kodzie źródłowym; dokładny zestaw ról pozostaje właściwy dla danego modelu.
Zależy od modelu
Domyślnie—
Polemessages[].contentTypstring|content_part[]|nullWymaganieOpcjonalneWartości i limityDomyślnie—
Polemessages[].tool_callsTyptool_call[]WymaganieOpcjonalneWartości i limityDomyślnie—
Polemessages[].tool_call_idTypstringWymaganieOpcjonalneWartości i limity
Obowiązuje, gdy: role=tool; użyj rzeczywiście zwróconego ID
Domyślnie—
Polemessages[].nameTypstringWymaganieOpcjonalneWartości i limityDomyślnie—
Polemessages[].reasoning_contentTypstringWymaganieOpcjonalneWartości i limity
Obowiązuje, gdy: Przekazuj z powrotem rzeczywiście zwróconą treść rozumowania, gdy ten model jej używa
Domyślnie—
Polemessages[].reasoning_detailsTypobject|arrayWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Polemax_tokensTypintegerWymaganieOpcjonalneWartości i limity
Minimum: 1
Zależy od modelu
Domyślnie—
Polemax_completion_tokensTypintegerWymaganieOpcjonalneWartości i limity
Minimum: 1
Zależy od modelu
Domyślnie—
PolestreamTypbooleanWymaganieOpcjonalneWartości i limityDomyślniefalse
Polestream_options.include_usageTypbooleanWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
PoletemperatureTypnumberWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Poletop_pTypnumberWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
PolestopTypstring|string[]WymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
PoletoolsTypfunction_tool[]WymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Poletools[].typeTypstringWymaganieOpcjonalneWartości i limity
function
Zależy od modelu
Domyślnie—
Poletools[].function.nameTypstringWymaganieWymaganeWartości i limity
Obowiązuje, gdy: udostępnione narzędzie funkcji
Domyślnie—
Poletools[].function.descriptionTypstringWymaganieOpcjonalneWartości i limityDomyślnie—
Poletools[].function.parametersTypJSON_schemaWymaganieOpcjonalneWartości i limityDomyślnie—
Poletool_choiceTypstring|objectWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Poleparallel_tool_callsTypbooleanWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Poleresponse_formatTypobjectWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Polereasoning_effortTypstringWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
PolereasoningTypobjectWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Poleservice_tierTypstringWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
PoleinstructionsTypstringWymaganieOpcjonalneWartości i limity
Pole zgodności
Domyślnie—
PolefunctionsTypfunction[]WymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Polefunction_callTypstring|objectWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
Poleprompt_cache_optionsTypobjectWymaganieOpcjonalneWartości i limity
Zależy od modelu
Domyślnie—
PolemodalitiesTypstring[]WymaganieOpcjonalneWartości i limity
text
Domyślnie—
PoleproviderTypobjectWymaganieOpcjonalneWartości i limity
Warunki: provider.options jest odrzucane na tej tekstowej trasie Ultra
Domyślnie—
Polecache_control.ttlTypstringWymaganieOpcjonalneWartości i limity
Warunki: 1h jest odrzucane w rzeczywistych miejscach pamięci podręcznej promptów
Domyślnie—
Kombinacje materiałów wejściowych

Tekst · tekst UTF8

messages[].content

Parametry i cykl życia metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, messages
Parametrmaterial_typesKontrakttext
ParametrmessagesKontrakttablica wiadomości o strukturze role/content
Parametrfile_materialKontraktrzeczywisty dokument UTF-8 wstawiony jako dosłowny tekst; bez wywnioskowanego ID pliku
Parametroptional_controlsKontraktstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Parametrcontrol_scopeKontraktwłaściwe dla modelu; narzędzia funkcji użytkownika różnią się od narzędzi hostowanych
Parametroutput_modalitiesKontrakttext
Parametrhosted_operationsKontraktfalse
Parametrmultimodal_input_bindingKontraktnull

Cykl życia: synchronous_or_streamed

Wyślij dokładne ID modelu wraz z messages.

Długość kontekstu nie jest limitem wyjścia.

Plik tekstowy może dostarczyć dosłowny tekst; wejścia obrazowe/dźwiękowe/obiekty plików wymagają dokładnego powiązania.

Cennik

Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.

Tryb szybki
Stawka standardowa Gdy wybrany jest tryb szybki
Tryb flex
Stawka standardowa Gdy wybrany jest tryb flex
Maksymalna intensywność rozumowania
Stawka standardowa Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)

Stawki Ailoot

Ceny według konfiguracji

Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.

KonfiguracjaTabela stawekTokeny kontekstu, więcej niżTokeny kontekstu, do podanej wartości włącznieOpłata
KonfiguracjaPodstawowe stawki za tokenyTabela stawekStawka podstawowaTokeny kontekstu, więcej niż—Tokeny kontekstu, do podanej wartości włącznieBez górnej granicyOpłata
Wejście · Tokeny wejściowe $0.00058 / 1K tokenów
Wyjście · Tokeny wyjściowe $0.00458 / 1K tokenów
Wejście · Odczyt cache $0 / 1K tokenów
Wejście · Zapis do cache $0 / 1K tokenów
Wejście · Zapis do cache, 1 godz. — / 1K tokenów
KonfiguracjaPrzedział długości żądania 1Tabela stawek—Tokeny kontekstu, więcej niż0Tokeny kontekstu, do podanej wartości włącznieBez górnej granicyOpłata
Wejście · Tokeny wejściowe $0.00058 / 1K tokenów
Wyjście · Tokeny wyjściowe $0.00458 / 1K tokenów
Wejście · Odczyt cache $0 / 1K tokenów
Wejście · Zapis do cache $0 / 1K tokenów
Wejście · Zapis do cache, 1 godz. — / 1K tokenów

Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →

Przykładowe żądania

Ailoot Ultra · OpenAI Chat

curlPython SDKStrumień w Pythonie
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")

Odbieranie i zapisywanie wyników

Ailoot Ultra · OpenAI Chat

json lub SSE

Zachowaj wszystkie ukończone wyniki

Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.

Zachowaj każdy wariant i jego treść/wywołania narzędzi/rozumowanie. W SSE składaj przyrosty według indeksu wariantu/narzędzia, zachowując końcowy powód zakończenia i dane użycia.

Jeśli trzeba sprawdzić pierwotną odpowiedź

Zachowaj ID i nagłówki żądań/odpowiedzi. Nie udostępniono ogólnego URL pobierania zadania tekstowego.

Pola odpowiedzi
PoleTyp
Polechoices[].indexTypinteger
Polechoices[].message.contentTypstring|null
Polechoices[].message.tool_callsTyptool_call[]
Polechoices[].message.reasoning_contentTypstring
Polechoices[].message.reasoning_detailsTypobject|array
Polechoices[].finish_reasonTypstring|null
PoleusageTypobject
Błędy i dalsze kroki
OdpowiedźWarunekNastępny krok
Odpowiedź400 · invalid_request_errorWarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametruNastępny krokPopraw wskazane pola przed nowym żądaniem utworzenia.

Aliasy

Aliasy modelu

Ailoot Ultra qwen/qwen3.5-122b-a10b

Aliasy ścieżek metod

Użyj ścieżek metod podanych powyżej.

Powiązane ID modeli

qwen/qwen3.5-122b-a10b

Ailoot Ultra · Anthropic Messages POST /v1/messages qwen/qwen3.5-122b-a10b

qwen/qwen3.5-122b-a10b

Alibaba /qwen/qwen3.5-122b-a10b

Start

Qwen3.5-122B-A10B to model wizyjno-językowy Qwen z architekturą mieszaniny ekspertów, liczący łącznie 122 miliardy parametrów i aktywujący 10 miliardów. Przyjmuje tekst, obrazy i wideo do zadań rozumowania, programowania i pracy agentów, zwracając tekst z wybieralnym rozumowaniem oraz natywnym kontekstem 262,144 tokenów.

Akceptowane dane wejściowe
Tekst
Wyniki
json · sse

Dostępne w Ailoot · dane wejściowe i metody

Ailoot Ultra · Anthropic Messages POST /v1/messages
Wejście
text
Wyjście
json, sse
Format wyjściowy
JSON lub SSE
PoleTypWymaganieWartości i limityDomyślnie
PolemodelTypstringWymaganieWymaganeWartości i limity
qwen/qwen3.5-122b-a10b
Domyślnie—
PolemessagesTypmessage[]WymaganieWymaganeWartości i limityDomyślnie—
Polemessages[].roleTypstringWymaganieWymaganeWartości i limity
user, assistant
Domyślnie—
Polemessages[].contentTypstringWymaganieWymaganeWartości i limityDomyślnie—
Polemax_tokensTypintegerWymaganieWymaganeWartości i limityDomyślnie—
PolestreamTypbooleanWymaganieOpcjonalneWartości i limityDomyślniefalse
Kombinacje materiałów wejściowych

Tekst · tekst UTF-8

ciąg messages[].content

Parametry i cykl życia metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, messages, max_tokens
Parametroptional_controlsKontraktstream
Parametrmaterial_typesKontrakttext
Parametrtext_file_materialKontraktOdczytaj rzeczywisty dokument UTF-8 i umieść jego tekst we wskazanym polu input lub w ciągu treści wiadomości.

Cykl życia: synchronous_or_streamed

Cennik

Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.

Tryb szybki
Stawka standardowa Gdy wybrany jest tryb szybki
Tryb flex
Stawka standardowa Gdy wybrany jest tryb flex
Maksymalna intensywność rozumowania
Stawka standardowa Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)

Stawki Ailoot

Ceny według konfiguracji

Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.

KonfiguracjaTabela stawekTokeny kontekstu, więcej niżTokeny kontekstu, do podanej wartości włącznieOpłata
KonfiguracjaPodstawowe stawki za tokenyTabela stawekStawka podstawowaTokeny kontekstu, więcej niż—Tokeny kontekstu, do podanej wartości włącznieBez górnej granicyOpłata
Wejście · Tokeny wejściowe $0.00058 / 1K tokenów
Wyjście · Tokeny wyjściowe $0.00458 / 1K tokenów
Wejście · Odczyt cache $0 / 1K tokenów
Wejście · Zapis do cache $0 / 1K tokenów
Wejście · Zapis do cache, 1 godz. — / 1K tokenów
KonfiguracjaPrzedział długości żądania 1Tabela stawek—Tokeny kontekstu, więcej niż0Tokeny kontekstu, do podanej wartości włącznieBez górnej granicyOpłata
Wejście · Tokeny wejściowe $0.00058 / 1K tokenów
Wyjście · Tokeny wyjściowe $0.00458 / 1K tokenów
Wejście · Odczyt cache $0 / 1K tokenów
Wejście · Zapis do cache $0 / 1K tokenów
Wejście · Zapis do cache, 1 godz. — / 1K tokenów

Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →

Przykładowe żądania

Ailoot Ultra · Anthropic Messages

Kompletna minimalna treść żądania JSONcurl · użyj swojego dokumentu UTF-8Python · zapisz kompletny wynik
{
  "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))

Odbieranie i zapisywanie wyników

Ailoot Ultra · Anthropic Messages

JSON lub SSE

Zachowaj wszystkie ukończone wyniki

Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.

Zachowaj wszystkie bloki treści, sygnatury myślenia i rzeczywiste ID użycia narzędzi. Złóż wszystkie przyrosty bloków SSE; pierwszy blok tekstowy nie jest pełnym wyjściem.

Jeśli trzeba sprawdzić pierwotną odpowiedź

Zachowaj ID i nagłówki żądań/odpowiedzi. Nie udostępniono ogólnego URL pobierania zadania tekstowego.

Pola odpowiedzi
PoleTyp
PoleidTypstring
PolemodelTypstring
Polecontent[]Typtext|thinking|tool_use|other content block
Polestop_reasonTypstring|null
PoleusageTypobject
Błędy i dalsze kroki
OdpowiedźWarunekNastępny krok
Odpowiedź400 · invalid_request_errorWarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametruNastępny krokPopraw wskazane pola przed nowym żądaniem utworzenia.

Aliasy

Aliasy modelu

Ailoot Ultra qwen/qwen3.5-122b-a10b

Aliasy ścieżek metod

Użyj ścieżek metod podanych powyżej.

Powiązane ID modeli

qwen/qwen3.5-122b-a10b

FAQ · Qwen: Qwen3.5-122B-A10B
Jakie dane wejściowe i wyniki są dostępne?

POST /v1/chat/completions · qwen/qwen3.5-122b-a10b: text → text

POST /v1/messages · qwen/qwen3.5-122b-a10b: text → json, sse

Jakich pól używa żądanie?

POST /v1/chat/completions · qwen/qwen3.5-122b-a10b: model, messages, stream, modalities, provider

POST /v1/messages · qwen/qwen3.5-122b-a10b: model, messages, max_tokens, stream

Jakie limity obowiązują?

POST /v1/chat/completions · qwen/qwen3.5-122b-a10b: messages.min_items: 1

Więcej szczegółów

Połącz Ailoot z Claude Code, OpenCode, Hermes albo własną aplikacją.

Firma i jej portfel projektów

Firma i jej portfel projektów: miliony klientów; miesięczna sprzedaż liczona w miliardach.

Kupuj tokeny z rabatem.

Rabat subskrypcji do regularnej pracy. Kody promocyjne — do 50% na tokeny.

Subskrypcja
Wybierz plan z rabatem do regularnych żądań.
Kod promocyjny do 50%
Wpisz kod przy zakupie. Cena zostanie przeliczona według aktualnej promocji.
Koszty w historii
Model, tokeny i kwota są zapisywane dla każdego żądania.

Wybierz subskrypcję · Sprawdź ceny modeli

Połącz API z produktem, który sprzedajesz.

SaaS, aplikacje i boty na warunkach oferty i umowy licencyjnej Ailoot. Do odsprzedaży poproś o licencję resellerską.

Aplikacja komercyjna
Wbuduj generowanie tekstu, obrazów, wideo i dźwięku w płatne funkcje usługi.
Licencja resellerska
Prześlij opis projektu i schemat dostępu. Poproś o pisemne warunki używania i odsprzedaży.
Dokumenty na stronie
Oferta, umowa licencyjna i polityka przetwarzania danych są dostępne przed połączeniem.

Poproś o licencję resellerską · Oferta i umowa licencyjna