Anthropic: Claude Sonnet 4.5
Claude Sonnet 4.5 คือโมเดลข้อความและภาพของ Anthropic สำหรับพัฒนาซอฟต์แวร์ เอเจนต์ซับซ้อน การใช้คอมพิวเตอร์ และงานวิเคราะห์ รองรับคำตอบตรงหรือการคิดแบบขยายที่กำหนดเอง พร้อมการใช้เหตุผลระหว่างเรียกเครื่องมือในขั้นตอนเบตาที่มีเอกสาร
เกี่ยวกับโมเดล
คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก
Claude Sonnet 4.5 คือรุ่น Sonnet ของ Anthropic ที่เน้นพัฒนาซอฟต์แวร์ งานเอเจนต์ซับซ้อน และการใช้คอมพิวเตอร์ พร้อมปรับปรุงการใช้เหตุผลและคณิตศาสตร์ รับข้อความและภาพแล้วสร้างข้อความ การเผยแพร่อธิบายงานต่อเนื่องหลายขั้น ความเข้าใจโค้ด และการเปลี่ยนแปลงที่เกี่ยวข้องกับโครงการกว้างกว่าฟังก์ชันโดด ๆ บรีฟที่เป็นประโยชน์ระบุพฤติกรรมที่ต้องการ ข้อมูลต้นทางที่เกี่ยวข้อง และชิ้นงานที่จะส่งมอบ เช่น ข้อเสนอแพตช์ คำอธิบายโค้ด การวิเคราะห์เอกสาร หรือคำตอบแบบมีโครงสร้าง
สำหรับงานซอฟต์แวร์ ให้ข้อจำกัดโครงการ ไฟล์หรือข้อความโค้ดที่เกี่ยวข้อง ข้อผิดพลาดที่สังเกต และตัวอย่างผลลัพธ์ที่คาดหวังอย่างชัดเจน ขอส่วนโค้ดที่ได้รับผลและคำอธิบายว่าการเปลี่ยนที่เสนอแก้ตัวอย่างนั้นอย่างไร ผู้พัฒนานำเสนอโมเดลว่าเหมาะกับการสร้างเอเจนต์และทำงานพัฒนาร่วมกับเครื่องมือ แอปพลิเคชันรอบข้างอ่านและแก้ไฟล์ รันคำสั่งหรือการตรวจ แล้วคืนผลจริง โมเดลใช้เหตุผลจากหลักฐานนั้น แยกข้อเสนอเปลี่ยนแปลงกับการตรวจที่ทำเสร็จในรายงานสุดท้าย
การใช้คอมพิวเตอร์เป็นอีกการประยุกต์ของความสามารถภาพและเอเจนต์ การเผยแพร่ของ Anthropic สาธิตการโต้ตอบเบราว์เซอร์ ไปตามหน้าเว็บ และทำงานกับสเปรดชีตผ่านสภาพแวดล้อมที่เชื่อมต่อ บรีฟภาพอาจให้ภาพหน้าจอ ระบุเป้าหมาย และกำหนดการกระทำที่แอปพลิเคชันอนุญาต จากนั้นแอปพลิเคชันทำปฏิสัมพันธ์ที่เลือกและคืนหน้าจอที่เปลี่ยนหรือผลอื่น เช่นเดียวกัน โมเดลเตรียมเนื้อหาและโค้ดสำหรับเอกสาร สเปรดชีต และสไลด์ได้ ส่วนสภาพแวดล้อมสร้างไฟล์สำเร็จ ความเข้าใจข้อความและภาพไม่ได้ทำให้โมเดลเป็นตัวสร้างภาพหรือเสียงโดยตรง
ข้อกำหนดตรงรุ่นของผู้พัฒนาระบุหน้าต่างบริบท 200K โทเคนและผลลัพธ์ได้ถึง 64K โทเคน วันตัดความรู้ที่เชื่อถือได้คือเดือนมกราคม 2025 แยกจากวันตัดข้อมูลฝึกที่ใหม่กว่าซึ่งระบุในหน้าเดียวกัน เก็บขอบเขตเอกสาร ป้ายหน้า หน่วย และตัวระบุโค้ดให้ชัดในข้อมูลเข้ายาว และเหลือพื้นที่สำหรับคำตอบกับการใช้เหตุผล ผู้พัฒนายังอธิบายการรับรู้บริบทในรุ่นนี้ ขั้นตอนที่รองรับจึงติดตามพื้นที่ที่เหลือระหว่างสนทนาได้ ช่วยจัดงานต่อเนื่องภายในหน้าต่าง แต่ไม่ได้เปลี่ยนหน้าต่างเป็นความจุที่มากกว่าของ Sonnet รุ่นหลัง
Sonnet 4.5 รองรับคำตอบทั่วไปและการคิดแบบขยายที่กำหนดเอง ในโหมดหลัง budget_tokens ตั้งเป้าการใช้เหตุผลภายในก่อนคำตอบที่มองเห็น ค่าต่ำสุดที่มีเอกสารคือ 1,024 โทเคน และปกติงบต้องต่ำกว่า max_tokens เพราะการคิดกับคำตอบสุดท้ายใช้งบสร้างร่วมกัน งบเป็นเป้าหมาย ไม่ใช่คำสัญญาว่าจะใช้โทเคนเท่าตัวเลขนั้นพอดี รุ่นนี้ไม่มีโหมดคิดแบบปรับอัตโนมัติหรือตัวควบคุม effort ที่อธิบายสำหรับ Sonnet รุ่นหลัง เลือกความลึกการวิเคราะห์ที่ต้องการและเหลือโควตาพอสำหรับคำตอบสุดท้ายที่ใช้ได้
การคิดสลับกับการเรียกเครื่องมือแบบเบตาของผู้พัฒนาให้ Sonnet 4.5 ใช้เหตุผลระหว่างเรียกเครื่องมือภายในหนึ่งรอบ โดยใช้สิ่งที่สังเกตซึ่งคืนมาตัดสินขั้นถัดไป ต้องใช้คุณสมบัติเบตาที่ระบุในขั้นตอน Messages ที่รองรับ ในกรณีนี้ งบการคิดสูงกว่า max_tokens ได้ เพราะครอบคลุมหลายบล็อกการคิดในรอบผู้ช่วยเดียว ส่งผลเครื่องมือกลับพร้อมเนื้อหาการคิดที่เกี่ยวข้องโดยไม่แก้ไข รวมถึงลายเซ็น การแก้เนื้อหาทำให้ใช้ไม่ได้ งานค้นคว้าหรือดีบักจึงสลับข้อเสนอการตรวจ ผลจริงที่คืน และการวิเคราะห์ที่ปรับใหม่ได้ โดยไม่ถือว่าข้อเสนอข้อความเป็นการกระทำที่เสร็จ
สำหรับข้อมูลภาพ ผู้พัฒนารองรับ JPEG, PNG, GIF และ WebP และใช้เฉพาะเฟรมแรกของภาพเคลื่อนไหว ระดับภาพดั้งเดิมมาตรฐานที่รุ่นนี้ใช้มีขอบยาวไม่เกิน 1,568 พิกเซลและไม่เกิน 1,568 โทเคนภาพ ภาพที่ใหญ่กว่าจะถูกลดขนาด คู่มือภาพของผู้พัฒนาระบุได้ถึง 100 ภาพต่อคำขอ API สำหรับโมเดลบริบท 200K โดยอาจถึงเงื่อนไขขนาดภาพหรือขนาดคำขอรวมก่อน หากทำได้ ให้วางภาพก่อนคำถาม ติดป้ายเมื่อมีหลายภาพ และรักษาข้อความเล็กหรือป้ายกราฟ คู่มือแนะนำภาพชัดและบริบทรอบข้างเพียงพอสำหรับตีความรายละเอียดที่เห็น
การแก้บริบทและเครื่องมือความจำเปิดตัวควบคู่โมเดลเพื่อรองรับขั้นตอนเอเจนต์ยาวขึ้น เป็นวิธีที่แอปพลิเคชันสนับสนุนในการเก็บสถานะที่มีประโยชน์หรือลบข้อมูลเครื่องมือเก่า ไม่ใช่ความจำโมเดลไม่จำกัดหรือคุณสมบัติย่อบริบทฝั่งเซิร์ฟเวอร์ที่มาภายหลัง สำหรับงานหลายช่วง ให้เก็บการตัดสินใจที่ทำแล้ว คำถามคงค้าง และหลักฐานที่ขั้นถัดไปต้องใช้ Anthropic ยังอธิบายความต้านทานคำสั่งซ่อนในเนื้อหาภายนอกที่ดีขึ้น พร้อมระบุว่าตัวจำแนกเฉพาะโมเดลอาจทำเครื่องหมายข้อมูลที่ไม่เป็นอันตรายได้บางครั้ง ผลที่เป็นประโยชน์ยังคงเป็นชิ้นงานที่ตรวจได้และผูกกับหลักฐานที่ให้ โดยแยกโหมดและขีดจำกัด Sonnet 4.5 ตรงรุ่นจากรุ่นหลัง
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions claude-sonnet-4-5-20250929-thinking
claude-sonnet-4-5-20250929-thinking
claude-sonnet-4-5-20250929-thinkingเริ่มต้น
Claude Sonnet 4.5 คือโมเดลข้อความและภาพของ Anthropic สำหรับพัฒนาซอฟต์แวร์ เอเจนต์ซับซ้อน การใช้คอมพิวเตอร์ และงานวิเคราะห์ รองรับคำตอบตรงหรือการคิดแบบขยายที่กำหนดเอง พร้อมการใช้เหตุผลระหว่างเรียกเครื่องมือในขั้นตอนเบตาที่มีเอกสาร
- อินพุตที่รองรับ
- ข้อความ
- ผลลัพธ์
- ข้อความ
ใช้งานได้ใน Ailoot · อินพุตและเมธอด
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- ขาเข้า
text- ขาออก
text- รูปแบบเอาต์พุต
- json หรือ SSE
| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
|---|---|---|---|---|
ฟิลด์model | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด claude-sonnet-4-5-20250929-thinking | ค่าเริ่มต้น— |
ฟิลด์messages | ประเภทmessage[] | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 1 | ค่าเริ่มต้น— |
ฟิลด์messages[].role | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
ฟิลด์messages[].content | ประเภทstring | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ใช้เมื่อ: บทสนทนาข้อความ | ค่าเริ่มต้น— |
ฟิลด์stream | ประเภทboolean | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้นfalse |
ชุดผสมของสื่ออินพุต
ข้อความ · ข้อความ UTF8
messages[].content
พารามิเตอร์และวงจรการทำงานของเมธอด
| พารามิเตอร์ | ข้อกำหนด |
|---|---|
พารามิเตอร์content_type | ข้อกำหนดapplication/json |
พารามิเตอร์required | ข้อกำหนดmodel, messages |
พารามิเตอร์material_types | ข้อกำหนดtext |
พารามิเตอร์messages | ข้อกำหนดอาร์เรย์ข้อความที่มีโครงสร้าง role/content |
พารามิเตอร์file_material | ข้อกำหนดแทรกเอกสาร UTF-8 จริงเป็นข้อความตามต้นฉบับ โดยไม่อนุมาน ID ไฟล์ |
พารามิเตอร์optional_controls | ข้อกำหนดstream |
พารามิเตอร์control_scope | ข้อกำหนดบทสนทนาข้อความ โดย stream เป็นบูลีนและมีค่าเริ่มต้น false |
พารามิเตอร์output_modalities | ข้อกำหนดtext |
พารามิเตอร์hosted_operations | ข้อกำหนดfalse |
พารามิเตอร์multimodal_input_binding | ข้อกำหนดnull |
ชื่ออื่นของเมธอด: /chat/completions
วงจรการทำงาน: synchronous_or_streamed
ส่ง ID โมเดลที่ตรงทุกตัวพร้อม messages
ความยาวบริบทไม่ใช่เพดานผลลัพธ์
ไฟล์ข้อความให้ข้อความตามต้นฉบับได้ ส่วนข้อมูลเข้าภาพ/เสียง/ออบเจ็กต์ไฟล์ต้องมีการผูกที่ตรงตามจริง
ราคา
ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก
- โหมดรวดเร็ว
- ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว
- โหมดยืดหยุ่น
- ไม่ได้ระบุ เมื่อเลือกโหมด flex
- ระดับการใช้เหตุผลสูงสุด
- ไม่ได้ระบุ เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด
อัตราค่าบริการ Ailoot
ราคาตามการตั้งค่า
| การตั้งค่า | ตารางอัตราค่าบริการ | ค่าบริการ |
|---|---|---|
| การตั้งค่าอัตราราคาพื้นฐานของโทเคน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ค่าบริการ ขาเข้า · โทเค็นอินพุต $0.006 / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต $0.03 / 1K โทเค็น ขาเข้า · การอ่านแคช $0.0006 / 1K โทเค็น ขาเข้า · การเขียนแคช $0.0075 / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง — / 1K โทเค็น |
Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →
ตัวอย่างคำขอ
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":"claude-sonnet-4-5-20250929-thinking","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="claude-sonnet-4-5-20250929-thinking", 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"))
รับและบันทึกผลลัพธ์
Ailoot Ultra · OpenAI Chat
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 claude-sonnet-4-5-20250929-thinking
ชื่อพาธเมธอดอื่น
/chat/completions
ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล
FAQ · Anthropic: Claude Sonnet 4.5
- มีอินพุตและผลลัพธ์ใดบ้าง?
POST /v1/chat/completions·claude-sonnet-4-5-20250929-thinking:text→text- คำขอใช้ฟิลด์ใดบ้าง?
POST /v1/chat/completions·claude-sonnet-4-5-20250929-thinking:model,messages,stream- มีข้อจำกัดใดบ้าง?
POST /v1/chat/completions·claude-sonnet-4-5-20250929-thinking:messages.min_items:1