Repolode
StarlightSearch

StarlightSearch/EmbedAnything

Pipeline de embeddings em Rust que ingere textos, PDFs, imagens, áudios e sites, gera embeddings localmente ou com modelos na nuvem e os envia para bancos de dados vetoriais.

Estrelas
1,323
Forks
140
Issues abertas
20
Último commit
há 12 dias

O que é?

EmbedAnything é um pipeline de embeddings escrito em Rust, com bindings para Python. Ele recebe arquivos de várias fontes, incluindo textos, PDFs, Markdown, imagens, áudios, sites e buckets do S3, divide o conteúdo em chunks, gera embeddings e envia os resultados para um banco de dados vetorial. Entre os tipos de modelo compatíveis estão embeddings densos, esparsos (SPLADE), ONNX, Model2Vec e de interação tardia (ColBERT, ColPali), além de rerankers.

Os modelos são executados pelos backends Candle ou ONNX Runtime, então o projeto não depende do PyTorch. É possível carregar modelos do Hugging Face diretamente, e também há modelos de embedding na nuvem, como o Cohere. As opções de chunking incluem estratégias de tamanho fixo, por sentença, semântica e late-chunking. O processamento, a indexação e a inferência são executados em threads separadas, permitindo enviar arquivos ao armazenamento enquanto os embeddings são gerados.

O projeto oferece adapters para bancos de dados vetoriais como Qdrant, Weaviate, Milvus, Pinecone, Chroma e Elasticsearch, além de uma imagem Docker pré-compilada para o servidor.

Recursos principais

  • 01Gera embeddings densos, esparsos, ONNX, Model2Vec e de interação tardia.
  • 02Executa modelos no Candle ou no ONNX Runtime sem exigir o PyTorch.
  • 03Ingere PDFs, textos, Markdown, imagens, áudios, sites e buckets do S3.
  • 04Oferece estratégias de chunking de tamanho fixo, por sentença, semântica e late-chunking.
  • 05Envia embeddings para bancos de dados vetoriais como Qdrant, Weaviate e Milvus.
  • 06Disponibiliza bindings para Python e uma imagem Docker pré-compilada do servidor.

Casos de uso

  • Criar um pipeline RAG que indexa PDFs e documentos em um banco de dados vetorial.
  • Gerar embeddings em máquinas locais ou servidores na nuvem sem instalar o PyTorch.
  • Indexar grandes coleções de arquivos em buckets do S3 à medida que são processados.
  • Executar buscas híbridas que combinam embeddings densos e esparsos SPLADE.

Início rápido

  1. 1

    Instale o pacote Python conforme as instruções da seção Installation do README

  2. 2

    Carregue um modelo e gere um embedding de um arquivo usando o exemplo de uso do README

Antes de usar

  • Modelos na nuvem, como o Cohere, exigem sua própria chave de API.
  • Alguns modelos, como os de repositórios restritos do Hugging Face, exigem um token de acesso.

Tópicos

Perguntas frequentes

O que é EmbedAnything?
Pipeline de embeddings em Rust que ingere textos, PDFs, imagens, áudios e sites, gera embeddings localmente ou com modelos na nuvem e os envia para bancos de dados vetoriais. EmbedAnything é um pipeline de embeddings escrito em Rust, com bindings para Python. Ele recebe arquivos de várias fontes, incluindo textos, PDFs, Markdown, imagens, áudios, sites e buckets do S3, divide o conteúdo em chunks, gera embeddings e envia os resultados para um banco de dados vetorial. Entre os tipos de modelo compatíveis estão embeddings densos, esparsos (SPLADE), ONNX, Model2Vec e de interação tardia (ColBERT, ColPali), além de rerankers.
EmbedAnything é gratuito? Qual é a licença?
EmbedAnything é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
EmbedAnything ainda é mantido?
Manutenção ativa. O último commit de EmbedAnything foi em 26 de out. de 2026.
Para que posso usar EmbedAnything?
Criar um pipeline RAG que indexa PDFs e documentos em um banco de dados vetorial. Gerar embeddings em máquinas locais ou servidores na nuvem sem instalar o PyTorch. Indexar grandes coleções de arquivos em buckets do S3 à medida que são processados. Executar buscas híbridas que combinam embeddings densos e esparsos SPLADE.
Como instalar EmbedAnything?
Instale o pacote Python conforme as instruções da seção Installation do README Carregue um modelo e gere um embedding de um arquivo usando o exemplo de uso do README
Onde consigo EmbedAnything?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/StarlightSearch/EmbedAnything

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados