Um servidor MCP open source que conecta agentes de IA, IDEs e aplicativos a bancos de dados por meio de ferramentas prontas ou definições personalizadas.
cactus-compute/needle
Um pequeno modelo fundacional executado no dispositivo para chamadas de ferramentas, extração estruturada, embeddings e transcrição de fala em celulares, wearables, robôs e microcontroladores.
- Estrelas
- 14,099
- Forks
- 1,091
- Issues abertas
- 4
- Último commit
- há 14 horas
O que é?
Needle é um pequeno modelo fundacional para automação em hardware com recursos limitados. O modelo completo é um binário de 8 a 29 MB e foi desenvolvido para selecionar as funções certas de uma lista que você disponibiliza, preencher os argumentos com base no que o usuário disse e retornar uma lista vazia em vez de tentar adivinhar quando nenhuma ferramenta se encaixa. Ele também extrai campos tipados de textos desorganizados com base em um schema definido por você e retorna um vetor para uma frase, permitindo que um app faça buscas ou encaminhamentos localmente.
O pacote Python oferece uma API baseada em decorators: a assinatura de uma função define os tipos dos argumentos, sua docstring vira a descrição da ferramenta e uma chamada a run executa a função correspondente e retorna os resultados. Cada resposta inclui as chamadas de função, o raciocínio e uma pontuação de confiança. Whistle, um modelo complementar de transcrição de fala distribuído em um arquivo de 16,9 MB, usa o mesmo runtime: assim, é possível enviar áudio e receber chamadas de ferramentas em uma única chamada. Whistle transcreve inglês, alemão, francês, espanhol, italiano, neerlandês e polonês.
Needle oferece fine-tuning local com adaptadores LoRA, além de uma opção de fine-tuning hospedada, e inclui engines pré-compiladas para pastas de várias plataformas, uma C API e alvos para navegador e WASI. O pacote npm mantido pela comunidade, cactus-needle, executa o modelo no Node.js e em navegadores.
Recursos principais
- 01Seleciona chamadas de ferramentas e preenche seus argumentos com base nas solicitações do usuário, retornando uma lista vazia quando nenhuma ferramenta se aplica.
- 02Extrai campos tipados de textos conforme um schema declarado, com saída que sempre pode ser analisada.
- 03Retorna embeddings de texto para busca, correspondência e encaminhamento locais.
- 04Transcreve fala com Whistle, incluindo timestamps por palavra, priorização de palavras-chave e streaming em tempo real.
- 05Oferece uma API Python baseada em decorators que executa as funções correspondentes e retorna os resultados.
- 06Oferece fine-tuning local com LoRA e fine-tuning hospedado para diferentes profundidades de modelo.
Casos de uso
- Assistentes de voz ou texto em celulares que acionam ações de apps localmente.
- Dispositivos de casa inteligente e wearables que associam comandos falados a funções dos dispositivos.
- Extração de dados de faturas, reservas ou formulários a partir de textos desorganizados em um dispositivo offline.
- Transcrição local de fala em um microfone sempre ativo, combinada com uma palavra de ativação ou detector de atividade de voz.
Tópicos
Perguntas frequentes
- O que é needle?
- Um pequeno modelo fundacional executado no dispositivo para chamadas de ferramentas, extração estruturada, embeddings e transcrição de fala em celulares, wearables, robôs e microcontroladores. Needle é um pequeno modelo fundacional para automação em hardware com recursos limitados. O modelo completo é um binário de 8 a 29 MB e foi desenvolvido para selecionar as funções certas de uma lista que você disponibiliza, preencher os argumentos com base no que o usuário disse e retornar uma lista vazia em vez de tentar adivinhar quando nenhuma ferramenta se encaixa. Ele também extrai campos tipados de textos desorganizados com base em um schema definido por você e retorna um vetor para uma frase, permitindo que um app faça buscas ou encaminhamentos localmente.
- needle é gratuito? Qual é a licença?
- needle é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- needle ainda é mantido?
- Manutenção ativa. O último commit de needle foi em 18 de out. de 2026.
- Para que posso usar needle?
- Assistentes de voz ou texto em celulares que acionam ações de apps localmente. Dispositivos de casa inteligente e wearables que associam comandos falados a funções dos dispositivos. Extração de dados de faturas, reservas ou formulários a partir de textos desorganizados em um dispositivo offline. Transcrição local de fala em um microfone sempre ativo, combinada com uma palavra de ativação ou detector de atividade de voz.
- Onde consigo needle?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/cactus-compute/needle
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Servidor de inferência autogerenciado que oferece modelos de embeddings, reranking, OCR, extração, segurança e LLM em um único cluster por uma API compatível com OpenAI.
Engine de IA de borda em C++ que transforma análises de vídeo e modelos VLM executados no dispositivo em aplicações implantáveis em hardware Sophon, Rockchip RKNN e x86.
Open-weight 4B and 1.7B general-purpose language models from XHToken, aimed at on-device use and agentic tool-calling workflows.
Tutorial prático que ensina a criar agentes de IA do zero com LLMs locais via node-llama-cpp, abordando chamadas de função, memória e ReAct.
A step-by-step educational project that builds Retrieval-Augmented Generation from scratch in JavaScript using local LLMs and no cloud APIs.