StarlightSearch/EmbedAnything
Highly Performant, Modular, Memory Safe and Production-ready Inference, Ingestion and Indexing built in Rust 🦀
What it solves
EmbedAnything は、高性能なローカル埋め込みパイプラインを提供し、さまざまなデータソース(テキスト、画像、音声、PDF、ウェブサイト)をベクトル埋め込みに変換し、ベクトルデータベースへストリーミングするプロセスを簡素化します。PyTorch への重い依存を排除し、メモリフットプリントを削減するとともに、クラウドへのデプロイを容易にします。
How it works
速度とメモリ安全性のために Rust で構築されており、プロジェクトは複数のバックエンド(Candle、ONNX、クラウドモデル)を持つモジュラーアーキテクチャを採用しています。"Vector Streaming" を使用し、ドキュメント前処理とモデル推論をマルチスレッド(MPSC)で分離することでレイテンシを低減し、埋め込みを直接データベースに保存することでメモリリークを防止します。
Who it’s for
RAG(Retrieval‑Augmented Generation)パイプラインを構築し、複数モダリティにわたる埋め込みを軽量かつ高速にローカルで生成・インデックス化したい AI エンジニア向けです。大規模な機械学習フレームワークのオーバーヘッドを回避できます。
Highlights
- Multi-modal Support: テキスト(PDF、MD、TXT)、画像(JPG)、音声(.WAV)、ウェブサイトを扱えます。
- Flexible Backends: Candle(Hugging Face モデルとのシームレス統合)、ONNX(高速推論)、クラウド API(例:Cohere)をサポート。
- Advanced Chunking: 組み込みのセマンティックチャンクとレイトチャンクにより、コンテキスト保持を向上。
- Vector DB Integration: Elastic、Weaviate、Pinecone、Qdrant、Milvus、Chroma などの主要データベース向けアダプタを提供。
- Hardware Acceleration: GPU 加速に対応し、パフォーマンスを向上させます。