پروژه LangChain4j با دریافت ۱۶۹۸ pull request در سال جاری، نیاز به سیستمی داشت که بتواند این حجم از بازبینی را مدیریت کند. برای این منظور، از یک سیستم agentی استفاده شد که با ترکیب الگوهای مختلف مانند routing، debating، voting و reflection، یک pull request با ۲۹۰۰ خط را با هزینهٔ ۰٫۴۵ دلار بازبینی میکند. این سیستم در یک اپلیکیشن واقعی Quarkus پیادهسازی شده است.
این سیستم با استفاده از Quarkus LangChain4j و نسخههای مختلفی از این ابزارها ساخته شده است. برای مثال، از quarkus-langchain4j-agentic برای agentها و از quarkus-github-api برای خواندن GitHub استفاده میشود. این سیستم به صورت کامل از GitHub تنها با یک توکن خواندنی استفاده میکند و هیچگونه نوشتنی در آن انجام نمیدهد.
بازبینیها شامل تولید گزارشی است که نقاط قوت و ضعف pull request را مشخص میکند و به هر مشکل یک فایل و خط در diff اختصاص میدهد. همچنین، به هر pull request امتیازاتی از ۰ تا ۱۰ در زمینههای مختلف مانند امنیت، پوشش تست و مستندسازی داده میشود.
این سیستم از یک مدل تصمیمگیری برای انتخاب بازبینهای مناسب استفاده میکند. به جای استفاده از LLM برای تصمیمگیری، از مدلی استفاده میشود که به سوالاتی با نوع پاسخ مشخص پاسخ میدهد و احتمال هر پاسخ را برمیگرداند. این روش باعث میشود که بازبینیها با دقت و کارایی بیشتری انجام شوند.






