基盤モデルの選定

Amazon Bedrock入門

Nikhil Rangarajan

Data Scientist

Amazon Bedrockでのモデルアクセス有効化

  • モデル設定にアクセス(本講座では有効化不要)

ClaudeとNovaモデルがAWSコンソールで有効な状態のスクリーンショット。

Amazon Bedrock入門

軽量 vs. 高性能の基盤モデル

  • 軽量モデル
    • 適用: Q&A、要約
    • 応答が速く、低コスト
    • 例: Nova Micro、Claude Haiku

Amazonのロゴ。

  • 高性能モデル
    • 適用: 複雑な推論、分析
    • 高度な分析機能
    • 例: Nova Plus、Claude Sonnet

Anthropicのロゴ。

Amazon Bedrock入門

Amazon Bedrockの他の基盤モデル

Amazon Bedrockで利用可能な他のモデル:

  • MetaのLlama

    • 📝 汎用テキスト向けのオープンソースLLM
  • Stability AIのStable Diffusion

    • 🖼 画像生成に特化
  • AI21のJurassic

    • 📈 テキスト生成・分析

MetaのLlamaのロゴ。

Amazon Bedrock入門

Bedrockモデルの呼び出し

  • 基本構成:
import json
bedrock = boto3.client('bedrock-runtime', region_name='us-east-1')
response = bedrock.invoke_model(modelId='amazon.nova-lite-v1:0',

body=json.dumps(input_dictionary)
)
  • モデルの応答をJSONで返す
Amazon Bedrock入門

Claudeの呼び出し

  • Anthropic Claude
response = bedrock.invoke_model(
    modelId='anthropic.claude-3-5-sonnet-v2:0',
    body=json.dumps(

{"anthropic_version": "bedrock-2023-05-31",
"max_tokens": 100,
"messages": [{ "role": "user", "content": [{"type": "text", "text": "your prompt here"}], }],
}
))
Amazon Bedrock入門

Novaの呼び出し

  • Amazon Nova
response = bedrock.invoke_model(
    modelId='amazon.nova-lite-v1:0', 
    body=json.dumps(

{"messages":
[{"role": "user", "content": [{"text": "your prompt here"}] }]
}
))
Amazon Bedrock入門

モデル応答の抽出

  • APIレスポンスの本文を読む
  • JSONをPython辞書に変換
  • キーで出力を抽出
print("Claude:",

json.loads( claude_response['body'].read() )
["content"][0]["text"]
)
Hello! It's nice to meet you. How can I assist you today?
Amazon Bedrock入門

モデル応答の抽出

  • APIレスポンスの本文を読む
  • JSONをPython辞書に変換
  • キーで出力を抽出
print("Nova:",

json.loads( nova_response.get("body").read().decode() )
["output"]["message"]["content"][0]["text"]
)
Hello! How can I assist you today?
Amazon Bedrock入門

練習しましょう!

Amazon Bedrock入門

Preparing Video For Download...