Uma nova ferramenta open-source promete revolucionar o uso de IA em projetos Django.
Recentemente, um desenvolvedor criou o ciam (Context IA Manager), uma solução open-source que visa otimizar o consumo de tokens em assistentes de IA, como Copilot e Claude, durante o desenvolvimento em Django. A ferramenta promete uma redução significativa no uso de tokens, melhorando a eficiência no fluxo de trabalho.
Como o ciam transforma seu fluxo de trabalho em Django
O ciam foi projetado para resolver um problema comum enfrentado por desenvolvedores que utilizam assistentes de IA em seus projetos. Ao invés de enviar arquivos inteiros para a IA, a ferramenta indexa o projeto e fornece apenas os trechos relevantes para cada consulta. Isso não só economiza tokens, mas também melhora a qualidade das respostas, pois a IA tem acesso a informações mais específicas e contextualizadas.
Após uma tarde de uso intenso, o ciam conseguiu economizar 12.5k tokens reais, reduzindo o consumo de 95% para 41%. Essa economia é crucial para desenvolvedores que dependem de assistentes de IA para acelerar seu trabalho, mas que enfrentam o desafio de altos custos com tokens. Essa questão de custo é um tema importante em nosso tempo, especialmente com o aumento de ferramentas acessíveis e baseadas em IA que buscam oferecer eficiência.
Além disso, a ferramenta permite que a IA mantenha um histórico de decisões e informações relevantes, o que evita a repetição de perguntas e melhora a continuidade do trabalho. Isso significa que, ao iniciar uma nova sessão, a IA já tem acesso ao contexto anterior, o que é um grande avanço em relação ao que era feito anteriormente.
Arquitetura e Funcionamento do ciam
A arquitetura do ciam é composta por três componentes principais:
- ciam API: Desenvolvida em Go e executada em Docker, essa API é responsável por indexar o projeto, gerar embeddings com o Ollama e armazenar as informações em um banco de dados SQLite.
- ciam MCP server: Também em Go, esse servidor traduz as chamadas do assistente em requisições HTTP para a API, facilitando a comunicação entre os componentes.
- ciam CLI: A interface de linha de comando permite que os desenvolvedores interajam com a ferramenta, realizando operações como indexação, busca e monitoramento em tempo real.
O modelo de embedding utilizado é o nomic-embed-text, que roda offline e oferece boa qualidade para código. Essa abordagem garante que os dados do desenvolvedor permaneçam privados e seguros. Ferramentas como esta têm atraído a atenção de muitas empresas que buscam formas de integrar IA em suas operações de forma eficaz.
Além disso, o ciam implementa uma série de melhorias em relação a soluções anteriores, como:
- Indexador ciente de Django: O indexador categoriza automaticamente os arquivos de acordo com seu tipo, permitindo buscas mais eficientes.
- Busca híbrida com RRF: Combina a similaridade vetorial com a busca por palavras-chave, melhorando a precisão das respostas.
- Indexação incremental: Apenas arquivos modificados são reindexados, economizando tempo e recursos.
- ciam watch: Permite a indexação em tempo real, mantendo o assistente sempre atualizado.
- Gestão de conhecimento: Integra um sistema que permite registrar decisões e informações relevantes, que são automaticamente indexadas.
O ciam representa um avanço significativo na utilização de assistentes de IA em desenvolvimento de software, oferecendo uma solução prática e eficiente para a redução de consumo de tokens.