Databricks Certified Generative AI Engineer Associate 無料問題 3 / 10 ・ 分野2: Data Preparation
社内の作業手順書(プレーンテキスト)を RAG 用のチャンクに分ける。手順書は1つの段落に1つの作業がまとまって書かれているので、段落の切れ目をチャンクの境界にして、内容のまとまりを崩さずに切りたい。Databricks の AI Cookbook(非構造化データのパイプラインの記事)が、この切り方の例として挙げている LangChain の splitter はどれか。
- MarkdownHeaderTextSplitter
- RecursiveCharacterTextSplitter
- SemanticChunker
- CharacterTextSplitter
正解と解説を見る
正解: B
正解の理由
Cookbook は切り方を4つに分け、文章の自然な段落の境界でチャンクを決める「段落ベースの切り方(paragraph-based chunking)」の例として、LangChain の RecursiveCharacterTextSplitter を挙げている。段落には関係する情報がまとまっていることが多いので、段落の境界で切るとチャンクの意味のまとまり(semantic coherence)を保ちやすい、というのがこの切り方を使う理由である。作業ごとに段落が分かれた手順書なら、1つのチャンクに1つの作業が入りやすくなる。
違う選択肢
「CharacterTextSplitter」… Cookbook はこれを、決めた文字数・トークン数で区切る固定長の切り方(fixed-size chunking)の例にしている。手軽に組めるが、意味のまとまったチャンクになりにくく、本番の用途ではめったに使えないと書いている。
「MarkdownHeaderTextSplitter」… Markdown の見出しのように、書式そのものが持つ構造を境界にする切り方(format-specific chunking)の例である。見出しの記号を持たないプレーンテキストの手順書では、境界の手がかりが無い。
「SemanticChunker」… Cookbook がこの名前を挙げるのは、トピックモデリングなどの技法で内容を分析し、話題が移るところを境界にする切り方(semantic chunking)の例としてである。目に見える段落の区切りを境界にするのではなく、内容から境界を推し量るので、基本の切り方より手間がかかる。
押さえどころ
Cookbook は、どの切り方と大きさが良いかはユースケースとデータの性質で決まり、どれにでも合う方法は無いとして、試しながら決めることを求めている。切り方を選ぶときは、チャンクの大きさ(小さいと細部に絞れるが周りの文脈を失い、大きいと文脈を持つが無関係な情報が混ざる)と、隣り合うチャンクの重なり(overlap)も合わせて決める。
Databricks Certified Generative AI Engineer Associateの演習アプリ(無料10問・全問は解錠で)へ