Anthropic Claude API ใน Python
anthropic.Anthropic(), messages.create(), บล็อกเนื้อหา การคิดแบบขยาย และการส่งข้อมูลแบบต่อเนื่อง
Anthropic Claude API ใน Python เป็นบทเรียน Learn AI with Python ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Learn AI with Python และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 4 บทเรียน
SDK ของ Anthropic
คุณเข้าถึงโมเดล Claude ของ Anthropic ได้ผ่านแพ็กเกจ Python anthropic ติดตั้งด้วย pip install anthropic Claude โดดเด่นด้านการให้เหตุผลกับบริบทขนาดยาว การทำตามคำสั่งอย่างรอบคอบ และการใช้เครื่องมือ
pip install anthropic
import anthropicการสร้างไคลเอ็นต์
สร้างไคลเอ็นต์ด้วย anthropic.Anthropic() โดยค่าเริ่มต้น ไคลเอ็นต์จะอ่านคีย์จากตัวแปรสภาพแวดล้อม ANTHROPIC_API_KEY ซึ่งช่วยเก็บข้อมูลรับรองให้แยกออกจากโค้ด
import anthropic
client = anthropic.Anthropic()
# Or explicitly
client = anthropic.Anthropic(api_key="sk-ant-...")API สำหรับข้อความ
Claude ใช้ client.messages.create() ต่างจาก OpenAI ตรงที่ คำสั่งระบบเป็นพารามิเตอร์แยกต่างหาก ไม่ใช่ข้อความในรายการ รายการ messages จะเก็บเฉพาะรอบการสนทนาของผู้ใช้และผู้ช่วย
message = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
system="You are a concise expert.",
messages=[{"role": "user", "content": "Explain RAG in one sentence."}]
)ต้องระบุ max_tokens
ความแตกต่างสำคัญคือ max_tokens เป็นค่าที่ ต้องระบุ ใน API ของ Anthropic ค่านี้จำกัดจำนวนโทเค็นที่ Claude อาจสร้างในคำตอบ ตั้งค่าให้สูงพอสำหรับผลลัพธ์ที่คาดหวัง แต่ค่านี้ยังช่วยป้องกันค่าใช้จ่ายที่พุ่งสูงเกินควบคุมได้ด้วย
message = client.messages.create(
model="claude-opus-4-8",
max_tokens=2048,
messages=[{"role": "user", "content": "Write a haiku about Python."}]
)การอ่านการตอบกลับ
Claude จะส่งรายการ content ที่ประกอบด้วยบล็อกต่าง ๆ กลับมา สำหรับข้อความธรรมดา คำตอบจะอยู่ที่ message.content[0].text ที่เป็นรายการก็เพราะการตอบกลับหนึ่งครั้งอาจมีหลายบล็อก เช่น ข้อความพร้อมคำขอใช้เครื่องมือ
print(message.content[0].text)
# Inspect block type
print(message.content[0].type) # "text"ประวัติการสนทนา
เช่นเดียวกับ API สนทนาอื่น ๆ Claude ไม่มีสถานะ หากต้องการสนทนาต่อ คุณต้องผนวกคำตอบของผู้ช่วยและรอบถัดไปของผู้ใช้เข้าไปใน messages ด้วยตนเอง
messages = [{"role": "user", "content": "Hello"}]
resp = client.messages.create(model="claude-opus-4-8", max_tokens=512, messages=messages)
messages.append({"role": "assistant", "content": resp.content[0].text})
messages.append({"role": "user", "content": "Tell me more"})การสตรีมด้วยตัวจัดการบริบท
สำหรับผลลัพธ์แบบเรียลไทม์ Claude มี client.messages.stream() ซึ่งใช้เป็น ตัวจัดการบริบท ร่วมกับคำสั่ง with วิธีนี้จะเปิดและปิดการเชื่อมต่ออย่างปลอดภัย
with client.messages.stream(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Count to five."}]
) as stream:
pass # iterate insideการวนซ้ำผ่านสตรีมข้อความ
ภายในบล็อก with ให้วนลูปผ่าน stream.text_stream เพื่อรับส่วนข้อความที่เปลี่ยนแปลงขณะที่ Claude สร้างข้อความ แต่ละรายการเป็นสตริงที่พร้อมพิมพ์
with client.messages.stream(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Count to five."}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)การรับข้อความฉบับสุดท้าย
หลังการสตรีมเสร็จสิ้น ให้เรียกใช้ stream.get_final_message() เพื่อดึงออบเจ็กต์ข้อความที่ประกอบรวมเสร็จสมบูรณ์ ซึ่งรวมข้อมูลการใช้งานและบล็อกเนื้อหาทั้งหมด
with client.messages.stream(model="claude-opus-4-8", max_tokens=1024,
messages=[{"role": "user", "content": "Hi"}]) as stream:
for text in stream.text_stream:
print(text, end="")
final = stream.get_final_message()การใช้งานโทเค็น
การตอบกลับจะมีออบเจ็กต์ usage ซึ่งประกอบด้วย input_tokens และ output_tokens โปรดสังเกตว่าการตั้งชื่อต่างจาก OpenAI (ซึ่งใช้ prompt/completion) แต่ความหมายเหมือนกัน คือใช้ติดตามค่าใช้จ่ายต่อการเรียกใช้แต่ละครั้ง
print(message.usage.input_tokens)
print(message.usage.output_tokens)ความแตกต่างระหว่าง OpenAI กับ Anthropic
ความแตกต่างสำคัญที่ควรจำมีดังนี้ Anthropic ใส่ คำสั่งระบบไว้ในพารามิเตอร์ของตัวเอง กำหนดให้ต้องมี max_tokens อ่านข้อความจาก content[0].text และสตรีมผ่านตัวจัดการบริบท with เมื่อเข้าใจสิ่งเหล่านี้แล้ว คุณจะสลับระหว่างผู้ให้บริการได้อย่างมั่นใจ
ตรวจสอบความเข้าใจ
ทดสอบความรู้เกี่ยวกับ Anthropic ของคุณ
สรุป: Claude ใน Python
คุณสร้างไคลเอ็นต์ anthropic.Anthropic() และเรียกใช้ messages.create() พร้อม max_tokens ที่จำเป็นต้องระบุและคำสั่ง system ที่แยกต่างหาก คุณอ่านคำตอบจาก content[0].text และติดตามค่าใช้จ่ายผ่าน usage.input_tokens / output_tokens
สำหรับการสตรีม คุณใช้ client.messages.stream() เป็นตัวจัดการบริบท with วนซ้ำผ่าน text_stream และดึงผลลัพธ์ที่ประกอบรวมแล้วด้วย get_final_message()
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 53
- บทเรียน
- 225
คำถามที่พบบ่อย
บทเรียน “Anthropic Claude API ใน Python” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “Anthropic Claude API ใน Python” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Learn AI with Python ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “Anthropic Claude API ใน Python”
anthropic.Anthropic(), messages.create(), บล็อกเนื้อหา การคิดแบบขยาย และการส่งข้อมูลแบบต่อเนื่อง คุณปฏิบัติ Learn AI with Python ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Learn AI with Python หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Learn AI with Python บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “Anthropic Claude API ใน Python” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Learn AI with Python นี้ได้ไหม
ได้ บทเรียน Learn AI with Python ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- OpenAI API: chat.completions และการส่งข้อมูลแบบต่อเนื่อง
- Anthropic Claude API ใน Python
- การเรียกใช้ฟังก์ชันและการใช้เครื่องมือด้วย LLM
- วิศวกรรมพรอมต์สำหรับแอป LLM ในระบบจริง