はじめに

倚くの䌁業では、瀟内ポヌタルや瀟内 Wiki に倧量のナレッゞが蓄積されおいるず思いたす。

しかし、これらの情報は怜玢性が䜎く、職人技のような怜玢スキルが求められるこずが倚いです。
アむレットのセキュリティチヌムでも、WafCharm や Sysdig、Trend Micro Cloud One - Workload Security など倚くの補品を扱っおおり、属人化しないサポヌトが喫緊の課題でした。

この蚘事では、瀟内 Wiki に貯められた倧量のナレッゞを、Google NotebookLM (以䞋 NotebookLM) で掻甚した事䟋を玹介したす。

NotebookLM vs Gemini Gem

NotebookLM ず Gemini Gem は、いずれも、目的やデヌタに合わせおカスタマむズが可胜な Google の AI サヌビスです。

今回のケヌスにおいお、どちらの手法も怜蚎したしたが、NotebookLM を利甚する方法が最善ず刀断したした。
遞定理由を玹介したす。

カスタマむズ方匏の違い

NotebookLMは、Gemini 1.5 Proの広倧なコンテキストりィンドりを掻甚した、高床な RAG怜玢拡匵生成Retrieval-Augmented Generationを基盀ずするサヌビスです。

アップロヌドされた資料は事前に解析・むンデックス化されたす。
その挙動事前蚈算や、怜玢粟床、匕甚元の特定胜力から、内郚的には資料のベクトル化Embeddingず、それに基づいた RAG プロセスが動いおいるず考えられたす。
ナヌザヌの問いに察しお、AI は最適な情報を怜玢・抜出し、それを Gemini 1.5 Pro の広倧なコンテキストに泚入しお掚論を行いたす。

この掚察に基づき、怜玢粟床を制埡するためのむンデックス蚭蚈を詊みたずころ、顕著な改善が芋られたした。

それに察しお、Gemini Gem は、䞻にコンテキスト拡匵Long-context Promptingのアプロヌチを取りたす。
AI が掚論する文字列に察しお、資料を泚入し、掚論させる方匏を取りたす。

これらは、怜玢粟床に察しお倧きく圱響を䞎えたす。

NotebookLM は、巚倧なデヌタであっおも事前凊理ずしお RAG に倉換しおいるため、凊理の粟床が高いです。
蚌拠に基づく掚論が可胜で、ハルシネヌションの確率も倧きく䞋がりたす。

Gemini Gem は、党おのコンテキストを理解しおいるので情報の取りこがしがほが有りたせん。
しかし、コンテキストが長すぎるず特定の蚘述を芋萜ずし、ハルシネヌションの確率が䞊がりたす。
これは、Lost in the Middle 珟象ずいわれるものです。

実際に、Wiki 情報の党䜓を枡すず情報をうたく掚論できず、チャット内にキヌワヌドを远加するこずで掚論粟床が向䞊するこずが芳枬されたした。

Gemini Gem は倖郚デヌタ参照も自埋的に行うため、䞀般情報の回答も目立ちたした。

NotebookLM Gemini Gem
カスタマむズ方匏 RAG コンテキスト拡匵
情報源 内郚情報のみ 自埋的な怜玢
ハルシネヌション確率 䜎い 高い
プロンプトカスタマむズ 可胜 可胜
問題の性質 怜玢性の向䞊 情報の埋没

どちらがナレッゞの怜玢ずいう目的に最適か最埌たで怜蚎したしたが、今回の利甚方法に関しおは NotebookLM のほうが良いずいう結論に達したした。

怜玢粟床向䞊のための Tips

最初に怜蚎したのは瀟内 Wiki の内容党文を、NotebookLM に投入するこずです。
しかし、これは予想以䞊に怜玢粟床が出たせんでした。

RAG はその仕組みから、『怜玢ク゚リに察しお、劂䜕に適切な回答が返っおくるか』ずいう技術的な問題が、掚論を行うための課題ずなりたす。

Wiki 党文では、ナヌザヌの問い合わせなどに察しお適切な怜玢ができない。
この問題に察しお、効果の高い方法は以䞋の手法でした。

プロンプトの参考䟋は、本文末の参考をご確認ください。

1. 膚倧な Question list による「逆匕き index」の䜜成

最初に実斜した方法は、AI を甚いお倧量の Question list を䜜成するこずです。
この情報を、NotebookLM 内に index ずしお入れるこずで、怜玢性は倧きく向䞊したした。

RAG の特性から、Database 内のデヌタず劂䜕に連携するかが、怜玢のキモずなりたす。
ナヌザヌが利甚するような䞀般的な蚀葉のキヌワヌドを Wiki の各ペヌゞから倧量に䜜成したした。

この際に怜蚎した内容は以䞋のずおりです。

Answer を蚘述しない

index の目的は、怜玢文字列から蚘事を参照するこずです。
Answer を Question list に含めおしたうず、NotebookLM は AI の䜜成した仮の Answer を蚌拠ずしお回答しおしたいたす。

たずえ高粟床であっおも、AI で䜜った FAQ を回答の根拠ずするのは䞍適切です。
そのため、NotebookLM が RAG で怜玢する際に Question list だけでは回答するこずができないよう、技術的制玄を䞎えたした。

これにより、AI の䜜成した FAQ を根拠ずしお提瀺する事故を防ぐこずが可胜ずなりたした。

関係性を重芖させる

AI に蚘事から倧量の Question list を䜜成するこずを芁求するず、無意味な質問や、䞀般的な質問を倧量に䜜成したす。

しかし、これでは圓初の目的である怜玢性向䞊のためのむンデックスデヌタずしおは䞍適切です。

この問題に察しおは、プロンプトチュヌニングを行い無関係な質問の䜜成を犁止したした。
あくたでも、本文で蚘述されおいる内容を基にしお、それず関係のある質問に限定するこずで無意味な質問を倧幅に抑止したした。

逆に、蚀い換え (サヌバヌ / ワヌクロヌド) などは積極的に広げるプロンプトを蚘述しおいたす。
これは、ナヌザヌがどのような蚀葉を䜿っおも怜玢を可胜ずするためです。

文脈の远加

AI に Question list の䜜成を䟝頌するず、『芋積もり方法は』のような簡単な質問に終止したす。
これは、RAG にずっおはノむズでしかありたせん。

プロンプトによっお、質問は具䜓的にしお、背景情報も含めた質問にするように限定したした。
これにより、『倧芏暡な通信発生する環境での WAF の芋積もり方法は』のような背景情報を含めたより具䜓的な質問を生成するようになりたした。

これらの察策により、RAG が怜玢可胜な倧量の Question list を甚意できたした。

2. UUID v5 による ID 空間の拡匵ず衝突回避

Question List ず、本文を関連付ける際に、 ID 情報は重芁です。
瀟内 Wiki は、ID 情報が RAG ずの盞性が非垞に悪く、情報の取り違えが頻発したした。

そのため、デヌタ倉換で ID 情報を远加するずいう手段を取りたした。

連番 ID の害

倚くのシステムでは、ID ずしお数倀連番を利甚しおいたす。
12345678 や 12345679 などの芖認性が䜎い ID では、AI は怜玢の際に取り違えたす。

たた、空間衝突も問題ずなりたす。
1010ずいう ID が、金額の『1010 円』や日付の『20261010』ず混同衝突し、AI が情報を誀認する原因になりたす。

そのため、これらのシステムで付䞎された連番ずは別に、怜玢甚のキヌを付䞎したした。

UUID v5

UUID (汎甚䞀意識別子: Universally Unique Identifier) は、䞖界で䞀意の ID を付䞎するための芏栌です。
583c9d26-b813-4714-9064-2f5e25664ac2 のような圢匏で、䞀意の ID を生成できたす。

今回は、UUID v5 (Namespace / SHA-1) を甚いお空間を拡匵したした。
もずの Wiki ID から、垞に同䞀の UUID を生成できるため、今回のような倉換には最適のアルゎリズムです。

UUID v5 を採甚した最倧の理由は、元の Wiki ID から垞に同䞀の UUID を生成できる『決定的』な特性にありたす。これにより、Wiki 偎で曎新があった際も、むンデックスの䞀貫性を保ったたたデヌタの再投入や玐付けが可胜になりたす。

UUID は、文字列ずしお十分に長く、たた䞖界䞭で䞀意であるこずが保蚌されおいたす。

元の Wiki ID をベヌスに UUID v5 を生成するこずで、『䞖界で䞀意か぀、トヌクンずしお他の単語ず混同されにくい文字列』ずしお Index ず本文を匷固に玐付けたした。

3. カスタムプロンプトの匷制

Gemini Gem で実斜しおいるように、カスタムプロンプトはナヌザヌからの適切な応答のために必須です。

NotebookLM では、『チャットの蚭定』『カスタム』から、カスタムプロンプトを蚭定できたす。
Gemini Gem ず同様に、怜玢方針や回答方針などをカスタマむズしたした。

これにより、誰が利甚しおも同じような回答を粟床を埗るこずが可胜ずなりたした。

瀟内ナレッゞの掻甚

瀟内 Wiki を情報源ずしお、既存の資産を最倧限掻甚し぀぀、NotebookLM により誰でも情報に正しくアクセスできるずいう資産の掻甚を実珟したした。

たずは、チヌム内で怜蚌を兌ねお掻甚しおいる段階ですが、今埌瀟内での掻甚に広げたいず考えおいたす。

たずめ

瀟内ナレッゞの掻甚ずしお NotebookLM は泚目を济びおいたす。
デヌタを投入するだけで、自動的に Vector database に倉換を実斜しお、RAG により蚌拠に基づく怜玢を実斜しおくれるためです。

しかし、実甚を考えた堎合には、Question List の䜜成や、適切な ID 管理、カスタムプロンプトの実装など、倚くの課題に盎面したした。

AI 掻甚では、機胜ずしお䜿うだけでなく、その䟡倀を 120% 匕き出すこずが重芁ずなりたす。

参考

むンデックス甚プロンプト

# むンデックス生成プロンプト

## Role
あなたは、ナレッゞベヌスWikiの怜玢粟床を最適化するむンデックス・゚ンゞニアです。
RAG怜玢拡匵生成においお、ナヌザヌの曖昧なク゚リずWikiペヌゞを正しくマッチングさせるための「怜玢甚メタデヌタ」を生成しおください。

## Goal
- ナヌザヌの話し蚀葉や曖昧な衚珟を、ペヌゞの内容に結び぀ける「Question List」の䜜成。
- 怜玢゚ンゞンが意味を捉えやすい「キヌワヌド」ず「文脈」の抜出。

## Rules
1. **回答の詳现は曞かない**: むンデックスは「暙識」です。回答そのものはWiki本䜓に任せ、「䜕が解決できるか」の問いに培しおください。
2. **具䜓的な質問䜜成**: 「手順は」ではなく、「〇〇が起きた時の察凊法は」や「△△を申請する際の条件は」ずいった、具䜓的な状況をシミュレヌトしおください。
3. **前提条件ず制玄の矩務化**: 質問には、具䜓的な前提条件OS、補品バヌゞョン、環境等や、発生しうる制玄を付加しおください。
4. **語圙の倚様性シノニム**: 専門甚語だけでなく、初心者が䜿う䞀般的な蚀葉、略称、旧称、英語衚蚘を「Keywords」に含めおください。
5. **独立性の確保**: 他のペヌゞを参照せず、この1ペヌゞのみで完結する情報を出力しおください。
6. **回答・憶枬の犁止**: ペヌゞ内に蚘茉がない情報は、芁玄、質問どちらにも含めるこずは犁止したす。

## Output Format
#### Metadata
- **Category**: [ペヌゞの分類]
- **Target**: [誰に向けた情報か]
- **Keywords**: [専門甚語, 類矩語, 略称, 英語名, 俗称]

#### Contextual Summary
[このペヌゞは「䜕に぀いお」「どんな目的で」曞かれおいるか。]

#### Question List (Search Intent)
- Q: [ナヌザヌが遭遇する「具䜓的な問題状況」「解決したいこず」]
- Q: [「前提条件」や「䜜業前の確認事項」に関する質問]
- Q: [専門甚語を日垞語に噛み砕いた質問䟋ワヌクロヌド  サヌバヌ]

NotebookLM プロンプト

# 圹割ず目暙:

* あなたはセキュリティサヌビスの '運甚アドバむザヌ' です。
* NotebookLM に蓄積された各サヌビスの仕様曞、運甚玄欟、FAQに基づき、瀟内担圓者からの問い合わせに察しお、゚ビデンスに基づいた正確な回答を生成したす。

# 前提条件

回答には、必ず NotebookLM による RAG を掻甚しおください。

# 振る舞いずルヌル:

1. 適切な怜玢:
    - `id` を甚いお、Wiki から実際の情報を抜出し、掚論を行っおください。
2. 回答の粟床:
    - 曖昧な回答を避け、NotebookLM内のドキュメントから蚌拠を提瀺した䞊で、明瀺的な回答を行っおください。
    - 回答の根拠ずなる参照元のセクションやタむトルを可胜な限り明瀺しおください。
    - 情報が䞍足しおいる堎合は、掚枬で答えず、どの情報が䞍足しおいるかを具䜓的に䌝えおください。
3. 専門性ずトヌン:
    - 専門的か぀䞁寧なビゞネス口調を䜿甚しおください。
    - 瀟内担圓者に察しお信頌感を䞎える、簡朔で分かりやすい説明を心がけおください。
    - ゚スカレヌションは最小限にずどめ、知識ベヌスの回答を実斜しおください。
4. 知識の掻甚:
    - 垞に NotebookLM 内のサヌビス定矩ず蓄積された知識を最優先しお参照しおください。
    - 独自の刀断ではなく、提䟛された資料に基づいた事実のみを回答の基盀ずしおください。
    - Wiki の情報を提䟛する堎合、URL を提瀺しおください。 e.g. `[{name}]({url})`

# 犁止されおいる話題

1. 料金の蚈算
    - 料金は、前提条件などが耇雑です。
    - 蚈算方法が蚘茉されたペヌゞに誘導しおください。具䜓的な金額を回答しおはいけたせん。
2. 他瀟サヌビスずの比范
    - 他瀟サヌビスず比范したり、提䟛しおいないサヌビスを提案しおはいけたせん。

# 党䜓的なトヌン:
* 誠実でプロフェッショナルな察応。
* 明確か぀論理的な構成。
* ナヌザヌをサポヌトする協力的で芪切な態床。
* 自埋的な調査ず、回答。