Databricks生成AIクックブック - ステップ6: 繰り返しの実装 & 品質改善の評価

[Step 6: Iteratively implement & evaluate quality fixes — Databricks Generative AI Cookbook](https://ai-cookbook.io/nbs/5-hands-on-improve-quality-step-2.html) [2024/6/26時点]の翻訳です。

:::note warn
本書は著者が手動で翻訳したものであり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
:::

> [Databricks生成AIクックブック](https://qiita.com/taka_yayoi/items/36c51bce8f33a70cf204)のコンテンツです。

# ステップ6: 繰り返しの実装 & 品質改善の評価

![](https://ai-cookbook.io/_images/workflow_iterate.png)

## 要件

1. [根本原因分析](https://qiita.com/taka_yayoi/items/c1f76a39a43506fe7e33)に基づいて、実装、評価すべき[収集](https://qiita.com/taka_yayoi/items/758ba436168b08e184fc)や[生成](https://qiita.com/taka_yayoi/items/2a14ef50cec340502fec)に対する修正案を特定しています。
1. あなたのPOCアプリケーションは、同じランに格納されているAgent Evaluationを用いてMLflow Runに記録されています。

:::note info
[**コードレポジトリ**](https://github.com/databricks/genai-cookbook/tree/main/rag_app_sample_code)
[こちら](https://github.com/databricks/genai-cookbook/tree/main/rag_app_sample_code)からこのセクションで参照しているすべてのサンプルコードにアクセスすることができます。
:::

## 期待される成果

![](https://ai-cookbook.io/_images/mlflow-eval-agent.gif)

## 手順

全てのタイプに対して、最終的なチェーンとベースライン設定(最初はこれはあなたのPOCとなります)を評価するために、[`B_quality_iteration/02_evaluate_fixes`](https://github.com/databricks/genai-cookbook/blob/main/rag_app_sample_code/B_quality_iteration/02_evaluate_fixes.py)ノートブックを使い、"勝者"を選択します。このノートブックは、最も優れたエクスペリメントを選択し、レビューアプリやプロダクションレディでスケーラブルなREST APIにデプロイする助けになります。

1. [`B_quality_iteration/02_evaluate_fixes`](https://github.com/databricks/genai-cookbook/blob/main/rag_app_sample_code/B_quality_iteration/02_evaluate_fixes.py)ノートブックを開きます。
1. 実装する修正のタイプに基づいて、以下を実施します:
    - ![](https://ai-cookbook.io/_images/data_pipeline.png)
        1. 新たなデータパイプラインを作成し、最終的なMLflowランの名前を取得するための[指示](https://qiita.com/taka_yayoi/items/fd2f3cd4119184e62ce5)に従います。
        1. 変数`DATA_PIPELINE_FIXES_RUN_NAMES`にランの名前を追加します。
    - ![](https://ai-cookbook.io/_images/chain_config.png)
        1. 変数`CHAIN_CONFIG_FIXES`にチェインの設定修正を追加するために、[`02_evaluate_fixes`](https://github.com/databricks/genai-cookbook/blob/main/rag_app_sample_code/B_quality_iteration/02_evaluate_fixes.py)の`Chain configuration`セクションの指示に従います。
    - ![](https://ai-cookbook.io/_images/chain_code.png)
        1. 修正したチェーンのコードファイルを作成し、[`B_quality_iteration/chain_code_fixes`](https://github.com/databricks/genai-cookbook/tree/main/rag_app_sample_code/B_quality_iteration/chain_code_fixes)フォルダーに保存します。あるいは、そのフォルダーに保存されているチェーンのコードフィックスを選択します。
        1. 変数`CHAIN_CODE_FIXES`にチェーンコードファイルや追加のチェーン設定を追加するために、[`02_evaluate_fixes`](https://github.com/databricks/genai-cookbook/blob/main/rag_app_sample_code/B_quality_iteration/02_evaluate_fixes.py)ノートブックの`Chain code`の指示に従います。
1. 以下を行うために、`Run evaluation`セルからノートブックを実行します
    - それぞれの修正の評価
    - ベストな品質/コスト/レーテンシーメトリクスを提供する修正の特定
    - ステークホルダーのフィードバックを得るために、レビューアプリとプロダクションレディのREST APIにベストな修正をデプロイ

<br>

- [目次](https://qiita.com/taka_yayoi/items/36c51bce8f33a70cf204#%E7%9B%AE%E6%AC%A1)
- 前のセクション: [生成品質のデバッグ](https://qiita.com/taka_yayoi/items/2a14ef50cec340502fec)
- 次のセクション: [データパイプライン修正の実装](https://qiita.com/taka_yayoi/items/fd2f3cd4119184e62ce5)

### はじめてのDatabricks

[はじめてのDatabricks](https://qiita.com/taka_yayoi/items/8dc72d083edb879a5e5d)

### Databricks無料トライアル

[Databricks無料トライアル](https://databricks.com/jp/try-databricks)