こんにちは!syumaiです。
今回は、ベースマキナ ドキュメントへの llms-full.txt の追加(リリースノート)に合わせて、その活用方法についてお伝えさせていただければと思います。
なお、今回ベースマキナに llms-full.txt を追加した主な目的は、お客さまご自身で、NotebookLMなどを使ったAIサポートチャット環境をご利用いただけるようにすることです。詳細については後ほど説明させていただきます。
llms.txt とは?
llms-full.txt の話をする前に、 llms.txt の話をする必要があります。(深くは踏み込みません)
重要なのは、これらがいずれもLLMのための文書である点です。
一般的なドキュメントサイトは、人間が読みやすいように書かれています。 しかしながら、人間が読みやすいようにするためのマークアップには、LLMにとっては不要な情報が多く含まれています。 例えば、文字色の情報は、文書そのものの意味には影響しないことが多いでしょう。
一方で、見出しや太文字は、文書の構造や言葉の持つ意味の強さを示すので、LLMも知っておいた方がよい情報といえます。 また、文書間のリンクなども、LLMが必要な知識を集めるのに使われうる情報でしょう。
最近では、これらを考慮した上で、元のドキュメントが持つ意味をなるべく損なわず、LLMに必要な情報に絞った、効率的に扱えるドキュメントが必要とされています。
そこで、LLM向けのドキュメントの形式として提案されたのが、llms.txtです。
llms.txt は、人間にとっても読みやすい、Markdown形式をとっています。そのうえで、機械的にもパース可能な文書として形式が定められています。
llms.txt は、サイトの概要や、サイトに含まれるページへのリンク一覧を含みます。
サイトマップと似ているように聞こえますが、 sitemap.xml がサイトの全てのページをリストアップする一方で、 llms.txt は、LLMにとって有用と考えられるページへのリンクに絞って提供するべき、とされている点で大きく異なります。
詳しくは、azukiazusaさんの以下のブログをご覧ください。
ここまで llms.txt の説明を行いましたが、実際現実として提供されている llms.txt には、上記提案に沿った内容になっていないものも多いです。 llms.txt は標準化されていませんし、「Markdownによって記述された、サイト内のページへのリンク集」というふんわりとした共通認識によって提供されているのが実態でしょう。
llms-full.txtとは?
先ほど紹介したazukiazusaさんのブログによると、 llms.txt の当初の提案には llms-full.txt も含まれていたようです。
しかしながら、現在の https://llmstxt.org には llms-full.txt への言及はありません。どこかしらのタイミングで提案から外れたのでしょう。*1
ということで、 llms.txt よりも更にフワッとした存在である llms-full.txt ですが、これは何かというと、サイト全体の情報を1つに収めた文書ファイルです。なかなかインパクトがありますね。
合意されている形式は、
- Markdownである
- ページ間の区切りは
---を使う
くらいではないでしょうか?
この形式のファイルの利点は、一発でLLMのContextにサイト全体の情報を入力できることです。 そして、欠点は、一発でLLMのContextからはみ出る場合があることです。それはそうですね…。
llms.txt は、LLMが必要に応じてリンクを辿って情報を集めることを要求しています。LLMに情報を入力しすぎると、出力が安定しなくなる点を考えると、これは合理的な仕組みといえるでしょう。
しかしながら、 llms.txt の形式に対応していないツールへの入力としては不足する場合もあります。
一方で、 llms-full.txt は、ただの1つの文書ファイルですので、対応 / 非対応ということを特に気にせず入力することができます。これはこの形式の大きな利点といえます。
llms-full.txtの実例
llms-full.txt の実例をいくつか挙げてみます。
- Cursor (約500KB)
- Anthropic (約2.5MB)
- Mastra (約4MB)
- Cloudflare (約17MB)
小さいところは小さいし、大きいところは尋常じゃなく大きいですね。
ベースマキナの llms-full.txt は以下で配布しています。こちらのサイズは約400KBです。
他の例も気になる方は、 https://llmstxt.site/ というサイトにまとまっているので、ぜひ見てみてください。
llms-full.txtによるAIサポートチャット
llms-full.txt は、サイトのドキュメントを全て1ファイルに収めているので、これをLLMに入力することで、自分専用のAIサポートチャットを簡単に構築することができます。
これには、NotebookLM、Claudeのプロジェクト、ChatGPTのマイGPT (GPTs)などを利用できます。
例えばNotebookLMにベースマキナの llms-full.txt を読み込んで、ベースマキナの アクション 機能について、「あるアクションの実行結果を使って別のアクションを呼ぶ方法は?」と質問してみると、以下のように応答してくれます。

実際に試してみたい方は、弊社社長timakinの個人アカウントで作成したNotebookLMプロジェクトを公開したリンクをいただいたので、以下のURLから試してみてください。
https://notebooklm.google.com/notebook/417b7069-deaa-4ec2-8009-11d533a55fa2
llms-full.txtの使い方
llms-full.txt は巨大になりやすいので、基本的にはコンテキストを圧縮して使う必要があります。
チャンクに分けた文書からベクトル生成し、ベクトルDBに格納したものをLLMから検索して使う、いわゆるRAGのアプローチが必要になることが多いようです(正直詳しくはないため、表現が適切でないかもしれません)
Claudeのプロジェクトは、どうやらこの作業を自動で行ってくれるようで、4MBもあるMastraの llms-full.txt を難なく取り込んでくれました。
Claudeのプロジェクトでチャットを開始すると、いくつかのキーワードでプロジェクト内の検索を行っている様子がみられるので、RAGのアプローチを行っているとみてまず間違いないでしょう。
ベースマキナの llms-full.txt は現状約400KB程度ですが、これくらいのサイズであればNotebookLMも取り込み可能なようです。
NotebookLMが入力したファイルをどのように処理しているかはわかりませんが、50ものソースから必要な情報をまとめる能力があるツールということもあり、似たアプローチを行って情報の検索を行っているものと想像しています。
Claudeのプロジェクトおよび、NotebookLMへの llms-full.txt の登録方法は、以下のドキュメントにまとめてあります。
ベースマキナのllms-full.txt提供の目的
今回の llms-full.txt 提供の主な目的は、お客さまご自身で、NotebookLMなどを使ったAIサポートチャット環境をご利用いただけるようにすることでした。
ベースマキナのドキュメントには、組み込みの検索機能はありますが、十分な性能があるとはいえません。そもそも検索は、知りたい情報に到達するためのキーワードをいかに思いつくかによって、目的達成の可能性が大きく左右されてしまいます。
llms-full.txt にアクセスできるLLMであれば、適切なワードを瞬時に推測して、検索にかけてくれるでしょう。
このAI時代、より少ない労力で欲しい情報に到達できる環境の提供は、サービスを利用される方にとってより重要になっていると思います。
また、サービス提供側としても、お客さまからの問い合わせに対する回答の品質担保のためにLLMを活用することができます。 もちろん専門家として、自分たちのサービスについての知識には自信をもっていますが、問い合わせが集中したタイミングでの打ち返しのスピードや、複数の課題解決方法の提案など、LLMによる支援を受けることによって効率化できる部分が多く存在しています。
最終的な回答は細かくチェックするとして、回答を作成する過程でLLMによる補助を受けるのは、スタッフの作業負荷軽減に役立つでしょう。
ベースマキナのllms-full.txtを使ってみての感想
実際に、先ほど例として挙げたNotebookLM、Claudeのプロジェクト、そして、ChatGPTのマイGPTに対して、いくつか自分で質問を投げかけてみました。(※以下は、簡単に試した感想で、統計的なものではない点にご留意ください)
NotebookLMは、最も誤り(ハルシネーション)の少ない回答を行ってくれました。また、回答のぶれが少なく、提案として最も妥当なものを示してくれることが多かったように感じました。
Claude (Claude Sonnet 4) は、設定の詳細に踏み込んだ回答を多く示してくれました。 ただ、情報の正確性には難があり、たまに、ベースマキナが提供していない機能を使った例を出力していました。Claudeのプロジェクトには、チャットの応答についての指示(AIエージェントに事前に設定するプロンプトのようなもの)を設定できるので、正確性を上げられないか試してみましたが、ある程度の品質の回答をしてもらえるところまでが限界でした。 また、検索ワードの選択にもぶれがあり、同じ質問に対して、回答内容の妥当性が大きく上下していました。 とは言え、総合的には、十分に疑問の解消に使える性能のあるツールだと感じました。
ChatGPTのマイGPT (o4-mini-high) も、傾向としてはClaudeに似ていました。ただし、llms-full.txt内の別機能を混同して回答に含めるケースがClaudeよりは少々多く感じました。
いずれも、自然言語を使ったドキュメント検索として十分な性能を示してくれたと思います。
今後の展望
まずは、お客さまが自身でドキュメント活用の幅を広げられるようにすることを優先し、 llms-full.txt の提供を行いました。
しかしながら、そもそも自分でセットアップしなくても自由に自然言語で問い合わせができるのがベストなので、ドキュメント活用のためのAIエージェントを自社で用意して提供するのは将来的には必要だと考えています。
自分たちでもNotebookLMやClaudeを活用してサポート品質の向上に取り組みつつ、理想のAIサポートチャットエージェントのあるべき姿へ思いを馳せていこうと思います!
*1:もしくは、初めから提案に含まれていなかった可能性もありますが、筆者は正確には確認できていません: https://x.com/__syumai/status/1945689589471133992