models

Qwen-Omni-Turbo

Markdown · JSON

Qwen-Omni-Turbo

Qwen-Omni-Turbo мәтінді, суреттерді, аудионы және бейнені бір мультимодальды тапсырмада біріктіреді әрі мәтін мен дауыстық жауапты ағынмен бере алады. Оны ауызша сұрақты визуалды дәлелмен байланыстыруға немесе аудиовизуалды үзіндіні түсіндіруге пайдаланыңыз; өндірушінің контекст шегі — 32 768 токен, шығыс шегі — 2 048 токен.

Модель туралы

Бұл сипаттама модель мүмкіндіктерін қамтиды. Ailoot жүйесінде таңдалған әдіс үшін қолжетімді кіріс, шығыс және параметрлер төменде берілген.

Шолу: аралас медианы түсіну және дауыстық жауаптар

Qwen-Omni-Turbo — Qwen-нің мультимодальды түсіну және генерация моделі. Ол мәтінді, суреттерді, сөйлеуді және бейнені, сондай-ақ осы кірістердің тіркесімдерін қабылдап, мәтін немесе табиғи сөйлеу қосылған мәтін шығарады. Өндіруші мәтін мен сөйлеуді бір мезгілде ағынмен беруді және табиғи диалогқа арналған төрт дауыс нұсқасын сипаттайды. Сондықтан модель сұрақ пен оның дәлелі әртүрлі түрде берілетін тапсырмаларға, мысалы фотосурет туралы ауызша сұраққа немесе аудиовизуалды көріністі түсіндіруге қолайлы.

Дәл атауы және оның нұсқалары

Өндірушінің қазіргі модель бетінде qwen-omni-turbo функционалдық тұрғыдан qwen-omni-turbo-2025-03-26 нұсқасына балама деп сипатталған. Онда qwen-omni-turbo-latest динамикалық түрде жаңартылатын атау ретінде бөлек беріліп, бұрынғы qwen-omni-turbo-2025-01-19 нұсқасы да жеке көрсетілген. Наурыз нұсқасының визуалды мүмкіндіктері қаңтардағы нұсқамен салыстырғанда жақсарғаны айтылған. Бұл — өндіруші сипаттаған нұсқалар арасындағы байланыс, ал атауы ұқсас әр қолданба маршруты бірдей модель салмақтары мен баптауларды қолданатынының дәлелі емес. Тапсырмаға дәл нұсқа қажет болса, күнмен белгіленген нұсқа атауын сақтаңыз.

Turbo атауы жеке нақты уақыттағы нұсқаны, Qwen-Omni-дің жаңарақ буынын немесе ашық Qwen2.5-Omni-7B чекпойнтін білдірмейді. Олардың кіріс ережелері, дауыстары және интерфейстері үшін жеке құжаттар қажет. Атап айтқанда, Omni-Turbo үшін сипатталған төрт дауыс нұсқасын екі дауысы бар ашық чекпойнттің сипаттамасына көшіруге болмайды.

Аралас медиалы тапсырманы дайындау

Модель кірістер арасындағы нені байланыстыруы керегін көрсетіңіз. Диаграмма туралы ауызша сұрақта диаграмма мен сұрақты бірге беріп, талқыланатын көрінетін элементті түсіндіруді сұраңыз. Сөйлеу бар бейне үшін көрінгенді, айтылғанды немесе екеуінің байланысын қорытындылау қажет екенін нақтылаңыз. Пайдалы нәтиже қорытындыға дейін визуалды және аудиодан алынған байқауларды бөлек көрсете алады.

Мультимедианы тексеру үшін бір-біріне қатысы жоқ бірнеше материалдың орнына тиісті қысқа үзіндіні беріңіз. Бірнеше сурет болса, оларға белгі қойып, әрқайсының рөлін түсіндіріңіз. Сұраққа маңызды аудио мен уақыт туралы ақпаратты сақтаңыз. Тыңдаушыға арналған дауыстық түсіндірме немесе көрініс бөлшектерінің қысқа мәтіндік тізімі сияқты нақты нәтиже сұраңыз. Бұлар — құжатталған аралас кіріс мүмкіндіктерін қолдануға арнап ұсынылған мысалдар; нақты бір үзінді талданып қойғаны туралы мәлімдемелер емес.

Мәтіндік және дауыстық шығыс

Өндірушінің модель сипаттамасы мәтіндік жауаптарды және мәтін мен сөйлеуді бір мезгілде ағынмен беруді қолдайды. Дауыстық түсіндірме диалогтық көмекке ыңғайлы болуы мүмкін, ал мәтінді тексеру, іздеу және бастапқы материалмен салыстыру оңайырақ. Таңдалатын шығыс режимі мен дауыс баптаулары модельді ұсынатын интерфейске байланысты. Ағынмен беру — мазмұнды бірінен кейін бірі келетін бөліктермен жеткізу; ол жауап беру уақытына кепілдік емес және бөлек нақты уақыттағы диалог хаттамасының бар екенін дәлелдемейді.

Контекст пен шығыс шектері

Арнайы сипаттамада контекст терезесі 32 768 токен, ең үлкен кіріс ұзындығы 30 720 токен және ең үлкен шығыс ұзындығы 2 048 токен деп көрсетілген. Бастапқы материал мен қалаған жауапты осы бөлек шектерді ескеріп дайындаңыз. Мультимодальды кіріс тек терілген таңбалар санына емес, оның ұсынылу түріне қажетті көлем шегіне сыйуы тиіс. Ұзақ баяндауды сұраудың орнына, шығыс лимитіне сыятын қысқа түсіндірмеге назар аударыңыз.

Бұл токен шектері барлық жағдайға ортақ минут санын немесе сурет санын белгілемейді. Медианы алдын ала өңдеу мен таңдалған нұсқа қанша материал сыятынына әсер етеді. Модель бетінде чекпойнт архитектурасы немесе параметр саны жарияланбаған, сондықтан Turbo атауына сүйеніп модель көлемін ойдан шығаруға немесе басқа Omni моделінің архитектурасын қолдануға болмайды.

Құралдар және елеулі шектеулер

Дәл осы модельдің мүмкіндіктер кестесі функция шақыруды, кірістірілген веб-іздеуді немесе міндетті түрде құрылымға сәйкестендірілген шығысты қолдамайды. Өндірушінің кейбір конфигурацияларында пакеттік инференс, ал басқа бір конфигурацияда контексті кэштеу көрсетілген. Тізім немесе JSON пішіміндегі жауап сұрау — мәтін пішімін белгілеу ғана, схемаға міндетті сәйкестік кепілдігі емес. Модельдің визуалды немесе ауызша тапсырманы түсінуі өздігінен ағымдағы ақпаратқа немесе сыртқы жүйелерге қолжетімділік бермейді.

Жауаптың көрінетін дәлелді, естілетін мазмұнды және түсіндіруді ажырататынын тексеріңіз. Сөйлеуден алынған дәйексөздерді, ұсақ визуалды белгілерді және болжанған байланыстарды берілген материалмен салыстыру керек. Дауыстық нәтиженің қоса берілген мәтіні бар болса, тексеруші түсіндірмені қарай алатындай оны сақтаңыз. Практикалық артықшылығы — бірнеше модальдылықты бір жауапта байланыстыру және құжатталған нұсқаның шегіне сәйкес қысқа нәтиже алу.

Практикалық тапсырма

Практикалық тапсырма

Ағылшын тіліндегі техникалық мысал

Reconcile written scene and speech notes

Compare these text notes from a training clip. [Visible note] The operator places a red tag on the empty bin. [Speech transcript] "Use a yellow tag when cleaning is due." Summarize the discrepancy and draft one clarification question for the trainer. Use only the supplied notes; do not claim to hear audio or view video.

Күтілетін нәтиже

A concise discrepancy statement and one question, with visible-note and speech-transcript evidence kept separate.

Нәтижені тексеру

Check that neither color is silently corrected and the response makes no claim of media access.
Ailoot Ultra · OpenAI чаты POST /v1/chat/completions qwen-omni-turbo

qwen-omni-turbo

Alibaba /qwen-omni-turbo

Бастау

Qwen-Omni-Turbo мәтінді, суреттерді, аудионы және бейнені бір мультимодальды тапсырмада біріктіреді әрі мәтін мен дауыстық жауапты ағынмен бере алады. Оны ауызша сұрақты визуалды дәлелмен байланыстыруға немесе аудиовизуалды үзіндіні түсіндіруге пайдаланыңыз; өндірушінің контекст шегі — 32 768 токен, шығыс шегі — 2 048 токен.

Қабылданатын кіріс деректері
Мәтін
Нәтижелер
Мәтін

Ailoot жүйесінде қолжетімді · кіріс деректері мен әдістер

Ailoot Ultra · OpenAI чаты POST /v1/chat/completions
Кіріс
text
Шығыс
text
Шығыс пішімі
json немесе SSE
ӨрісТүріТалапМәндер мен шектеулерӘдепкі
ӨрісmodelТүріstringТалапМіндеттіМәндер мен шектеулер
qwen-omni-turbo
Әдепкі—
ӨрісmessagesТүріmessage[]ТалапМіндеттіМәндер мен шектеулер
Элементтердің ең аз саны: 1
Әдепкі—
Өрісmessages[].roleТүріstringТалапМіндеттіМәндер мен шектеулер
Мысалдар: system, user, assistant, tool, function
Шарттар: Бұл рөлдер бастапқы кодтағы үйлесімділік түрлерінде айқын көрсетілген; рөлдердің нақты жиыны әр модельге байланысты.
Модельге байланысты
Әдепкі—
Өрісmessages[].contentТүріstring|content_part[]|nullТалапМіндетті емесМәндер мен шектеулерӘдепкі—
Өрісmessages[].tool_callsТүріtool_call[]ТалапМіндетті емесМәндер мен шектеулерӘдепкі—
Өрісmessages[].tool_call_idТүріstringТалапМіндетті емесМәндер мен шектеулер
Мына жағдайда қолданылады: role=tool; нақты қайтарылған ID мәнін пайдаланыңыз
Әдепкі—
Өрісmessages[].nameТүріstringТалапМіндетті емесМәндер мен шектеулерӘдепкі—
Өрісmessages[].reasoning_contentТүріstringТалапМіндетті емесМәндер мен шектеулер
Мына жағдайда қолданылады: Модель пайымдауды пайдаланса, нақты қайтарылған пайымдауды қайта жіберіңіз
Әдепкі—
Өрісmessages[].reasoning_detailsТүріobject|arrayТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісmax_tokensТүріintegerТалапМіндетті емесМәндер мен шектеулер
Ең азы: 1
Модельге байланысты
Әдепкі—
Өрісmax_completion_tokensТүріintegerТалапМіндетті емесМәндер мен шектеулер
Ең азы: 1
Модельге байланысты
Әдепкі—
ӨрісstreamТүріbooleanТалапМіндетті емесМәндер мен шектеулерӘдепкіfalse
Өрісstream_options.include_usageТүріbooleanТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
ӨрісtemperatureТүріnumberТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісtop_pТүріnumberТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
ӨрісstopТүріstring|string[]ТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
ӨрісtoolsТүріfunction_tool[]ТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісtools[].typeТүріstringТалапМіндетті емесМәндер мен шектеулер
function
Модельге байланысты
Әдепкі—
Өрісtools[].function.nameТүріstringТалапМіндеттіМәндер мен шектеулер
Мына жағдайда қолданылады: функция құралы берілген
Әдепкі—
Өрісtools[].function.descriptionТүріstringТалапМіндетті емесМәндер мен шектеулерӘдепкі—
Өрісtools[].function.parametersТүріJSON_schemaТалапМіндетті емесМәндер мен шектеулерӘдепкі—
Өрісtool_choiceТүріstring|objectТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісparallel_tool_callsТүріbooleanТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісresponse_formatТүріobjectТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісreasoning_effortТүріstringТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
ӨрісreasoningТүріobjectТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісservice_tierТүріstringТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
ӨрісinstructionsТүріstringТалапМіндетті емесМәндер мен шектеулер
Үйлесімділік өрісі
Әдепкі—
ӨрісfunctionsТүріfunction[]ТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісfunction_callТүріstring|objectТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
Өрісprompt_cache_optionsТүріobjectТалапМіндетті емесМәндер мен шектеулер
Модельге байланысты
Әдепкі—
ӨрісmodalitiesТүріstring[]ТалапМіндетті емесМәндер мен шектеулер
text
Әдепкі—
ӨрісproviderТүріobjectТалапМіндетті емесМәндер мен шектеулер
Шарттар: Осы Ultra мәтіндік бағытында provider.options қабылданбайды
Әдепкі—
Өрісcache_control.ttlТүріstringТалапМіндетті емесМәндер мен шектеулер
Шарттар: Сұрау кэшінің нақты орындарында 1h қабылданбайды
Әдепкі—
Кіріс материалдарының үйлесімдері

Мәтін · UTF8 мәтіні

messages[].content

Әдіс параметрлері мен өмірлік циклі
ПараметрПараметр талаптары
Параметрcontent_typeПараметр талаптарыapplication/json
ПараметрrequiredПараметр талаптарыmodel, messages
Параметрmaterial_typesПараметр талаптарыtext
ПараметрmessagesПараметр талаптарыrole/content құрылымы бар хабарламалар жиымы
Параметрfile_materialПараметр талаптарынақты UTF-8 құжаты сөзбе-сөз мәтін ретінде енгізіледі; файл ID-і болжанбайды
Параметрoptional_controlsПараметр талаптарыstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Параметрcontrol_scopeПараметр талаптарымодельге байланысты; пайдаланушының функция құралдары қызмет жағында орындалатын құралдардан өзгеше
Параметрoutput_modalitiesПараметр талаптарыtext
Параметрhosted_operationsПараметр талаптарыfalse
Параметрmultimodal_input_bindingПараметр талаптарыnull

Өмірлік цикл: synchronous_or_streamed

Модельдің дәл ID мәнін messages деректерімен бірге жіберіңіз.

Контекст ұзындығы шығыстың жоғарғы шегі емес.

Мәтіндік файл сөзбе-сөз мәтінді бере алады; кіріс суреттері, аудио және файл нысандары дәл байланыстыруды қажет етеді.

Тарифтер

Тариф анықтамасы сұрау мүмкіндіктерін қоспайды. Қолдау көрсетілетін параметрлер таңдалған әдісте берілген.

Жылдам режим
Көрсетілмеген Жылдам режим таңдалғанда
Икемді режим
Көрсетілмеген flex режимі таңдалғанда
Ой қорытудың ең жоғары деңгейі
Көрсетілмеген Ой қорыту деңгейі ең жоғары болып, default түзетуі қолданылғанда

Ailoot мөлшерлемелері

Баптаулар бойынша бағалар

БаптауМөлшерлемелер кестесіТөлем
БаптауТокендердің базалық тарифтеріМөлшерлемелер кестесіНегізгі мөлшерлемеТөлем
Кіріс · Кіріс токендері $0.0046 / 1K токен
Шығыс · Шығыс токендері $0.0138 / 1K токен
Кіріс · Кэшті оқу $0 / 1K токен
Кіріс · Кэшке жазу $0 / 1K токен
Кіріс · Кэшке жазу, 1 сағ — / 1K токен

Ailoot сұрау алдында болжамды соманы резервтейді. Нәтижеден кейін өлшенген пайдалану көлемі бойынша қорытынды төлемді шегереді. Ағындық жауап үшін төлем соңғы пайдалану жазбасы негізінде шегеріледі. Резервтеу мен төлемді есептеу тәртібі →

Сұрау мысалдары

Ailoot Ultra · OpenAI чаты

curlPython SDKPython ағыны
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-omni-turbo", "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-omni-turbo',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-omni-turbo',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")

Нәтижелерді алу және сақтау

Ailoot Ultra · OpenAI чаты

json немесе SSE

Барлық дайын нәтижені сақтау

Қайтарылған әр толық жауапты, файлды және мазмұн бөлігін сақтаңыз.

Әр жауап нұсқасын оның мазмұнымен, құрал шақыруларымен және пайымдауымен бірге сақтаңыз. SSE өзгерістерін жауап нұсқасы мен құрал индексі бойынша жинап, соңғы аяқталу себебі мен пайдалану деректерін сақтаңыз.

Бастапқы жауапты тексеру қажет болса

Сұрау мен жауаптың ID мәндерін және тақырыптарын сақтаңыз. Мәтіндік тапсырманы алуға арналған ортақ URL берілмеген.

Жауап өрістері
ӨрісТүрі
Өрісchoices[].indexТүріinteger
Өрісchoices[].message.contentТүріstring|null
Өрісchoices[].message.tool_callsТүріtool_call[]
Өрісchoices[].message.reasoning_contentТүріstring
Өрісchoices[].message.reasoning_detailsТүріobject|array
Өрісchoices[].finish_reasonТүріstring|null
ӨрісusageТүріobject
Қателер және келесі қадамдар
ЖауапШартКелесі қадам
Жауап400 · invalid_request_errorШартМіндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қатеКелесі қадамЖаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз.

Балама атаулар

Модельдердің балама атаулары

Ailoot Ultra qwen-omni-turbo

Әдіс жолдарының балама атаулары

Жоғарыда көрсетілген әдіс жолдарын пайдаланыңыз.

Шақыруға арналған байланысты ID

qwen-omni-turbo

Ailoot Ultra · Anthropic хабарламалары POST /v1/messages qwen-omni-turbo

qwen-omni-turbo

Alibaba /qwen-omni-turbo

Бастау

Qwen-Omni-Turbo мәтінді, суреттерді, аудионы және бейнені бір мультимодальды тапсырмада біріктіреді әрі мәтін мен дауыстық жауапты ағынмен бере алады. Оны ауызша сұрақты визуалды дәлелмен байланыстыруға немесе аудиовизуалды үзіндіні түсіндіруге пайдаланыңыз; өндірушінің контекст шегі — 32 768 токен, шығыс шегі — 2 048 токен.

Қабылданатын кіріс деректері
Мәтін
Нәтижелер
json · sse

Ailoot жүйесінде қолжетімді · кіріс деректері мен әдістер

Ailoot Ultra · Anthropic хабарламалары POST /v1/messages
Кіріс
text
Шығыс
json, sse
Шығыс пішімі
JSON немесе SSE
ӨрісТүріТалапМәндер мен шектеулерӘдепкі
ӨрісmodelТүріstringТалапМіндеттіМәндер мен шектеулер
qwen-omni-turbo
Әдепкі—
ӨрісmessagesТүріmessage[]ТалапМіндеттіМәндер мен шектеулерӘдепкі—
Өрісmessages[].roleТүріstringТалапМіндеттіМәндер мен шектеулер
user, assistant
Әдепкі—
Өрісmessages[].contentТүріstringТалапМіндеттіМәндер мен шектеулерӘдепкі—
Өрісmax_tokensТүріintegerТалапМіндеттіМәндер мен шектеулерӘдепкі—
ӨрісstreamТүріbooleanТалапМіндетті емесМәндер мен шектеулерӘдепкіfalse
Кіріс материалдарының үйлесімдері

Мәтін · UTF-8 мәтіні

messages[].content жолы

Әдіс параметрлері мен өмірлік циклі
ПараметрПараметр талаптары
Параметрcontent_typeПараметр талаптарыapplication/json
ПараметрrequiredПараметр талаптарыmodel, messages, max_tokens
Параметрoptional_controlsПараметр талаптарыstream
Параметрmaterial_typesПараметр талаптарыtext
Параметрtext_file_materialПараметр талаптарыНақты UTF-8 құжатын оқып, оның мәтінін көрсетілген кіріс жолына немесе хабарлама мазмұнының жолына қойыңыз.

Өмірлік цикл: synchronous_or_streamed

Тарифтер

Тариф анықтамасы сұрау мүмкіндіктерін қоспайды. Қолдау көрсетілетін параметрлер таңдалған әдісте берілген.

Жылдам режим
Көрсетілмеген Жылдам режим таңдалғанда
Икемді режим
Көрсетілмеген flex режимі таңдалғанда
Ой қорытудың ең жоғары деңгейі
Көрсетілмеген Ой қорыту деңгейі ең жоғары болып, default түзетуі қолданылғанда

Ailoot мөлшерлемелері

Баптаулар бойынша бағалар

БаптауМөлшерлемелер кестесіТөлем
БаптауТокендердің базалық тарифтеріМөлшерлемелер кестесіНегізгі мөлшерлемеТөлем
Кіріс · Кіріс токендері $0.0046 / 1K токен
Шығыс · Шығыс токендері $0.0138 / 1K токен
Кіріс · Кэшті оқу $0 / 1K токен
Кіріс · Кэшке жазу $0 / 1K токен
Кіріс · Кэшке жазу, 1 сағ — / 1K токен

Ailoot сұрау алдында болжамды соманы резервтейді. Нәтижеден кейін өлшенген пайдалану көлемі бойынша қорытынды төлемді шегереді. Ағындық жауап үшін төлем соңғы пайдалану жазбасы негізінде шегеріледі. Резервтеу мен төлемді есептеу тәртібі →

Сұрау мысалдары

Ailoot Ultra · Anthropic хабарламалары

Ең ықшам толық JSON сұрау денесіcurl · өзіңіздің UTF-8 құжатыңызды қолданыңызPython · нәтижені толық сақтаңыз
{
  "model": "qwen-omni-turbo",
  "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-omni-turbo', '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-omni-turbo', '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))

Нәтижелерді алу және сақтау

Ailoot Ultra · Anthropic хабарламалары

JSON немесе SSE

Барлық дайын нәтижені сақтау

Қайтарылған әр толық жауапты, файлды және мазмұн бөлігін сақтаңыз.

Барлық мазмұн блоктарын, пайымдау қолтаңбаларын және құрал қолданудың нақты ID мәндерін сақтаңыз. SSE блоктарының барлық өзгерістерін жинаңыз; алғашқы мәтіндік блок толық шығыс емес.

Бастапқы жауапты тексеру қажет болса

Сұрау мен жауаптың ID мәндерін және тақырыптарын сақтаңыз. Мәтіндік тапсырманы алуға арналған ортақ URL берілмеген.

Жауап өрістері
ӨрісТүрі
ӨрісidТүріstring
ӨрісmodelТүріstring
Өрісcontent[]Түріtext|thinking|tool_use|other content block
Өрісstop_reasonТүріstring|null
ӨрісusageТүріobject
Қателер және келесі қадамдар
ЖауапШартКелесі қадам
Жауап400 · invalid_request_errorШартМіндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қатеКелесі қадамЖаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз.

Балама атаулар

Модельдердің балама атаулары

Ailoot Ultra qwen-omni-turbo

Әдіс жолдарының балама атаулары

Жоғарыда көрсетілген әдіс жолдарын пайдаланыңыз.

Шақыруға арналған байланысты ID

qwen-omni-turbo

FAQ · Qwen-Omni-Turbo
Қандай кіріс деректері мен нәтижелер қолжетімді?

POST /v1/chat/completions · qwen-omni-turbo: text → text

POST /v1/messages · qwen-omni-turbo: text → json, sse

Сұрау қандай өрістерді пайдаланады?

POST /v1/chat/completions · qwen-omni-turbo: model, messages, stream, modalities, provider

POST /v1/messages · qwen-omni-turbo: model, messages, max_tokens, stream

Қандай шектеулер қолданылады?

POST /v1/chat/completions · qwen-omni-turbo: messages.min_items: 1

Толығырақ

Ailoot-ты Claude Code, OpenCode, Hermes не қолданбаңызға қосыңыз.

Компания және оның жобалар портфелі

Компания және оның жобалар портфелі: миллиондаған клиент; ай сайынғы сату көлемі миллиардтармен есептеледі.

Токенді жеңілдікпен сатып алыңыз.

Тұрақты жұмысқа жазылым жеңілдігі. Токен сатып алуға промокодтар — 50% дейін.

Жазылым
Тұрақты сұрауыңызға жеңілдікті тариф таңдаңыз.
50% дейінгі промокод
Сатып алғанда код енгізіңіз. Баға қазіргі науқанмен қайта есептеледі.
Тарихтағы шығындар
Әр сұрауға модель, токен және сома сақталады.

Жазылым таңдау · Модель бағасын көру

API-ді сататын өніміңізге қосыңыз.

SaaS, қолданба мен бот Ailoot офертасы және лицензиялық шартына сай. Қайта сатуға реселлер лицензиясын сұраңыз.

Коммерциялық қолданба
Қызметіңіздің ақылы функциясына мәтін, сурет, бейне және дыбыс жасауды қосыңыз.
Реселлер лицензиясы
Жоба сипаттамасы мен кіру схемасын жіберіңіз. Пайдалану мен қайта сатуға жазбаша шарт сұраңыз.
Сайттағы құжаттар
Оферта, лицензиялық шарт және дерек саясаты қоспай тұрып қолжетімді.

Реселлер лицензиясын сұрау · Оферта мен лицензиялық шарт