Pitch: Github Copilot rodando localmente (ollama-copilot).

Estou aqui para compartilhar com vocês um projeto que estou trabalhando nos ultimos dias. A Ideia deste projeto é usar ferramentas de LLM locais como Ollama e permitir que o mesmo funcione como um proxy para o Github copilot. Isso permite com que plugins de vscode, neovim e outras IDEs possam se plugar neste proxy e utilizar esta alternativa.

Para quem possui uma GPU o mesmo acaba funcionando bem, já que exige certo nível de capacidade computacional.

https://github.com/bernardo-bruning/ollama-copilot

Ainda possuem muitas melhorias para ser feita, mas qualquer sugestão é considerada bem vinda!

Alguem sabe me dizer o quao inteligente e o modelo ollama-copilot comparado com copilot da github ? eu sempre fico na duvida se largo o codeimum se existe algum modelo free melhor que o deles

Nao sei o nivel comparando entre os dois, mas se quiser testar outros, tem o TabNine e o BlackBox. Acredito que ambos tenham seus pacotes free. Um amigo comentou comigo do Codeium dizendo que deixa a desejar kkkk

Só tem para GPU ? Queria que roda-se com CPU também, cheguei a testar o tabby mas as respostas demoravam ou dava timeout e nem usava 40 do meu processador (8/16)

O modelo atual de `codellama:code` funciona bem para CPU. Porém realmente sentirá uma demora em suas resposta. Estou atualmente experimentando do modelo `codegemma:code` já que aparenta ser um pouco mais leve combinado com uma configuração de predições menores. Caso queira testar basta rodar no seguinte comando: ```bash ollama-copilot -num-predict 10 -model codegemma:code -template "<|fim_prefix|>{{.Prefix}}<|fim_suffix|>{{.Suffix}}<|fim_middle|>" ``` Ainda estou trabalhando para ver se consigo trazer uma melhor experiencia para CPUs.

Ollama é uma ferramenta muito legal. Da pra testar vários modelos locais.

Boa! dei uma olhada la e gostei bastante. Gostaria de saber se tem como integrar com o NetBeans

Acredito que seja possível. Porém deve existir um plugin github copilot rodando no netbeans. Partindo disso basta configurar um proxy, seja pela IDE ou por um proxy do sistema operacional. Acredito que seja possível rodar no JetBrains seguindo as instruções [aqui](https://docs.github.com/pt/copilot/configuring-github-copilot/configuring-network-settings-for-github-copilot), porém falta testar.
muito obrigado pela resposta ❤️ irei verificar depois