เซิร์ฟเวอร์ MCP ท้องถิ่นสำหรับการดึงรหัสที่มุ่งเน้นและบริบท AI
chunkhound ซึ่งพัฒนาโดย Chunkhound เป็นเซิร์ฟเวอร์ Model Context Protocol ที่เชื่อมต่อโมเดลภาษาขนาดใหญ่กับฐานข้อมูลโค้ดในท้องถิ่นเพื่อจัดหาบริบทที่ตรงเป้าหมายในระหว่างการพัฒนาที่ช่วยด้วย AI มันทำหน้าที่เป็นเครื่องมือค้นหาที่แบ่งโปรเจกต์ออกเป็นชิ้นส่วนที่ค้นหาได้และส่งมอบข้อมูลที่แม่นยำให้กับ LLM เพื่อหลีกเลี่ยงหน้าต่างบริบทที่ใหญ่เกินไป เซิร์ฟเวอร์เน้นการค้นหาเวกเตอร์เชิงความหมายและการรวม MCP แบบเนทีฟ และมุ่งเป้าไปที่วิศวกรซอฟต์แวร์และนักพัฒนาที่ตระหนักถึง AI ที่ต้องการโค้ดที่สร้างโดย AI ที่ชัดเจนและเกี่ยวข้องมากขึ้น
คุณสามารถใช้มันทำงานอะไรได้บ้าง?
ใช้เซิร์ฟเวอร์เพื่อให้ผู้ช่วยการเขียนโค้ด AI ได้รับสแนปช็อตที่แคบและเกี่ยวข้องสำหรับงานต่างๆ เช่น การสร้างฟังก์ชัน การตรวจสอบสถานที่เรียก และการแก้ไขข้อบกพร่องในโมดูลที่ไม่คุ้นเคย ผลลัพธ์ที่เป็นประโยชน์ รวมถึงการนำทางโค้ดที่รวดเร็วขึ้นและบริบทของคำสั่งที่มุ่งเน้นมากขึ้น การดำเนินการในเวิร์กโฟลว์ทั่วไปที่เซิร์ฟเวอร์สนับสนุนรวมถึง:
- การดึงตัวอย่างโค้ดแบบเชิงความหมาย
- การแสดงรายการระบบไฟล์และการอ่านไฟล์ที่มุ่งเป้า
- การจัดหาสแนปช็อตในระดับฟังก์ชันหรือคลาสให้กับ LLM
ความถูกต้องของการดึงข้อมูลสำหรับบริบทของโค้ดเป็นอย่างไร?
การดึงข้อมูลขับเคลื่อนโดยการค้นหาเชิงความหมายที่ใช้เวกเตอร์ ซึ่งค้นหาสแนปช็อตตามความหมายแทนการจับคู่คำสำคัญ และโดยการแบ่งส่วนเชิงตรรกะที่จำกัดการสูญเสียโทเค็น การออกแบบนี้มีไว้โดยเฉพาะสำหรับที่เก็บขนาดใหญ่ โดยใช้ฐานข้อมูลในเครื่องเพื่อให้การค้นหามีความรวดเร็ว ความถูกต้องขึ้นอยู่กับขอบเขตของส่วนและการเลือกการฝัง ดังนั้นความเกี่ยวข้องจึงดีขึ้นเมื่อส่วนต่างๆ สอดคล้องกับหน่วยโค้ดเชิงตรรกะ เช่น ฟังก์ชันและโมดูล
ต้องมีความรู้ทางเทคนิคเพื่อให้ได้ผลลัพธ์ที่มีประโยชน์หรือไม่?
การตั้งค่าเริ่มต้นคาดหวังความคุ้นเคยกับ Node.js และขั้นตอนพื้นฐานในบรรทัดคำสั่ง เนื่องจากการติดตั้งและการใช้งานในระยะเวลาจะใช้ npm และ npx เซิร์ฟเวอร์เชื่อมต่อกับลูกค้าที่เข้ากันได้กับ MCP โดยการเพิ่มคำสั่งเซิร์ฟเวอร์ไปยังการกำหนดค่าของลูกค้า ดังนั้นจึงต้องมีการแก้ไขการกำหนดค่าบางอย่าง หลังจากการตั้งค่า ผู้ช่วย AI ที่สนับสนุน MCP สามารถสอบถามเซิร์ฟเวอร์เพื่อดึงข้อมูลโดยไม่ต้องตรวจสอบไฟล์ด้วยตนเองเพิ่มเติม
มันจัดการกับความเป็นส่วนตัวและที่เก็บขนาดใหญ่ได้อย่างไร?
การจัดทำดัชนีและการดึงข้อมูลเกิดขึ้นในอุปกรณ์ ดังนั้นไฟล์ต้นฉบับที่เป็นกรรมสิทธิ์จะถูกประมวลผลและจัดเก็บในเครื่องแทนที่จะส่งไปยังบริการจัดทำดัชนีของบุคคลที่สาม โครงการนี้เป็นโอเพนซอร์สและออกแบบมาเพื่อสร้างดัชนีในเครื่องที่สามารถขยายขนาดไปยังฐานโค้ดที่ใหญ่เป็นพิเศษ ทำให้สามารถค้นหาได้อย่างรวดเร็วโดยไม่ต้องอัปโหลดภายนอก โปรดทราบว่าลูกค้า AI เองอาจยังต้องการการเข้าถึงเครือข่ายสำหรับการสอบถามโมเดล
เครื่องมือที่ใช้ได้จริงสำหรับนักพัฒนาที่รวม AI เข้ากับการทำงานในโค้ดในโลกจริง
เซิร์ฟเวอร์นี้เหมาะสำหรับนักพัฒนาที่ยอมรับขั้นตอนการตั้งค่าที่สั้นลงเพื่อแลกกับบริบท AI ที่จัดการในท้องถิ่นได้อย่างแน่นหนาและการเรียกคืนโค้ดที่รวดเร็วขึ้นในระหว่างการพัฒนา คาดหวังการตอบสนองจากผู้ช่วยที่เกี่ยวข้องมากขึ้นเมื่อคำถามมีความเฉพาะเจาะจง และยังคงตรวจสอบโค้ดที่สร้างขึ้นด้วยการทดสอบและการตรวจสอบ เซิร์ฟเวอร์นี้เป็นตัวเลือกที่สมเหตุสมผลสำหรับทีมที่เพิ่มการเขียนโค้ดที่ช่วยด้วย AI ลงในแนวทางการตรวจสอบและการปรับใช้ที่มีอยู่แล้ว