RAGアプリケーションの構築:モデル選定とコスト最適化
RAG(Retrieval-Augmented Generation)は検索とLLMを組み合わせ、独自のデータを使って質問に答えます。コスト効率の良い構築方法を解説します。
料金データはカタログから取得しています。出典と鮮度はデータソースをご確認ください。
RAGとは?
RAG(Retrieval-Augmented Generation)は以下の要素を組み合わせた技術です:
- リトリーブ: ナレッジベースから関連ドキュメントを検索
- 拡張: ユーザーのクエリにリトリーブされたコンテキストを追加
- 生成: 拡張されたプロンプトに基づいてLLMで回答を生成
このアプローチは、カスタマーサポートボット、ナレッジベース、ドキュメントQ&Aシステムなど、特定のデータについて質問に答える必要があるアプリケーションに最適です。
RAGの主要コスト要因
RAGアプリケーションには独自のコスト考慮事項があります:
- 入力トークン: 質問 + リトリーブされたコンテキスト(通常2,000トークン以上)
- 出力トークン: 生成された回答(通常200-500トークン)
- コンテキストウィンドウ: 質問 + コンテキスト + 回答に対応できる大きさが必要
- リクエスト量: RAGアプリは多くのクエリを処理することが多い
コスト見積もり例
一般的なRAGワークロードのコストを試算してみましょう:
注: これは簡易見積もりです。実際のコストはリトリーブ戦略、キャッシュ、その他の要因によって異なります。
最安3モデルを比較する → 計算機で試す →RAG向けモデル選定
確認すべきポイント
- 大きなコンテキストウィンドウ: 最低8Kトークン、理想的には32K以上
- 低い入力価格: トークンの大半が入力(コンテキスト)のため
- 優れた指示遵循: システムプロンプトを適切に処理できる
- 高速な推論: リアルタイムアプリケーション向け
コスト順のRAGモデル
| モデル | 入力 | 出力 | コンテキスト |
|---|---|---|---|
| Llama-3.2-3B-Instruct | $0.0200 | $0.0200 | 131K |
| llama3.2-11b-vision-instruct | $0.0150 | $0.0250 | 131K |
| llama3.2-3b-instruct | $0.0150 | $0.0250 | 131K |
| Qwen2.5-Coder-7B | $0.0100 | $0.0300 | 33K |
| paddleocr-vl | $0.0200 | $0.0200 | 16K |
コスト最適化のヒント
- プロンプトキャッシュの活用: 頻繁に使用されるコンテキストをキャッシュしてコストを削減
- バッチ処理: 複数のクエリをまとめて低いコストで処理
- リトリーブの最適化: 最も関連性の高いコンテキストのみを返す
- 小さなモデルの使用: シンプルな質問には安いモデルを使用
- トークン使用量の監視: 入出力トークンを追跡して最適化の機会を特定
アーキテクチャパターン
シンプルRAG
ほとんどのアプリケーションでは、シンプルなRAGパイプラインが効果的です:ドキュメントを埋め込み、関連チャンクをリトリーブし、回答を生成します。
高度なRAG
複雑なアプリケーションでは、ハイブリッド検索(キーワード + セマンティック)、再ランキング、クエリ拡張、マルチステップリトリーブを検討してください。
RAGモデルを比較
RAGモデルを並べて比較する準備はできましたか?以下のツールをお使いください:
関連ガイド
よくある質問
RAGに必要なコンテキストウィンドウは?
最低8Kトークン必要ですが、ほとんどのアプリケーションでは32K以上が推奨されます。これにより、システムプロンプト、ユーザーエクエリ、リトリーブされたコンテキストに対応できます。
どの程度のコンテキストをリトリーブすべき?
まず2-3つの関連チャンク(1,000-2,000トークン)から始め、アプリケーションの必要に応じて調整してください。多いほど良いというわけではありません。
RAGにキャッシュは使えますか?
はい、多くのプロバイダーがプロンプトキャッシュをサポートしています。これは同じコンテキストが繰り返し使用されるRAGアプリケーションに特に有用です。