Die Repository-Level-Code-Vervollständigung sagt automatisch den unvollendeten Code basierend auf den umfassenderen Informationen aus dem Repository voraus. Jüngste Fortschritte bei Code Large Language Models (Code LLMs) haben die Entwicklung von Methoden zur Repository-Level-Code-Vervollständigung angestoßen, die vielversprechende Ergebnisse liefern. Dennoch leiden sie unter Problemen wie unangemessener Abfragekonstruktion, einseitigem Codeabruf und Fehlanpassung zwischen Code-Retriever und Code LLM. Um diese Probleme anzugehen, stellen wir CodeRAG vor, ein Rahmenwerk, das darauf abzielt, relevantes und notwendiges Wissen für die retrieval-augmentierte Repository-Level-Code-Vervollständigung zu identifizieren. Zu den Kernelementen gehören die durch log Wahrscheinlichkeit geführte Abfragekonstruktion, mehrpfadiger Codeabruf und präferenz-algierte BestFit-Neuordnung. Umfangreiche Experimente an den Benchmarks ReccEval und CCEval zeigen, dass CodeRAG die bestehenden State-of-the-Art-Methoden signifikant und konsistent übertrifft. Die Implementierung von CodeRAG ist unter https://github.com/KDEGroup/CodeRAG verfügbar.
Zhang et al. (Fri,) haben diese Frage untersucht.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: