

# ウェブグラウンディング
<a name="web-grounding"></a>

ウェブグラウンディングを使用すると、Amazon Nova はウェブで現在の情報を検索し、引用を含むレスポンスを提供できます。この機能は、モデルのトレーニングデータ以外の最新情報を必要とするクエリに役立ちます。

## ウェブグラウンディングの仕組み
<a name="how-web-grounding-works"></a>

プロンプトに対してウェブグラウンディングを有効にすると、次の手順が実行されます。

1. **リクエスト設定**: アプリケーションは、`systemTool` として nova\$1grounding が有効になっている Amazon Bedrock API にユーザープロンプトを送信します。

1. **検索と分析**: モデルは検索が必要かどうかを判断し、1 回以上検索して関連情報を取得し、理解を深めたり、特定のサブトピックをより深く掘り下げたりするために追加の検索が必要かどうかを評価します。

1. **レスポンスの生成**: Amazon Nova は、検索結果の情報を自動的に合成して、ソースへの引用を含むリアルタイムの情報に基づく最終的な API レスポンスを生成します。

## ウェブグラウンディングの使用方法
<a name="enable-web-grounding"></a>

ウェブグラウンディングを利用するコードの詳細な例については、「コードサンプル」セクションを参照してください。

結果にウェブグラウンディングを含めるには、toolConfig ブロックで次の `systemTool` パラメータを指定します。

```
import boto3
from botocore.config import Config

# Create the Bedrock Runtime client with extended timeout
bedrock = boto3.client(
    "bedrock-runtime",
    region_name="us-east-1",
    config=Config(read_timeout=3600)
)

# Define the tool configuration
tool_config = {
    "tools": [{
        "systemTool": {
            "name": "nova_grounding"
        }
    }]
}

# Send the request
response = bedrock.converse(
    modelId="us.amazon.nova-2-lite-v1:0",
    messages=[{
        "role": "user",
        "content": [{"text": "What are the latest developments in quantum computing?"}]
    }],
    toolConfig=tool_config
)

# Extract text with interleaved citations
output_with_citations = ""
content_list = response["output"]["message"]["content"]
for content in content_list:
    if "text" in content:
        output_with_citations += content["text"]
    elif "citationsContent" in content:
        citations = content["citationsContent"]["citations"]
        for citation in citations:
            url = citation["location"]["web"]["url"]
            output_with_citations += f" [{url}]"

print(output_with_citations)
```

## リージョン別の可用性
<a name="web-grounding-availability"></a>

ウェブグラウンディングは現在、米国リージョンでのみ使用でき、米国 CRIS プロファイルでのみサポートされています。

## レスポンスの構造
<a name="web-grounding-response-structure"></a>

以下に、レスポンスの例を示します。簡潔にするために、レスポンスは短縮されました。

```
{
  "output": {
    "message": {
      "content": [
        {
          "text": "Recent quantum computing developments include...",
          "citationsContent": [
            {
              "location": {
                "web": {
                  "url": "https://example.com/quantum-news",
                  "domain": "example.com"
                }
              }
            }
          ]
        }
      ]
    }
  }
}
```

各引用には以下が含まれます。
+ `text`: モデルが生成したレスポンスのセグメント。
+ `citationsContent`: セグメントに関連する引用データのプライマリコンテナ。
+ `citations`: 引用の場所を保持する `citationsContent` 内のコンテナ。
+ `location`: 引用元を保持する `citations` 内のコンテナ。
+ `web`: ウェブソースの詳細を保持する `location` 内のコンテナ。
+ `url`: 引用元の完全なウェブアドレス (URL)。
+ `domain`: ソース URL のルートドメイン。

## グラウンディングの安全性
<a name="web-grounding-safety"></a>

データが AWS インフラストラクチャを離れることはありません。モデル生成クエリは AWS サービス内にとどまり、より広範なインターネットに送信されることはありません。当社の広範な内部ウェブ検索インデックスとナレッジグラフは、信頼できる高品質のソースを優先し、進入時に悪意のあるコンテンツをフィルタします。最後に、ランタイムフィルタリングによる間接的なプロンプトインジェクションや誤った情報からアプリケーションを保護します (この緩和策は英語以外の言語では制限されています)。

## エラー処理
<a name="web-grounding-error-handling"></a>

`nova_grounding` という名前の `toolSpec` エントリを含めないでください。この名前のツールを含めると、エラーが発生します。

以下は、ウェブグラウンディングの使用時に発生する可能性のあるエラーのリストです。
+ `malformed_tool_use`
+ `max_tokens`
+ `malformed_model_output`

## 組み込みツールに必要なアクセス許可
<a name="permissions"></a>

ロールが Amazon Bedrock のウェブグラウンディングにアクセスできるようにするには、次の 2 つのオプションがあります。

1. **IAM ロールで BedrockFullAccess を有効にする**: ロールに BedrockFullAccess がある場合、ウェブグラウンディングに自動的にアクセスできます。

1. **特定のアクセス許可を追加する (必要な場合)**: より詳細なアクセスコントロールが必要な場合は、このポリシーをロールの IAM ポリシーに追加し、アカウント ID を AWS アカウント ID に置き換えます。

```
{
    "Statement": [ 
        { 
            "Effect": "Allow", 
            "Action": ["bedrock:InvokeTool"], 
            "Resource": ["arn:aws:bedrock::{111122223333}:system-tool/amazon.nova_grounding"] 
        } 
    ] 
}
```

ウェブグラウンディングでは、`aws:requestedRegion` 条件キーが「unspecified」に設定されています。既存のポリシーまたはサービスコントロールポリシー (SCP) がこの条件を適用すると、アクセスの問題が発生する可能性があります。「未指定」の requestedRegion を許可するように条件を更新すると、この問題を解決できます。

**注記**  
ウェブグラウンディングツールを有効にすると、グラウンディングされた情報を組み込んだ出力の使用とエンドユーザーによる使用は、お客様の責任となります。引用またはソースマテリアルへのリンクからのグラウンド情報が出力に含まれるタイミングを把握できます。これらの引用とリンクは、エンドユーザーに提供する出力に保持して表示する必要があります。

**注記**  
ウェブグラウンディングには追加料金がかかります。詳細は、「[AWS Bedrock 料金表](https://aws.amazon.com/bedrock/pricing/)」を参照してください。