MCP Academy · บทเรียน

ร้องขอการเติมข้อความจากโฮสต์

เรียกไคลเอ็นต์เพื่อเรียกใช้พรอมต์ของ LLM

บทเรียน 2 จาก 413 ขั้นตอน

ร้องขอการเติมข้อความจากโฮสต์ เป็นบทเรียน MCP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MCP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน

เมธอดสำหรับส่งคำขอ

หากต้องการขอให้สร้างข้อความ เซิร์ฟเวอร์จะส่งคำขอ sampling/createMessage ไปยังไคลเอ็นต์ผ่านโพรโทคอล

{ "method": "sampling/createMessage" }

เข้าถึงไคลเอ็นต์ผ่านบริบท

ภายในเครื่องมือ คุณจะได้รับออบเจ็กต์ Context เซสชันของออบเจ็กต์นี้คือช่องทางกลับไปยังไคลเอ็นต์ที่สามารถเรียกใช้การสุ่มตัวอย่างได้

async def tool(topic: str, ctx: Context) -> str:
    ...

เรียก create_message

Python SDK เปิดให้ใช้ ctx.session.create_message รอผลลัพธ์ ส่งข้อความของคุณไป แล้วคุณจะได้รับคำตอบจากโมเดลกลับมา

result = await ctx.session.create_message(
    messages=[...],
    max_tokens=100,
)

สร้าง SamplingMessage

แต่ละรอบที่คุณส่งคือ SamplingMessage ซึ่งมีบทบาท เช่น ผู้ใช้ และบล็อกเนื้อหาที่เก็บข้อความจริง

SamplingMessage(role="user",
    content=TextContent(type="text", text=prompt))

ห่อข้อความด้วย TextContent

ข้อความธรรมดาจะอยู่ภายใน TextContent โดยกำหนดชนิดเป็น text ตัวห่อที่ระบุชนิดนี้คือวิธีที่ MCP ใช้ส่งเนื้อหาข้อความ

TextContent(type="text", text="Summarize this report")

กำหนด max_tokens เสมอ

กำหนดเพดานให้โมเดลด้วย max_tokens ซึ่งจำกัดความยาวของคำตอบที่สร้างขึ้นและช่วยให้คาดการณ์ค่าใช้จ่ายได้

max_tokens=200

อ่านผลลัพธ์

เนื้อหาของคำตอบคือบล็อกที่ระบุชนิด ตรวจสอบชนิดของบล็อก และหากเป็นข้อความ ให้อ่าน result.content.text เพื่อรับคำตอบ

if result.content.type == "text":
    return result.content.text

ตรวจสอบว่าโมเดลใดทำงาน

ผลลัพธ์ยังรายงานโมเดลที่ไคลเอ็นต์เลือกด้วย คุณจึงบันทึกได้อย่างแม่นยำว่าโมเดลใดสร้างผลลัพธ์ของคุณ

print(result.model)  # e.g. claude-3-sonnet-20240307

ทราบสาเหตุที่หยุด

ฟิลด์ stopReason บอกสาเหตุที่การสร้างข้อความสิ้นสุดลง เช่น endTurn หรือถึงขีดจำกัดโทเคนสูงสุดของคุณ

result.stopReason  # "endTurn"

เครื่องมือทั้งชุดแบบสั้น ๆ

ดังนั้นเครื่องมือสุ่มตัวอย่างคือ: สร้างข้อความ รอผลลัพธ์จาก create_message แล้วส่งข้อความกลับ โดยมีเพียงไม่กี่บรรทัด

r = await ctx.session.create_message(
    messages=[msg], max_tokens=100)
return r.content.text

อาจถูกปฏิเสธได้

โปรดจำไว้ว่าผู้ใช้อาจปฏิเสธคำขอได้ ให้จัดการการปฏิเสธเหมือนความล้มเหลวทุกประเภท และรับมืออย่างเหมาะสม

ตรวจสอบอย่างรวดเร็ว

รายละเอียดหนึ่งอย่างเกี่ยวกับการเรียกจากเครื่องมือของคุณ

สรุป

ส่ง sampling/createMessage ผ่าน ctx.session ห่อพรอมป์ด้วย SamplingMessage และ TextContent กำหนด max_tokens แล้วอ่าน result.content.text 💬

เริ่มต้นได้ฟรี

เรียนรู้ Python ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

คำถามที่พบบ่อย

บทเรียน “ร้องขอการเติมข้อความจากโฮสต์” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ร้องขอการเติมข้อความจากโฮสต์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MCP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ร้องขอการเติมข้อความจากโฮสต์”

เรียกไคลเอ็นต์เพื่อเรียกใช้พรอมต์ของ LLM คุณปฏิบัติ MCP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MCP Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน MCP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ร้องขอการเติมข้อความจากโฮสต์” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน MCP Academy นี้ได้ไหม

ได้ บทเรียน MCP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การสุ่มตัวอย่างเปิดความสามารถอะไรบ้าง
  2. ร้องขอการเติมข้อความจากโฮสต์
  3. กำหนดรูปแบบข้อความและค่ากำหนด
  4. การอนุมัติโดยมีมนุษย์อยู่ในกระบวนการ
← กลับไปที่ MCP Academy