การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล
พัฒนาเซิร์ฟเวอร์ต่อไปโดยไม่ทำให้ไคลเอ็นต์เสียหาย
การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล เป็นบทเรียน MCP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MCP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน
ไคลเอ็นต์พึ่งพารูปแบบของคุณ
เมื่อผู้อื่นเชื่อมต่อแล้ว พวกเขาจะพึ่งพาชื่อเครื่องมือและ รูปแบบ ของอาร์กิวเมนต์ การเปลี่ยนแปลงโดยไม่ระมัดระวังจะทำให้ไคลเอ็นต์ทุกตัวเสียหายพร้อมกัน
การเปลี่ยนแปลงแบบเพิ่มข้อมูลปลอดภัย
การเพิ่มพารามิเตอร์ เสริม พร้อมค่าปริยายช่วยให้ผู้เรียกเดิมยังทำงานได้ พวกเขาเพียงไม่สนใจฟิลด์ใหม่ที่ไม่ได้ส่งมา
def search(q: str, limit: int = 10) -> list:
...การเปลี่ยนแปลงที่ทำให้ใช้งานไม่ได้ย่อมสร้างปัญหา
การเปลี่ยนชื่อเครื่องมือ การนำอาร์กิวเมนต์ออก หรือการทำให้อาร์กิวเมนต์เป็น สิ่งที่จำเป็นต้องระบุ ล้วนเป็นการเปลี่ยนแปลงที่ทำให้ใช้งานไม่ได้ ไคลเอ็นต์เดิมจะส่งคำขอที่ไม่ตรงกับรูปแบบใหม่โดยฉับพลัน
เพิ่มก่อน แล้วค่อยเลิกใช้
หากต้องการพัฒนาฟิลด์ ให้เพิ่มฟิลด์ใหม่และคงฟิลด์เดิมไว้ ระบุว่าฟิลด์เดิม เลิกใช้แล้ว ในคำอธิบาย เพื่อให้ผู้เรียกทราบว่าควรย้ายไปใช้แบบใหม่
ใส่เวอร์ชันไว้ในชื่อเครื่องมือ
หากเป็นการเปลี่ยนแปลงครั้งใหญ่จริง ให้เปิดตัวเครื่องมือ v2 ควบคู่กับ v1 เครื่องมือทั้งสองจะทำงานอยู่ระยะหนึ่ง เพื่อให้ไคลเอ็นต์ทยอยย้ายได้ตามความพร้อม
@mcp.tool(name="search_v2")
def search_v2(query: str) -> list:
...เซิร์ฟเวอร์รายงานเวอร์ชันของตนเอง
เซิร์ฟเวอร์ของคุณจะแจ้งชื่อและ เวอร์ชัน ระหว่างการจับมือเชื่อมต่อ ให้เพิ่มหมายเลขเวอร์ชันเพื่อให้ไคลเอ็นต์เห็นว่าตนเชื่อมต่อกับรุ่นใด
mcp = FastMCP("my-server")
# version surfaces in server infoปฏิบัติตามการกำหนดเวอร์ชันเชิงความหมาย
ใช้ การกำหนดเวอร์ชันเชิงความหมาย: เพิ่มแพตช์เมื่อแก้ไขข้อบกพร่อง เพิ่มเวอร์ชันย่อยเมื่อเพิ่มความสามารถ และเพิ่มเวอร์ชันหลักเมื่อทำการเปลี่ยนแปลงที่ทำให้ใช้งานไม่ได้ หมายเลขเวอร์ชันจะช่วยบอกประวัติของการเปลี่ยนแปลง
เพิ่มความสามารถของผลลัพธ์ แต่อย่าลดทอน
โดยทั่วไป การเพิ่มฟิลด์ในผลลัพธ์นั้นปลอดภัย แต่การนำฟิลด์ออกถือเป็นการเปลี่ยนแปลงที่ทำให้ใช้งานไม่ได้ ให้ถือว่าโครงสร้าง ผลลัพธ์ ของคุณเป็นคำมั่นสัญญาที่ไคลเอ็นต์จะนำไปแยกวิเคราะห์
จัดทำบันทึกการเปลี่ยนแปลง
บันทึกการเปลี่ยนแปลงของเครื่องมือและโครงสร้างข้อมูลทุกรายการไว้ใน บันทึกการเปลี่ยนแปลง ผู้ใช้ที่อัปเกรดจำเป็นต้องเห็นว่าส่วนใดถูกย้าย มีอะไรใหม่ และอะไรถูกนำออก
กำหนดวันสิ้นสุดการเลิกใช้
ประกาศว่าเครื่องมือเดิมจะถูกนำออกเมื่อใด การกำหนดวันที่ สิ้นสุดการใช้งานอย่างชัดเจนจะผลักดันให้ย้ายระบบ โดยไม่ทำให้ใครได้รับผลกระทบอย่างกะทันหัน
ทดสอบกับไคลเอ็นต์รุ่นเก่า
ก่อนเผยแพร่ ให้เรียกใช้ การทดสอบ โดยจำลองวิธีที่ไคลเอ็นต์รุ่นเก่าจะเรียกใช้คุณ วิธีนี้จะตรวจพบการเปลี่ยนแปลงที่ทำให้ใช้งานไม่ได้โดยไม่ได้ตั้งใจ ซึ่งตัวตรวจสอบชนิดข้อมูลมองไม่เห็น
ตรวจสอบอย่างรวดเร็ว
การเปลี่ยนแปลงใดของเครื่องมือเดิมที่ปลอดภัยสำหรับไคลเอ็นต์ปัจจุบัน
ทบทวน: พัฒนาอย่างปลอดภัย
เลือกใช้การเปลี่ยนแปลงแบบ เพิ่มความสามารถ เลิกใช้ก่อนนำออก เปิดตัว v2 สำหรับการเปลี่ยนแปลงครั้งใหญ่ ปฏิบัติตามการกำหนดเวอร์ชันเชิงความหมาย และจัดทำบันทึกการเปลี่ยนแปลง คุณจึงเผยแพร่ได้อย่างมั่นใจ! 🚀
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MCP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล”
พัฒนาเซิร์ฟเวอร์ต่อไปโดยไม่ทำให้ไคลเอ็นต์เสียหาย คุณปฏิบัติ MCP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MCP Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน MCP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน MCP Academy นี้ได้ไหม
ได้ บทเรียน MCP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น
- การกำหนดค่าและข้อมูลลับผ่านสภาพแวดล้อม
- เครื่องมือที่ทำซ้ำได้อย่างปลอดภัยและคำนึงถึงผลข้างเคียง
- การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล