Skip to main content
このチュートリアルでは、検索拡張生成 (RAG) ワークフローの構築について説明します。そのために、BoxコンテンツをWeaviateベクトルデータベースに埋め込んで、WeaviateのQuery Agentを使用してデータについての質問に回答できるようにします。 フルバージョンのレシピは、WeaviateレシピリポジトリでJupyter Notebookとして入手できます。

概要

Weaviateとは

Weaviateは、AIを利用した高速で大規模な検索向けに構築された、オープンソースのベクトルデータベースです。データをオブジェクトとベクトルとして保存するため、埋め込みによるセマンティック検索と構造化フィルタリングを組み合わせることができます。Weaviateはクラウドネイティブかつフォールトトレラントで、大規模言語モデル (LLM) に直接統合されています。

BoxとWeaviateでエンドツーエンドのRAGソリューションを作成する方法

RAGは、ベクトル検索 (取得) と言語モデル (生成) を組み合わせて、独自のデータを使用して質問に回答する手法です。フローは次のステップに沿って進みます。
  • コンテンツの保存: Boxがファイル (PDF、ドキュメント、テキストレポート、サポートされるその他の形式) を保持します。
  • 埋め込みの作成: Boxファイルからテキストが抽出され、チャンク分割されます。チャンク分割されたテキストは、Weaviate Embeddingsを使用してベクトル埋め込みに変換されます。
  • クエリの実行: WeaviateのQuery Agentが自然言語の質問を受け取り、必要な検索クエリと集計クエリを生成して、単一の回答を返します。これらはすべて、エージェント型RAGを使用して行われます。

前提条件

始める前に、以下が揃っていることを確認してください。

Box開発者トークンの取得

  1. 右上隅にある [新規アプリ] をクリックします。
  2. アプリ名を入力し、認証方法として [OAuth 2.0] を選択します。
  3. [アプリの作成] を選択します。
  4. [アプリケーションスコープ] で、ファイルの読み取り/書き込みスコープを追加して [変更を保存] をクリックします (これらのスコープがまだ有効でない場合)。
  5. [構成] タブから開発者トークンをコピーして保存します。これはノートブックに必要になります。
開発者トークンは60分間有効です。セッションに時間がかかると、新しいトークンの生成が必要になります。

Weaviateクラスタの作成

  1. Weaviate Cloudにログインします。
  2. ダッシュボードから新しいクラスタを作成します。このクラスタには好きな名前を付けることができます。
  3. クラスタが準備できたら、[Details (詳細)] タブに移動して、クラスタURLAPIキーをメモします。

レシピの実行

リポジトリの複製

Weaviateレシピリポジトリを複製またはダウンロードします。
Box統合フォルダに移動します。
開発環境でJupyter Notebook (weaviate_box.ipynb) を開きます。
Weaviateレシピリポジトリの構造

The Box integration folder in the Weaviate recipes repository

認証の構成

ノートブックには、認証変数を設定する手順が含まれています。手順3のコードブロックを次の情報で更新します。
  • 自分のBox開発者トークン
  • 自分のWeaviateクラスタURLAPIキー
ノートブックの認証変数

Update the authentication variables in step 3 of the notebook

ノートブックの実行

ノートブックの各セルを順次実行します。ノートブックの実行内容は次のとおりです。
  1. デモ用ファイルをBoxにアップロードします (または、自分が用意したファイルを使用します)。
  2. Boxファイルからテキストコンテンツを抽出します。
  3. テキストをチャンク分割し、Weaviateでベクトル埋め込みを作成します。
  4. Weaviate Query Agentを使用して、コンテンツについての質問に回答します。
リポジトリには、4つの10-K財務報告書が入ったdemo_filesフォルダがテスト用に用意されています。別のコンテンツで作業したい場合は、これらを自分が所有するファイルに置き換えることができます。
最後のセルでは、デモとしてデータに対するクエリを実行します。手順7でクエリを変更して、自分のコンテンツに基づいて別の質問を行うこともできます。
Weaviate Query Agentからの最終的な回答

The Query Agent returns an answer based on your Box content

次の手順

年次報告書や記事、検索したい任意のドキュメントなど、追加のファイルをBoxにアップロードし、ノートブックを再実行してそれらのファイルをWeaviateに埋め込みます。
system_promptパラメータを調整してエージェントの動作を変更します。たとえば、より詳細な分析や応答の具体的な形式をリクエストできます。
Weaviateは他の種類のエージェントも提供しています。Transformation Agentはデータを前処理することができ、Personalization Agentは個々のユーザーに合わせて応答をカスタマイズできます。

リソース

Weaviateレシピ

Weaviateレシピリポジトリに含まれているフルバージョンのJupyter Notebook。

Weaviate Query Agent

Weaviateのエージェント型RAG機能について。

Weaviate Embeddings

Weaviateの埋め込みサービスに関するドキュメント。

Box Developer Community

フィードバックの共有や他のBox開発者からのサポート。
最終更新日 2026年7月21日