このコンテンツは自動機械翻訳サービスによる翻訳版であり、皆さまの便宜のために提供しています。原本の英語版と異なる誤り、省略、解釈の微妙な違いが含まれる場合があります。ご不明な点がある場合は、英語版原本をご確認ください。
出版業者やコンテンツクリエイターは、ユーザーがWebサイトのコンテンツをナビゲートするために、従来のキーワードベースの検索に依存してきました。しかし、従来の検索は時代遅れの前提に基づいて構築されており、ユーザーは意図を示すためにキーワードを入力すると、サイトは最も関連性の高い結果へのリンクのリストを返すのです。訪問者をクリックして、ページをスキミングし、探している答えをまとめるのは訪問者次第です。
AIは期待をリセットし、そのパラダイムは壊れてきています。情報の検索方法が根本的に変化したのです。
ユーザーは、旧来の方法でWebサイトを検索したくありません。Copilot、Claude、ChatGPTなどのAIシステムとの対話に慣れており、質問するだけで答えが得られます。私たちは検索エンジンから回答エンジンへと移行しました。
同時に、WebサイトにはAIエージェントという新しいクラスの訪問者が存在します。エージェントもキーワード検索で同じ問題を抱えています。キーワードクエリを発行し、リンクをクリックして、ページをスクレイピングして回答をつなぎ合わせなければなりません。しかし、それ以上の必要性があります。質問をし、Webサイト全体で信頼できる回答を得るための、構造化された方法です。つまり、Webサイトは情報を正確に取得できるように、信頼しているエージェントに制御されたアクセスを許可する方法が必要なのです。
Webサイトの所有者は、この変化に貢献する方法を必要としています。
AIの期待がリセットされたとしたら、次に来るのは?人とエージェントの両方に対応するためには、Webサイトでは、キーワード検索の段階的なアップグレード以上のものが必要です。コンテンツへの会話型アクセスをWeb自体の一部にするモデルが必要です。
それこそが、私たちが提供したいものです。オープンスタンダード(NLWeb)とインフラストラクチャ(AutoRAG)を組み合わせることで、あらゆるWebサイトがAI対応を簡単に行えるようにするのです。
NLWebは、Microsoftが開発したオープンプロジェクトで、Webサイト上の自然言語クエリの標準プロトコルを定義しています。各NLWebインスタンスは、モデルコンテキストプロトコル(MCP)サーバーとしても動作します。Cloudflareはこの仕様を実現し、すべてのサイトがAIアプリのように機能し、ユーザーやエージェントが同様にコンテンツを自然に問い合わせできるようにすることを目標に、Microsoftと積極的に標準の拡張に協力しています。
Cloudflareのマネージド検索エンジンであるAutoRAGは、Webサイトを自動的にクロールし、コンテンツをR2に保存し、マネージドベクターデータベースに埋め込むことができます。AutoRAGは、継続的な再クロールと再インデックスによりインデックスの鮮度を保ちます。モデルの推論とエンベッディングは、Workers AIを介して提供することができます。各AutoRAGはAI Gatewayとペアになっており、AIモデルの使用状況に関する可観測性とインサイトを提供します。これにより、カスタムインフラストラクチャを管理する負担なく、会話型検索のための完全な管理されたパイプラインが得られます。
「NLWebとAutoRAGを組み合わせることで、パブリッシャーは検索ボックスを超えることができ、Webサイト上の会話型インターフェースを簡単に作成、展開することができます。この統合により、ユーザーと信頼できるエージェントの両方にとって、すべてのWebサイトが簡単にAI対応になることになります。」- RV Guha氏、NLWeb創設者、Microsoft社、CVP兼技術フェロー。
これにより、パブリッシャーは新しい収益化モデルを手に入れることができると私たちは楽観的に考えています。
「パブリッシャーが直面してきた課題は、AIがすでに試みられたビジネスモデルの崩壊を加速させるリスクと同様に、よく知られています。しかし、NLWebとAutoRAGにより、オーディエンスとの関係を良い方向にリセットする機会があります。より直接的出版社が所有・運営する(O&O)環境へのエンゲージメントは、オーディエンスが出版社のブランドとボイスを評価することで、収益化の新たな可能性を意味します。これは業界全体のニーズをリセットするでしょう。」– Joe Marche氏、Human Ventures社、ジェネラル&ビルドパートナー
NLWebの標準をCloudflareのAutoRAGインフラストラクチャと組み合わせることで、あらゆるWebサイトに会話型検索を簡単に導入できるようにします。
AutoRAGでドメインを選択するだけで、セマンティッククエリーのためにサイトをクロールしてインデックス付けします。次に、アクセスレイヤーとして機能するCloudflare Workerをデプロイします。このWorkerは、NLWebプロジェクトによって定義されたNLWeb標準とUIを実装し、インデックス化されたコンテンツを人とAIエージェントの両方に公開します。
Workerには以下が含まれます:
`/ask` エンドポイント:会話型Web検索の提供方法について定義された標準。ルート `/` の会話UIと、`/snippet.html` の埋め込みプレビューをご覧ください。チャット履歴をサポートすることで、同じセッション内でクエリを互いに構築することができ、また、検索品質を向上させるための自動クエリデコンテキスト化が含まれます。
`/mcp` エンドポイント:信頼できるAIエージェントが構造化されたアクセスのために接続できるMCPサーバーを実装します。
このセットアップによって、サイトのコンテンツはすぐに2つの方法で利用可能になります。訪問者に提供できる会話型UIと、構造化されたMCPインターフェースを介して、信頼できるエージェントがあなたの条件に合わせて確実にサイトをクエリできるようになります。
さらに、NLWebプロジェクトの独自バージョンをデプロイしてホストしたい場合は、 NLWebインスタンスを動作させる検索エンジンとしてAutoRAGを使用するオプションもあります。
あなたのサイトにとって、ワンクリックでサイトを会話型にすることができます。舞台裏では、AutoRAGは完全な検索パイプラインをスピンアップし、これを可能にします。
クロールと取り込み:AutoRAGは、「sitemap.xml」に従って、検索エンジンのようにサイトを調査します`robots.txt` は、どのページが利用可能でクロールが許可されているかを把握する機能を提供します。そこから、サイトマップに従って、ドメイン内のページを見つけます(最大10万ページまで)。Browser Renderingは、動的なJavaScriptコンテンツをキャプチャするために、各ページの読み込みに使用されます。クロールされたページは、アカウントのR2バケットにダウンロードされてから取り込まれます。
継続的なインデックス作成:取り込まれたコンテンツは解析されてVectorizeに埋め込まれ、キーワードマッチングだけでなく、セマンティック検索によるクエリーも可能です。AutoRAGは、自動的に再クロールと再インデックスを行い、ナレッジベースを最新のコンテンツと整合させます。
アクセスと可観測性:Cloudflare Workerは、NLWebプロトコルを実装するアクセスレイヤーとして機能するために、アカウントにデプロイされます(デプロイ可能なWorkerは、 Workersテンプレートリポジトリにもあります)。Workers AIは、応答性を向上させるための要約およびデコンテキスト化されたクエリ機能をシームレスに動作させるために使用されます。まもなく、AI GatewayとSecret StoreのBYOキーを使用して、あらゆるプロバイダーからモデルを接続し、AutoRAGダッシュボードで直接選択することができるようになります。
これまで、AutoRAGはR2をデータソースとしてのみサポートしていました。構造化されたファイルならうまく機能していましたが、Webサイト自体を、インデックス作成と検索可能な第一級のデータソースにする必要がありました。これを可能にするためには、AutoRAGにWebサイトクローリングを構築し、Webサイトのような大規模な動的ソースを処理できるようにシステムを強化する必要がありました。
Webクローラーを実装する前は、データ同期の信頼性を向上させる必要がありました。AutoRAGの以前のユーザーは、インデックス同期がいつ実行され、それが成功したかどうかを可視化できませんでした。この問題を解決するために、すべての同期を追跡し、履歴を保存し、ログを提供するジョブモジュールを導入しました。このために、2つの新しいDurable ObjectsをAutoRAGのアーキテクチャに追加する必要がありました。
ジョブマネージャーは完全な同期を実行し、その役割はファイルのキューイング、コンテンツの埋め込み、Vectorizeデータベースを最新の状態に維持することなどです。データの一貫性を確保するために、RagManager(既存アーキテクチャではDurable Object)によって実行できるのは、RAGごとに一度に1つのJobManagerだけです。RagManagerは、手動またはスケジュールされた同期によってトリガーできる新しいジョブを開始する前に、実行中のジョブをキャンセルします。 .
FileManagerは、Workersの並列処理中にメモリが不足したときに発生したスケーラビリティの問題を解決しました。もともと、単一のDurable Objectが複数のファイルを処理する役割を担っていましたが、128MBのメモリ制限があるため、すぐにボトルネックになりました。解決策は作業を分割することでした。JobManagerは多くのFileManagerにファイルを分散し、それぞれが1つのファイルを担当します。20の異なるFileManagerを介して20のファイルを並行して処理することで、有効なメモリ容量を128MBからバッチあたり約2.5GBに拡張しました。
こうした改善により、Webサイトパーサーを構築する準備が整いました。既存のR2ベースのキューイングロジックを再利用することで、最小限の中断でクローリングを追加しました。
Webサイトクロールに指定されたJobManagerは、RAG設定に関連付けられているサイトマップを読み取ることで始まります。
R2バケットからオブジェクトをリスト化する代わりに、完全なURLをR2オブジェクトキーとして使用し、各Webサイトリンクを既存のR2ベースのキューにキューに入れます。
ここから、プロセスはファイルベースの同期とほぼ同じです。ファイルマネージャーはジョブを選択し、RAGがWebサイト解析用に設定されているかどうかを確認します。
存在する場合は、FileManagerはリンクをクロールし、ページのHTMLコンテンツをユーザーのR2バケットに配置します。この場合もURLをオブジェクトキーとして使用します。
これらの手順の後、データにインデックスを付け、クエリ時に提供します。このアプローチはコードの再利用を最大化し、HTMLからマークダウンへの変換の改善は、ファイルとWebサイトベースのRAGの両方に自動的にメリットがあります。
NLWebとAutoRAGを使って、ウェブサイトを会話型検索に備えて準備するのは簡単です。その仕組みは:
Cloudflareダッシュボードで、コンピュートとAI > AutoRAGに移動します。
AutoRAGで「作成」を選択し、NLWeb Webサイトクイックデプロイオプションを選択します。
インデックスを作成したいCloudflareアカウントからドメインを選択します。
インデックス作成をクリックします。
以上です!提供されたリンクでNLWeb検索を体験してみたり、埋め込み可能なスニペットを使ってお客様のサイトでどのように表示されるかをテストしていただけます。
この新機能を試した際のご意見をお聞かせください。nlweb@cloudflare.comまでご連絡ください。