Gemini APIのFile Search Toolを完全に理解した。ベクトルDBなどのインフラ管理の複雑さを考えなくていいのがとにかく最高。RAG(検索拡張生成)アプリケーションの構築プロセスが劇的に簡素化されるだろう。fileSearchStoresにFileを突っ込んでおくだけでいい感じにチャンクに区切られ、埋め込み表現が生成され、検索されて引用される。groundingChunksで出典情報も得られている。さらに、自分の理解では、この検索ストアはGCPプロジェクト内でグローバルな存在であり、ストアに書き込むアプリとチャットで参照するアプリが異なっていても問題ないはず。これもなにげに応用の幅が広がる気がする。
実際に動かしてみた。複数ファイルのインデクシングのスピード感、返却された回答文章のテイストや精度を見ていると、NotebookLMの裏側の実装はこれなのではないかと思えてくる。
NotebookLMにインスパイアされたブラウザ拡張機能「TabLM」を作った。調べ物の過程に開いた大量のタブをまとめて読んでくれる。副産物ではあるが、ウェブページをPDFファイルに変換してローカルに保存する機能が意外と役に立つ予感がする。その気になればClaude CodeやGemini CLIで参照できるということだ。
Gemini APIのFile Search Toolの使い方をマスターした!!調べ物中のタブを全てPDFファイルとして保存し、これらに対してRAGができるブラウザ拡張機能「TabLM」を作った。 pic.twitter.com/0XdjasGZBi
— daiiz🪅し-20 技術書典 (@daizplus) 2025年11月23日
夕飯はカレーを食べた。ナンをおかわりしたら食べ過ぎで気絶した。