

# Amazon Nova を使用した AI エージェントの構築
<a name="agents"></a>

**注記**  
このドキュメントは Amazon Nova バージョン 1 を対象としています。Amazon Nova 2 で AI エージェントを構築する方法については、「[AI エージェントの構築](https://docs.aws.amazon.com/nova/latest/nova2-userguide/building-ai-agents.html)」を参照してください。

AI エージェントは、お客様のエンドユーザーが組織データおよびユーザー入力に基づいてアクションを実行できるように支援します。エージェントは、基盤モデル (FM)、データソース、ソフトウェアアプリケーション、ユーザーとの会話の間のインタラクションを調整します。また、エージェントは API を自動的に呼び出してアクションを実行したり、ナレッジベースを呼び出してこうしたアクションの情報を補完したりすることもできます。デベロッパーは、エージェントを統合して生成 AI アプリケーションの配信を加速することで、開発にかかる数週間の労力を節約できます。

エージェントを使用すると、顧客のタスクや顧客からの質問への回答を自動化することができます。例えば、顧客が保険金請求を処理したり旅行を予約したりするのを支援するエージェントを作成できます。キャパシティのプロビジョニング、インフラストラクチャの管理、カスタムコードの記述は必要ありません。Amazon Nova は、プロンプトエンジニアリング、メモリ、モニタリング、暗号化、ユーザーのアクセス許可、API 呼び出しを管理します。

Amazon Bedrock で AI エージェントを構築する方法については、「[Bedrock エージェント](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html)」を参照してください。

エージェントは、以下のタスクを実行します。
+ 基盤モデルを拡張してユーザーのリクエストを理解し、エージェントが実行する必要のあるタスクを小さなステップに分割します。
+ ユーザーから、自然な会話を通して追加情報を収集します。
+ 会社のシステムに API コールを実行して、顧客のリクエストを満たすためのアクションを実行します。
+ データソースにクエリを実行することで、パフォーマンスと正解率を向上させます。

**Topics**
+ [Amazon Nova を AI エージェントの基盤モデルとして使用する](agents-use-nova.md)
+ [AgentCore での Amazon Nova の使用](#agents-agentcore)
+ [Strands での Amazon Nova の使用](#agents-strands)
+ [その他のリソース](#agents-resources)

## AgentCore での Amazon Nova の使用
<a name="agents-agentcore"></a>

Amazon Nova モデルはすべての Bedrock AgentCore サービスで使用できるため、非常に効果的なエージェントを大規模かつ安全にデプロイして運用できます。主なサービスには、ランタイム、アイデンティティ、メモリ、ゲートウェイ、オブザーバビリティなどがあります。詳細については「Amazon Bedrock AgentCore」、サンプルコードについては「{placeholder}」を参照してください。

AgentCore で Amazon Nova を使用する例を次に示します。

```
import boto3
from strands.models import BedrockModel

# Create a Bedrock model with the custom session
bedrock_model = BedrockModel(
model_id="model_id",
boto_session=session
)
```

## Strands での Amazon Nova の使用
<a name="agents-strands"></a>

 Strands は Amazon Bedrock のネイティブサポートを提供するため、これらの Nova モデルを最小限の設定でエージェントで使用できます。詳細については、「Strands Amazon Bedrock」を参照してください。

以下は、Amazon Nova で Strands を使用する方法を示すコード例です。

```
from strands import Agent
from strands.models import BedrockModel

# Create a Bedrock model instance
bedrock_model = BedrockModel(
    model_id="us.amazon.nova-premier-v1:0",
    temperature=0.3,
    top_p=0.8,
)

# Create an agent using the BedrockModel instance
agent = Agent(model=bedrock_model)

# Use the agent
response = agent("Tell me about Amazon Bedrock.")
```

## その他のリソース
<a name="agents-resources"></a>

1. [エージェントを使用してアプリケーションのタスクを自動化する](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html)

1. [Amazon Nova でのツールの使用 (関数呼び出し)](tool-use.md)

1. [テキスト理解のプロンプトのベストプラクティス](prompting-text-understanding.md)