Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Feature Flags

laurus クレートはデフォルトでは Feature が無効の状態で提供されます。必要に応じて Embedding サポートを有効にしてください。

利用可能な Feature

Feature説明主な依存クレート
embeddings-candleHugging Face Candle によるローカル BERT Embeddingcandle-core, candle-nn, candle-transformers, hf-hub, tokenizers
embeddings-openaiOpenAI API Embeddingreqwest
embeddings-multimodalCLIP マルチモーダル Embedding(テキスト + 画像)image, embeddings-candle
embeddings-allすべての Embedding Feature を統合上記すべて

各 Feature の詳細

embeddings-candle

CandleBertEmbedder を有効にし、CPU 上でローカルに BERT モデルを実行できるようにします。モデルは初回使用時に Hugging Face Hub からダウンロードされます。

[dependencies]
laurus = { version = "0.1.0", features = ["embeddings-candle"] }

embeddings-openai

OpenAIEmbedder を有効にし、OpenAI Embeddings API を呼び出せるようにします。実行時に OPENAI_API_KEY 環境変数が必要です。

[dependencies]
laurus = { version = "0.1.0", features = ["embeddings-openai"] }

embeddings-multimodal

CandleClipEmbedder を有効にし、CLIP ベースのテキストおよび画像 Embedding を使用できるようにします。embeddings-candle を暗黙的に有効にします。

[dependencies]
laurus = { version = "0.1.0", features = ["embeddings-multimodal"] }

embeddings-all

すべての Embedding Feature を有効にする便利な Feature です。

[dependencies]
laurus = { version = "0.1.0", features = ["embeddings-all"] }

Feature Flag がバイナリサイズに与える影響

Embedding Feature を有効にすると、コンパイル時間とバイナリサイズが増加する依存クレートが追加されます。

構成おおよその影響
Feature なし(Lexical のみ)ベースライン
embeddings-candle+ Candle ML フレームワーク
embeddings-openai+ reqwest HTTP クライアント
embeddings-multimodal+ 画像処理 + Candle
embeddings-all上記すべて

Lexical(キーワード)検索のみが必要な場合は、Feature を有効にせずに Laurus を使用することで、最小のバイナリサイズと最速のコンパイル時間を実現できます。