「.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- RAG(Retrieval-Augmented Generation)
- LLMと情報検索を組み合わせた技術。
- 情報取得や質問応答の分野で強力。
開発方法 †
フレームワークやVDBを使用する。
機能・コンポーネント †
チャンク(Chunk) †
- Chunkは、大量のデータを小さなSegment(Chunk)に分割する。
- このプロセスにより、特定の情報を検索し易くなる。
- 各Chunkは、独立して検索可能な単位となる。
埋め込み(Embedding) †
- Embeddingは、テキストデータを数値ベクトルに変換するプロセス。
- ベクトル化により、テキストデータの意味的な類似性を計算が容易になる。
- RAGでは、Embeddingを使用して、検索QueryとDB内のChunkとの類似性を計算し、最も関連性の高いChunkを特定する。
検索(Retrieval) †
- 検索部分では、Queryに対して関連性の高い情報をDBから取得する。
- 具体的には、プロンプトに対して最も関連性の高いChunkを検索エンジンや埋め込みベクトルの類似性に基づいて見つけ出す。
生成(Generation) †
生成部分では、ユーザ入力+取得した情報を基に、LLMがユーザーに回答を提供する。
プロセス †
質問の入力(Query Input) †
ユーザーが質問を入力
質問の埋め込み(Query Embedding) †
Embeddingで質問を埋め込みベクトルに変換
情報の検索(Information Retrieval) †
質問の埋め込みベクトルを使用して、DB内の関連Chunkを検索
情報の生成(Information Generation) †
- 検索されたChunkを基にプロンプトを生成
- LLMが生成されたプロンプトを元に回答を生成
回答の提供(Answer Delivery) †
最終的にユーザーに回答を提供
キーワード †
埋め込みベクトル(Embedding Vector) †
Embeddingで、テキストをベクトルに変換した表現方法。
類似性計算(Similarity Calculation) †
埋め込みベクトル間の類似性を内積、距離などで計算するプロセス。