RAGアプリケーションの初期化

プレビュー

この機能は プライベート プレビュー段階です。 お試しになるには、Databricks の担当者にお問い合わせください。

別のRAG Studioドキュメントをお探しですか?RAGドキュメントインデックスに移動

次のガイドでは、RAG Studioアプリケーションの初期化について説明します。

重要

このチュートリアルのステップは、アプリケーションのコード ベースを初期化するためにアプリごとに 1 回実行されます。 チュートリアルの残りのステップは、アプリケーションのバージョンを反復しながら、開発プロセス全体を通じて繰り返されます

ステップ 1: 開発環境を初期化する

  1. 開発環境の設定のステップに従って、 開発環境 を構成します。

  2. RAG Studioアセットバンドルテンプレートをホームディレクトリに抽出します

    mkdir ~/.rag_studio
    cd ~/.rag_studio
    curl -O <URL to zip file provided by your Databricks contact>
    unzip rag-studio-0.0.0a2.zip
    

    注:

    このステップは、製品のプライベート プレビュー ステータスのためにのみ必要です。

ステップ 2: 必要なインフラストラクチャを構成する

インフラストラクチャの セットアップ ガイドの ステップに従って、必要なインフラストラクチャを作成します。

デフォルトでは、RAG Studio は、データ取り込み、RAG チェーンの作成、評価などのタスク用に新しいジョブ クラスターをプロビジョニングします。 代わりに対話型クラスターを使用する手順など、クラスター要件の詳細については、 「クラスター」を参照してください。

ステップ 3: アプリケーションを初期化する

  1. 開発マシンでターミナルを開き、アプリケーションのコードベースを保持するディレクトリに移動します

  2. Initialize the sample application using the Asset Bundle template (アセットバンドルテンプレートを使用したサンプルアプリケーションの初期化)

    注:

    ~/.databrickscfgで複数のDatabricks CLIプロファイルが構成されている場合、RAG Studioはアプリの作成にデフォルトのプロファイルを使用します。

    databricks bundle init ~/.rag_studio/rag-studio-0.0.0a2/
    
    > RAG Studio app name (e.g. hr-bot): databricks-docs-bot
    > Existing catalog name: <catalog-name>
    > Existing Unity Catalog schema name: <schema-name>
    > The secret scope used to access vector search endpoint: <secret-scope>
    > The secret key used to access vector search endpoint: <secret-key>
    
    ✨ Your Rag Studio workspace has been created in the 'databricks-docs-bot' directory!
    
    Please refer to the README.md of your project for further instructions on getting started.
    

    注:

    ディレクトリ構造のリファレンスドキュメントを読んで、コードベースがどのように構成されているかを理解してください。

  3. ~/rag_studio内の(新しい)フォルダdatabricks-docs-botに変更します。フォルダーには、指定したアプリ名に基づいて名前が付けられます。

    cd databricks-docs-bot
    
  4. 必要な Python ライブラリをインストールする

    pip install -r requirements.txt
    
  5. この時点で、環境がセットアップされ、開発を開始する準備が整いました。 先に進む前に、 ./rag コマンドラインインターフェイスを理解しましょう - このインターフェイスは、RAG Studioのさまざまなワークフローとタスクを実行するために使用されます。 チュートリアル全体を通して、これらのコマンドの使用方法を示しますが、いつでも ./rag --help または ./rag name-of-command --help を実行して、特定のコマンドの使用方法を理解できます。

    ./rag --help
    
    Usage: rag [OPTIONS] COMMAND [ARGS]...
    
    Options:
      -h, --help  Show this message and exit.
    
    Commands:
      create-rag-version  Create and deploy a new version of the RAG chain...
      deploy-chain        Deploy the chain model for a given RAG version
      explore-eval        Run the exploration notebook on the evaluation results
      ingest-data         (Dev environment only) Ingest raw data from data...
      run-offline-eval    Run offline evaluation for a given chain version...
      run-online-eval     Run online evaluation on the currently-logged...
      setup-prod-env      Set up the EnvironmentName.REVIEWERS and...
      start-review        Start the review process for a given chain model...
    

RAG Studio 展開ジョブの仕組みを理解する

RAG Studio のデプロイメント ジョブは、 ./ragコマンドライン ユーティリティを使用して管理されます。 デプロイ ジョブを開始すると、ジョブはコンピュート クラスター上の Databricks ジョブを使用して実行されます。 将来のリリースでは、これらの展開ステップでコンピュート クラスターのプロビジョニングは必要なくなります。

警告

CTRL+C を押してデプロイメント コマンドを終了すると、デプロイメント ジョブが開始されている場合は、バックグラウンドで実行されたままになります。 ジョブを停止するには、コンソールに出力された URL に移動して、Databricks ワークフロー UI でジョブを停止します。

注:

デフォルトでは、RAG Studio は展開ジョブごとに新しいコンピュートをプロビジョニングします。 既存のコンピュート クラスターを使用したい場合は、任意の./ragコマンドに-c <cluster-id>を渡すことができます。 または、environment_config.development.cluster_idconfig/rag-config.ymlcluster_idを設定することもできます。これは開発Environmentでのみ機能することに注意してください。

コンピュートの<cluster-id>を見つけるには、Databricks UI でクラスターを開きます。 クラスターの URL では、 <cluster-id>0126-194718-ucabc7oi : https://<workspace-url>/?o=123456798#setting/clusters/0126-194718-ucabc7oi/configurationです。

独自のコンピュートを使用する場合は、クラスターがMLR 13.3ランタイムを使用していることを確認してください。

ステップ 4: Environments を初期化する

  1. 次のコマンドを実行して、これらの Environmentsを初期化します。 このコマンドの実行には約 10 分かかります。

    ./rag setup-prod-env
    

    注:

    ワークスペースとUnity Catalogのスキーマで作成される内容の詳細については、「 RAG Studioによって作成されたインフラストラクチャとUnity Catalogのアセット 」を参照してください。

    重要

    Databricks CLI の複数のバージョンに関する警告は無視しても問題ありません。

    Databricks CLI v0.212.1 found at /opt/homebrew/bin/databricks

    Your current $PATH prefers running CLI v0.18.0 at /<your env path>/bin/databricks

    Because both are installed and available in $PATH, I assume you are trying to run the newer version. If you want to disable this behavior you can set DATABRICKS_CLI_DO_NOT_EXECUTE_NEWER_VERSION=1.

ステップ 5: アプリケーションのサンプル データを取り込む

注:

デフォルトの📥 Data Ingestor Databricks ドキュメントをダウンロードします。 src/notebooks/ingest_data.py のコードを変更して別のソースから取り込むことも、config/rag-config.yml を調整してUnity Catalogボリュームにすでに存在するデータを使用することもできます。 RAG Studio に同梱されているデフォルトの🗃️ Data Processorは、HTML ファイルのみをサポートします。 Unity Catalogボリュームに他のファイル タイプがある場合は、 「🗃️ データ プロセッサ バージョンの作成」のステップに従って、🗃️ Data Processor コードを調整します。

  1. 次のコマンドを実行して、データ取り込みプロセスを開始します。 デフォルトのアプリケーションは、構成された UC スキーマ内のUnity Catalogボリュームに Databricks ドキュメントをダウンロードします。 このステップには約 10 分かかります。

    注:

    Unity Catalog のカタログとスキーマは、 ステップ 3 で構成したものです。

    ./rag ingest-data -e dev
    
  2. 取り込みが完了すると、コンソールに次のメッセージが表示されます。

    -------------------------
    Run URL: <URL to the deployment Databricks Job>
    
    <timestamp> "[dev e] [databricks-docs-bot][dev] ingest_data" RUNNING
    <timestamp> "[dev e] [databricks-docs-bot][dev] ingest_data" TERMINATED SUCCESS
    Successfully downloaded and uploaded Databricks documentation articles to UC Volume '`catalog`.`schema`.`raw_databricks_docs`'%
    

次のチュートリアルに従ってください!

生データの取り込みまたは接続