AI ผู้ตรวจสอบ pull-request ที่ทำงานในเครื่องหรือใน CI pipelines
ดำเนินการตรวจสอบ pull request อัตโนมัติที่ขับเคลื่อนด้วยโมเดลซึ่งวิเคราะห์ git diffs และทำเครื่องหมายตรรกะ ความปลอดภัย และรูปแบบข้อบกพร่องก่อนการรวมเข้าด้วยกัน Matt Coles นักพัฒนาซอฟต์แวร์ มุ่งเป้าไปที่ผู้ตรวจสอบโค้ดและทีม DevOps ที่ต้องการการทำงานอัตโนมัติที่ไม่มีแรงเสียดทาน เครื่องมือนี้รองรับผู้ให้บริการ LLM คลาวด์หลายรายและโมเดลท้องถิ่นผ่าน Ollama มีการรับรองความถูกต้อง OIDC แบบไม่ใช้กุญแจ และรวมเข้ากับ GitHub Actions, GitLab CI หรือเวิร์กโฟลว์ CLI ท้องถิ่นสำหรับการตรวจสอบก่อนการส่ง
lgtmaybe ตรวจสอบอะไรใน pull request?
lgtmaybe ตรวจสอบ git diffs และสร้างผลการตรวจสอบที่มีโครงสร้าง โดยใช้ขั้นตอนการบีบอัด diff อัตโนมัติเพื่อลบไฟล์ที่สร้างขึ้นและไบนารีเพื่อให้การวิเคราะห์มุ่งเน้นไปที่การเปลี่ยนแปลงทางตรรกะ มันตรวจสอบผลลัพธ์กับ JSON schema ของ ReviewFinding ซึ่งให้ผลลัพธ์ที่อ่านได้โดยเครื่องที่คุณสามารถใช้ใน CI หรือแสดงในความคิดเห็น PR ท่อส่งสนับสนุนทั้ง LLMs บนคลาวด์และท้องถิ่น ดังนั้นการตรวจสอบสามารถทำงานกับผู้ให้บริการโมเดลที่แตกต่างกันด้วยธงเดียว
มันส่งผลต่อประสิทธิภาพของระบบและ CI ในระหว่างการตรวจสอบอย่างไร?
เครื่องมือสามารถทำงานเป็น CLI ท้องถิ่นหรือภายใน CI ดังนั้นผลกระทบต่อระบบขึ้นอยู่กับโหมดที่เลือก เมื่อใช้ในท้องถิ่นกับ Ollama หรือจุดสิ้นสุดที่เข้ากันได้กับ OpenAI การตรวจสอบจะทำงานบนเครื่องของนักพัฒนา; ใน CI จะเรียก API ของผู้ให้บริการ การบีบอัด diff อัตโนมัติช่วยลดขนาด payload ก่อนการเรียกโมเดล ซึ่งช่วยลดภาระเครือข่ายและการประมวลผลในท่อส่งที่โฮสต์เมื่อเปรียบเทียบกับการส่งที่เก็บข้อมูลทั้งหมด
lgtmaybe ปลอดภัยที่จะใช้ในสภาพแวดล้อมขององค์กรหรือคลาวด์หรือไม่?
นักพัฒนาได้สร้างตัวเลือกการตรวจสอบแบบไม่ใช้กุญแจโดยใช้ OIDC สำหรับผู้ให้บริการคลาวด์ หลีกเลี่ยงความลับ API แบบคงที่ในสภาพแวดล้อม CI นอกจากนี้ การออกแบบยังอนุญาตให้ทำการตรวจสอบทั้งหมดในท้องถิ่นด้วยโมเดลน้ำหนักเปิด ซึ่งป้องกันไม่ให้โค้ดออกจากโฮสต์ ขั้นตอนการกรองของเครื่องมือจะกรองผลการตรวจสอบที่มีความมั่นใจต่ำเพื่อลดข้อเสนอแนะที่มีเสียงรบกวนหรือคาดเดาไม่ให้ปรากฏในรายงานอัตโนมัติ
มันต้องการความรู้ทางเทคนิคลึกเพื่อทำงานอย่างถูกต้องหรือไม่?
CLI เปิดเผยโหมดสำหรับ local diffs และการรวม CI ดังนั้นการใช้งานพื้นฐานจึงเกี่ยวข้องกับการเรียกใช้ท่อส่งผ่าน git diff หรือเปิดใช้งาน GitHub Action ที่ให้ไว้ การตั้งค่าขั้นสูงที่เปลี่ยนผู้ให้บริการหรือเรียกใช้โมเดลในท้องถิ่นต้องการการกำหนดค่า Ollama หรือจุดสิ้นสุดของผู้ให้บริการ ผลลัพธ์ JSON schema ช่วยในการทำงานอัตโนมัติ แต่การวิเคราะห์หรือรวมผลลัพธ์เหล่านั้นเข้ากับเครื่องมือที่กำหนดเองต้องการความคุ้นเคยของนักพัฒนากับการเขียนสคริปต์ CI
ผู้ตรวจสอบที่ใช้งานได้จริงสำหรับทีมที่ต้องการข้อเสนอแนะแบบ AI ที่ยืดหยุ่นและปลอดภัย
lgtmaybe เป็นตัวเลือกที่เหมาะสมสำหรับนักพัฒนาและวิศวกร DevOps ที่ต้องการการวิเคราะห์ PR โดยใช้ AI โดยไม่ต้องผูกพันกับความลับของคลาวด์ เนื่องจากรองรับ OIDC แบบไม่ใช้กุญแจและการรันโมเดลในท้องถิ่น ข้อจำกัดหลักคือภาระงานในการดำเนินงานสำหรับทีมที่ต้องกำหนดโครงสร้างพื้นฐานของโมเดลในท้องถิ่นหรือแยกผลลัพธ์ JSON ไปยังเวิร์กโฟลว์ที่กำหนดเอง ซึ่งเพิ่มงานการตั้งค่าก่อนที่จะเข้ากันได้อย่างราบรื่นกับท่อที่มีอยู่แล้ว