qwen-max
Qwen-Max là mô hình văn bản dành cho hội thoại đa ngôn ngữ, suy luận logic, lập trình và sáng tạo nội dung. Mô hình kết hợp khả năng tuân thủ chỉ dẫn chi tiết với đầu ra theo định dạng JSON và khả năng kiểm soát phong cách trả lời.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsqwen-max-latest - Ailoot Ultra · Anthropic Messages
POST /v1/messagesqwen-max-latest
Về mô hình
Mô tả này trình bày khả năng của mô hình. Đầu vào, đầu ra và tùy chọn có trên Ailoot được liệt kê bên dưới cho phương thức đã chọn.
Qwen-Max là mô hình văn bản quy mô lớn thuộc họ Qwen, dành cho những nhiệm vụ kết hợp hiểu ngôn ngữ, suy luận logic và tạo kết quả viết có nội dung đáng kể. Nhà sản xuất nhấn mạnh khả năng lập trình bằng tiếng Trung và tiếng Anh, làm việc đa ngôn ngữ, viết sáng tạo và hội thoại theo vai. Mô hình được thiết kế để tạo câu trả lời rõ ràng, chi tiết hơn trong khi tuân theo phong cách trả lời được yêu cầu.
Tên mô hình được cập nhật liên tục. Nhà sản xuất hiện mô tả qwen-max tương đương về chức năng với bản chụp qwen-max-2025-01-25. Tên được cập nhật liên tục và bản chụp có ngày phục vụ hai mục đích khác nhau: một tên theo sát sự phát triển của dòng mô hình, còn tên kia xác định một phiên bản cụ thể. Giữ sự phân biệt này khi so sánh các nhiệm vụ lặp lại hoặc duy trì cấu hình trợ lý nhất quán.
Khả năng của mô hình
Qwen-Max nhận văn bản và tạo văn bản. Mô hình có thể làm việc với hội thoại, các đoạn nguồn, yêu cầu phần mềm hoặc đoạn mã hiện có. Sử dụng mô hình khi kết quả cần là lời giải thích, tài liệu được viết lại, phần triển khai phần mềm hoặc tập hợp các trường được trích xuất. Trang quét hoặc ảnh chụp màn hình cần một bước riêng để chuyển thông tin cần thiết sang dạng văn bản; đầu vào được công bố của mô hình này không phải hình ảnh.
Nhà sản xuất đặc biệt nhấn mạnh khả năng tuân thủ định dạng JSON. Một nhiệm vụ trích xuất thực tế có thể chỉ định các trường như chủ đề, điều kiện được nêu rõ trong nguồn và câu hỏi chưa được giải đáp. Cung cấp đoạn nguồn và tên các trường mong muốn, đồng thời nêu cách biểu diễn thông tin còn thiếu. Nhờ đó, câu trả lời hội thoại trở thành dữ liệu mà ứng dụng có thể kiểm tra và xử lý. Yêu cầu JSON và yêu cầu giải thích bằng văn xuôi là hai yêu cầu đầu ra khác nhau, nên cần nêu riêng.
Các giao diện được công bố còn bao gồm gọi hàm, đầu ra có cấu trúc, tiếp tục từ tiền tố câu trả lời, lưu đệm ngữ cảnh và suy luận theo lô. Khả năng gọi hàm và tìm kiếm web không được cung cấp giống nhau trong mọi cấu hình của bên cung cấp. Hãy xem chúng là các tùy chọn của giao diện bao quanh mô hình: ứng dụng cung cấp công cụ, thực thi các hành động được chọn và trả về kết quả. Lưu đệm và xử lý theo lô liên quan đến cách gửi và tái sử dụng công việc, không phải một loại nội dung mới.
Giới hạn ngữ cảnh
Thông số được công bố liệt kê cửa sổ ngữ cảnh 32,768 token, đầu vào tối đa 30,720 token và đầu ra tối đa 8,192 token. Giữ tài liệu nguồn, hội thoại và câu trả lời được yêu cầu trong các giới hạn áp dụng. Trần đầu ra hữu ích khi lựa chọn giữa câu trả lời ngắn gọn và tài liệu dài; không nên hiểu đó là sự bảo đảm rằng mọi câu trả lời đều sử dụng hết độ dài này.
Với nhiệm vụ về tài liệu, đặt các mục nguồn thiết yếu trước ví dụ tùy chọn và nêu rõ sản phẩm cuối cần có những gì. Chẳng hạn, cung cấp mô tả sản phẩm cùng các câu hỏi của khách hàng, sau đó yêu cầu câu trả lời giữ nguyên điều kiện đã cung cấp, dùng ngôn ngữ của khách hàng và tách câu hỏi chưa được giải đáp khỏi thông tin đã xác nhận. Kết quả có thể là câu trả lời gửi khách hàng kèm một bản ghi JSON nhỏ cho bước tiếp theo của ứng dụng.
Với lập trình, cung cấp mục đích của hàm, đầu vào được chấp nhận, đầu ra mong đợi và đoạn mã hiện có mà phần mới cần tương thích. Yêu cầu phần triển khai, lời giải thích cho các quyết định và ví dụ bao quát đầu vào thông thường lẫn trường hợp biên. Cách này sử dụng trọng tâm lập trình và suy luận đã được công bố của mô hình mà không giả định mô hình có quyền truy cập kho mã, trình biên dịch hoặc ứng dụng đang chạy.
Với viết sáng tạo hoặc đối thoại theo vai, xác định đối tượng đọc, giọng điệu và các dữ kiện phải được giữ lại sau khi chỉnh sửa. Vai có thể tổ chức cuộc hội thoại, còn tài liệu nguồn quyết định mô hình cần nói gì. Yêu cầu các cách mở đầu hoặc giải thích thay thế cho những nhóm người đọc khác nhau thay vì chỉ yêu cầu viết lại chung chung; khi đó, mỗi phiên bản đều có mục đích có thể quan sát được.
Những giới hạn cần phân biệt
Qwen-Max là dòng văn bản sang văn bản, không phải phiên bản thị giác hoặc tạo giọng nói. Nhà sản xuất không liệt kê tinh chỉnh mô hình là khả năng giao diện được hỗ trợ trên thẻ này. Hành vi có công cụ phụ thuộc vào giao diện được kết nối, còn tên được cập nhật liên tục không cố định một bản chụp vĩnh viễn. Các điểm khác biệt này giúp chọn đúng phiên bản và chuẩn bị đầu vào phù hợp với kết quả thực sự cần có.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions qwen-max-latest
qwen-max-latestBắt đầu
Qwen-Max là mô hình văn bản dành cho hội thoại đa ngôn ngữ, suy luận logic, lập trình và sáng tạo nội dung. Mô hình kết hợp khả năng tuân thủ chỉ dẫn chi tiết với đầu ra theo định dạng JSON và khả năng kiểm soát phong cách trả lời.
- Đầu vào được chấp nhận
- Văn bản
- Kết quả
- Văn bản
Có trên Ailoot · đầu vào & phương thức
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Đầu vào
text- Đầu ra
text- Định dạng đầu ra
- json hoặc SSE
| Trường | Loại | Yêu cầu | Giá trị & giới hạn | Mặc định |
|---|---|---|---|---|
Trườngmodel | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn qwen-max-latest | Mặc định— |
Trườngmessages | Loạimessage[] | Yêu cầuBắt buộc | Giá trị & giới hạn Số mục tối thiểu: 1 | Mặc định— |
Trườngmessages[].role | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn Tùy thuộc vào mô hình | Mặc định— |
Trườngmessages[].content | Loạistring | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Áp dụng khi: Hội thoại văn bản | Mặc định— |
Trườngstream | Loạiboolean | Yêu cầuKhông bắt buộc | Giá trị & giới hạn | Mặc địnhfalse |
Tổ hợp tư liệu đầu vào
Văn bản · Văn bản UTF8
messages[].content
Tham số phương thức và vòng đời
| Tham số | Hợp đồng |
|---|---|
Tham sốcontent_type | Hợp đồngapplication/json |
Tham sốrequired | Hợp đồngmodel, messages |
Tham sốmaterial_types | Hợp đồngtext |
Tham sốmessages | Hợp đồngMảng thông điệp có cấu trúc role/content |
Tham sốfile_material | Hợp đồngTài liệu UTF-8 thực tế được chèn nguyên dạng văn bản; không suy ra ID tệp |
Tham sốoptional_controls | Hợp đồngstream |
Tham sốcontrol_scope | Hợp đồngHội thoại văn bản; stream là giá trị boolean và mặc định là false. |
Tham sốoutput_modalities | Hợp đồngtext |
Tham sốhosted_operations | Hợp đồngfalse |
Tham sốmultimodal_input_binding | Hợp đồngnull |
Bí danh phương thức: /chat/completions
Vòng đời: synchronous_or_streamed
Gửi ID mô hình chính xác cùng messages.
Độ dài ngữ cảnh không phải giới hạn đầu ra.
Tệp văn bản có thể cung cấp nguyên văn nội dung; đầu vào hình ảnh, âm thanh hoặc đối tượng tệp cần có liên kết chính xác.
Bảng giá
Thông tin biểu giá không bổ sung tùy chọn yêu cầu. Các tham số được hỗ trợ nằm trong phương thức đã chọn.
- Chế độ nhanh
- Chưa chỉ định Khi chọn chế độ nhanh
- Chế độ Flex
- Chưa chỉ định Khi chọn chế độ flex
- Mức độ suy luận tối đa
- Chưa chỉ định Khi áp dụng mức điều chỉnh mặc định (default) cho mức độ suy luận tối đa
Mức phí Ailoot
Giá theo cấu hình
| Cấu hình | Biểu mức phí | Phí |
|---|---|---|
| Cấu hìnhGiá cơ sở cho token | Biểu mức phíMức phí cơ bản | Phí Đầu vào · Token đầu vào $0.000686 / 1K token Đầu ra · Token đầu ra $0.002744 / 1K token Đầu vào · Đọc bộ nhớ đệm $0 / 1K token Đầu vào · Ghi bộ nhớ đệm $0 / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ — / 1K token |
Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. Cách hoạt động của cơ chế tạm giữ và quyết toán →
Ví dụ yêu cầu
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-max-latest","messages":[{"role":"user","content":"hello"}],"stream":false}')
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-max-latest", messages=[{"role":"user","content":"hello"}], stream=False)
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"))
Nhận và lưu kết quả
Ailoot Ultra · OpenAI Chat
json hoặc SSE
Lưu tất cả kết quả đã hoàn tất
Lưu mọi phản hồi hoàn chỉnh, tệp và phần nội dung được trả về.
Giữ mọi phương án trả lời cùng nội dung, lệnh gọi công cụ và dữ liệu suy luận của phương án đó. Với SSE, ghép các phần thay đổi theo chỉ số phương án và công cụ, giữ lý do kết thúc cuối cùng cùng dữ liệu sử dụng.
Nếu cần kiểm tra phản hồi gốc
Giữ ID và header của yêu cầu, phản hồi. Không cung cấp URL chung để truy xuất tác vụ văn bản.
Trường phản hồi
| Trường | Loại |
|---|---|
Trườngchoices[].index | Loạiinteger |
Trườngchoices[].message.content | Loạistring|null |
Trườngchoices[].message.tool_calls | Loạitool_call[] |
Trườngchoices[].message.reasoning_content | Loạistring |
Trườngchoices[].message.reasoning_details | Loạiobject|array |
Trườngchoices[].finish_reason | Loạistring|null |
Trườngusage | Loạiobject |
Lỗi và bước tiếp theo
| Phản hồi | Điều kiện | Bước tiếp theo |
|---|---|---|
Phản hồi400 · invalid_request_error | Điều kiệnTrường bắt buộc, cách biểu diễn tài liệu hoặc giá trị tham số không hợp lệ | Bước tiếp theoSửa các trường được chỉ ra trước khi gửi yêu cầu tạo mới. |
Bí danh
Bí danh mô hình
Ailoot Ultra qwen-max-latest
Bí danh đường dẫn phương thức
/chat/completions
ID gọi liên quan
Ailoot Ultra · Anthropic Messages POST /v1/messages qwen-max-latest
qwen-max-latestBắt đầu
Qwen-Max là mô hình văn bản dành cho hội thoại đa ngôn ngữ, suy luận logic, lập trình và sáng tạo nội dung. Mô hình kết hợp khả năng tuân thủ chỉ dẫn chi tiết với đầu ra theo định dạng JSON và khả năng kiểm soát phong cách trả lời.
- Đầu vào được chấp nhận
- Văn bản
- Kết quả
- json · sse
Có trên Ailoot · đầu vào & phương thức
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Đầu vào
text- Đầu ra
json,sse- Định dạng đầu ra
- JSON hoặc SSE
| Trường | Loại | Yêu cầu | Giá trị & giới hạn | Mặc định |
|---|---|---|---|---|
Trườngmodel | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn qwen-max-latest | Mặc định— |
Trườngmessages | Loạimessage[] | Yêu cầuBắt buộc | Giá trị & giới hạn | Mặc định— |
Trườngmessages[].role | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn user, assistant | Mặc định— |
Trườngmessages[].content | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn | Mặc định— |
Trườngmax_tokens | Loạiinteger | Yêu cầuBắt buộc | Giá trị & giới hạn | Mặc định— |
Trườngstream | Loạiboolean | Yêu cầuKhông bắt buộc | Giá trị & giới hạn | Mặc địnhfalse |
Tổ hợp tư liệu đầu vào
Văn bản · Văn bản UTF-8
Chuỗi messages[].content
Tham số phương thức và vòng đời
| Tham số | Hợp đồng |
|---|---|
Tham sốcontent_type | Hợp đồngapplication/json |
Tham sốrequired | Hợp đồngmodel, messages, max_tokens |
Tham sốoptional_controls | Hợp đồngstream |
Tham sốmaterial_types | Hợp đồngtext |
Tham sốtext_file_material | Hợp đồngĐọc tài liệu UTF-8 thực tế và đặt nội dung văn bản vào chuỗi đầu vào hoặc nội dung thông điệp được chỉ định. |
Vòng đời: synchronous_or_streamed
Bảng giá
Thông tin biểu giá không bổ sung tùy chọn yêu cầu. Các tham số được hỗ trợ nằm trong phương thức đã chọn.
- Chế độ nhanh
- Chưa chỉ định Khi chọn chế độ nhanh
- Chế độ Flex
- Chưa chỉ định Khi chọn chế độ flex
- Mức độ suy luận tối đa
- Chưa chỉ định Khi áp dụng mức điều chỉnh mặc định (default) cho mức độ suy luận tối đa
Mức phí Ailoot
Giá theo cấu hình
| Cấu hình | Biểu mức phí | Phí |
|---|---|---|
| Cấu hìnhGiá cơ sở cho token | Biểu mức phíMức phí cơ bản | Phí Đầu vào · Token đầu vào $0.000686 / 1K token Đầu ra · Token đầu ra $0.002744 / 1K token Đầu vào · Đọc bộ nhớ đệm $0 / 1K token Đầu vào · Ghi bộ nhớ đệm $0 / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ — / 1K token |
Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. Cách hoạt động của cơ chế tạm giữ và quyết toán →
Ví dụ yêu cầu
Ailoot Ultra · Anthropic Messages
{
"model": "qwen-max-latest",
"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-max-latest', '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-max-latest', '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))
Nhận và lưu kết quả
Ailoot Ultra · Anthropic Messages
JSON hoặc SSE
Lưu tất cả kết quả đã hoàn tất
Lưu mọi phản hồi hoàn chỉnh, tệp và phần nội dung được trả về.
Giữ mọi khối nội dung, chữ ký suy nghĩ và ID sử dụng công cụ thực tế. Ghép tất cả các phần thay đổi của khối SSE; khối văn bản đầu tiên không phải toàn bộ đầu ra.
Nếu cần kiểm tra phản hồi gốc
Giữ ID và header của yêu cầu, phản hồi. Không cung cấp URL chung để truy xuất tác vụ văn bản.
Trường phản hồi
| Trường | Loại |
|---|---|
Trườngid | Loạistring |
Trườngmodel | Loạistring |
Trườngcontent[] | Loạitext|thinking|tool_use|other content block |
Trườngstop_reason | Loạistring|null |
Trườngusage | Loạiobject |
Lỗi và bước tiếp theo
| Phản hồi | Điều kiện | Bước tiếp theo |
|---|---|---|
Phản hồi400 · invalid_request_error | Điều kiệnTrường bắt buộc, cách biểu diễn tài liệu hoặc giá trị tham số không hợp lệ | Bước tiếp theoSửa các trường được chỉ ra trước khi gửi yêu cầu tạo mới. |
Bí danh
Bí danh mô hình
Ailoot Ultra qwen-max-latest
Bí danh đường dẫn phương thức
/chat/completions
ID gọi liên quan
FAQ · qwen-max
- Có những đầu vào và kết quả nào?
POST /v1/chat/completions·qwen-max-latest:text→textPOST /v1/messages·qwen-max-latest:text→json,sse- Yêu cầu sử dụng những trường nào?
POST /v1/chat/completions·qwen-max-latest:model,messages,streamPOST /v1/messages·qwen-max-latest:model,messages,max_tokens,stream- Áp dụng những giới hạn nào?
POST /v1/chat/completions·qwen-max-latest:messages.min_items:1