# AIの堅牢性テスト

> AIの堅牢性テスト - Pythonクライアントを使用して、生成AIの堅牢性に関するインサイトとテストを設定し、プロンプトや回答の品質、毒性、関連性、および同様の指標を測定します。

This Markdown file sits beside the HTML page at the same path (with a `.md` suffix). It summarizes the topic and lists links for tools and LLM context.

Companion generated at `2026-07-30T11:40:01.287745+00:00` (UTC).

## Primary page

- [AIの堅牢性テスト](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md): Full documentation for this topic (Markdown sidecar).

## Sections on this page

- [堅牢性テストのインサイトを設定する](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md#configure-insights-for-robustness-testing): In-page section heading.
- [テスト設定のセットアップ](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md#set-up-test-configurations): In-page section heading.
- [堅牢性テストの実行](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md#run-robustness-tests): In-page section heading.
- [複数のインサイトの設定](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md#configure-multiple-insights): In-page section heading.
- [インサイト設定の取得](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md#get-an-insight-configuration): In-page section heading.
- [インサイト設定のリスト](https://docs.datarobot.com/ja/docs/api/dev-learning/python/genai/robustness-testing.html.md#list-insight-configurations): In-page section heading.

## Documentation content

[AI堅牢性テスト](https://docs.datarobot.com/ja/docs/api/reference/sdk/gen-testing.html.md#datarobot.models.genai.insights_configuration.InsightsConfiguration) は、生成AIモデルがさまざまな条件下で適切に機能し、品質基準を満たしていることを検証するのに役立ちます。 堅牢性テストでは、有害性、関連性、一貫性など、モデルパフォーマンスのさまざまな側面を測定するインサイトを設定できます。

## 堅牢性テストのインサイトを設定する

AIモデルの堅牢性をテストするためのインサイトをセットアップします。 インサイト設定を作成する際は、以下を指定する必要があります。

- custom_model_version_id ：テストするカスタムモデルバージョンのID。
- insight_name ：インサイトのわかりやすい名前。
- insight_type ：インサイトのタイプ（例： OOTB_METRIC ）。
- ootb_metric_name ：DataRobot提供の指標名（ OOTB_METRIC タイプの場合）。
- stage ：指標が計算されるステージ（ PROMPT または RESPONSE ）。

```
import datarobot as dr
custom_model_version = dr.CustomModelVersion.get(version_id)
insight_config = dr.InsightsConfiguration.create(
    custom_model_version_id=custom_model_version.id,
    insight_name="Toxicity Check",
    insight_type=dr.InsightTypes.OOTB_METRIC,
    ootb_metric_name="Toxicity",
    stage=dr.InsightStage.RESPONSE
)
insight_config 
```

## テスト設定のセットアップ

テストパラメーターを設定するには：

```
eval_dataset = dr.EvaluationDatasetConfiguration.create(
    name="Robustness Test Dataset",
    dataset_id=dataset.id
)
cost_config = dr.CostConfiguration.create(
    name="Test Cost Config",
    cost_per_token=0.0001
)
insight_config.update(
    evaluation_dataset_configuration_id=eval_dataset.id,
    cost_configuration_id=cost_config.id
) 
```

## 堅牢性テストの実行

テストを実行して結果を確認するには：

```
insight_config = dr.InsightsConfiguration.get(insight_config_id)
if insight_config.execution_status == "COMPLETED":
    results = insight_config.get_results()
    print(f"Test results: {results}")
elif insight_config.execution_status == "ERROR":
    print(f"Test failed: {insight_config.error_message}")
    print(f"Resolution: {insight_config.error_resolution}") 
```

## 複数のインサイトの設定

包括的な検証のために複数のテストをセットアップするには：

```
insights = [
    {
        "insight_name": "Toxicity Check",
        "ootb_metric_name": "Toxicity",
        "stage": dr.InsightStage.RESPONSE
    },
    {
        "insight_name": "Relevance Check",
        "ootb_metric_name": "Relevance",
        "stage": dr.InsightStage.RESPONSE
    },
    {
        "insight_name": "Coherence Check",
        "ootb_metric_name": "Coherence",
        "stage": dr.InsightStage.RESPONSE
    }
]
for insight_config in insights:
    dr.InsightsConfiguration.create(
        custom_model_version_id=custom_model_version.id,
        **insight_config
    ) 
```

## インサイト設定の取得

特定のインサイト設定を取得するには：

```
insight_config = dr.InsightsConfiguration.get(insight_config_id)
print(f"Insight name: {insight_config.insight_name}")
print(f"Insight type: {insight_config.insight_type}")
print(f"Execution status: {insight_config.execution_status}") 
```

## インサイト設定のリスト

カスタムモデルバージョンのすべてのインサイトを取得します。

```
custom_model_version = dr.CustomModelVersion.get(version_id)
insights = dr.InsightsConfiguration.list(custom_model_version_id=custom_model_version.id)
for insight in insights:
    print(f"{insight.insight_name}: {insight.execution_status}") 
```
