Evaluating the effect of retrieval augmented generation in Mistral-7b-Instruct-v0.2’s clojure’s code review.
Revisão de código é uma das atividades mais importantes da engenharia de software, visto que visa garantir a qualidade e confiabilidade do código, mas esse processo é feito majoritariamente de maneira manual, o que pode demandar tempo e tornar o processo oneroso e suscetível a falhas. O processo de...
| Autor: | |
|---|---|
| Tipo de recurso: | tesis doctoral |
| Estado: | Versión publicada |
| Fecha de publicación: | 2024 |
| País: | Brasil |
| Institución: | Universidade Federal de Campina Grande (UFCG) |
| Repositorio: | Biblioteca Digital de Teses e Dissertações da UFCG |
| Idioma: | portugués |
| OAI Identifier: | oai:localhost:riufcg/38351 |
| Acceso en línea: | http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/38351 |
| Access Level: | acceso abierto |
| Palabra clave: | Clojure Code Review RAG LLMs Revisão de Código Ciência da Computação |
| Sumario: | Revisão de código é uma das atividades mais importantes da engenharia de software, visto que visa garantir a qualidade e confiabilidade do código, mas esse processo é feito majoritariamente de maneira manual, o que pode demandar tempo e tornar o processo oneroso e suscetível a falhas. O processo de revisão de código é um forte candidato para automação com objetivo de torná-lo mais eficiente e menos suscetível a falhas devido ao componente humano do processo. Neste trabalho, nós desejamos explorar a automação do processo de revisão de código através da aplicação de Grandes Modelos de Linguagem e uma técnica de otimização no contexto de revisão de código Clojure, que é uma linguagem de programação emergente. O Grande Modelo de Linguagem escolhido foi o Mistral-7B-Instruct-v0.2 e a técnica de otimização foi a Retrieval Augmented Generation (RAG), ambos os tópicos são discutidos nas seções seguintes deste trabalho. Nossos resultados mostram que o Mistral com e sem o uso da otimização com RAG pode revisar código como humanos, mas RAG não melhorou a revisão do modelo. |
|---|