【AWSサービス 基礎編】Amazon Bedrock で基盤モデルを呼び出しテキストを生成する

目次

概要

Amazon Bedrock は、主要な AI 企業が提供する基盤モデル(Foundation Model: FM)を API 経由で利用できるフルマネージドサービスです。自前でモデルをトレーニングしたりインフラを構築したりする必要がなく、AWS マネジメントコンソールや API から簡単にテキスト生成、画像生成、チャットなどの生成 AI 機能を利用できます。

本記事では、Amazon Bedrock の基本的な仕組みを理解し、コンソールのプレイグラウンドを使って基盤モデルにプロンプトを送信し、テキストを生成する操作を体験します。

この記事のメリット

  • Amazon Bedrock がどのようなサービスか、基本的な概念を理解できる
  • 基盤モデル(FM)の種類とプロバイダーの違いを把握できる
  • モデルアクセスの有効化からテキスト生成までの一連の操作を体験できる
  • プレイグラウンドでの推論パラメータ(Temperature、Top P など)の役割を理解できる
  • 生成 AI を AWS 上で活用するための第一歩を踏み出せる

キャラクター紹介

クラウド資格実践ラボの基礎学習記事では、ルクシーちゃんと代表の土肥が対話形式で AWS 認定試験で必要な知識をハンズオンとともに解説していくブログです。これからこのブログを案内する2人を紹介します。

ルクシーちゃん

クラウド資格に挑戦中の好奇心旺盛なナビゲーター。初学者目線で「これってなんだろう?」と素朴な疑問を投げかけ、知識を引き出していく役どころ。難しい内容も、ルクシーちゃんと一緒なら一歩ずつ理解できると思います!

土肥(とひ)

株式会社Luxyの代表であり同社の元エンジニア。これまでオンプレとAWS環境のインフラを担当。AWS認定資格の学習で得た知識をハンズオンとともに解説するのが得意。直近では新人の教育なども行っており、これから技術を学ぼうという方が納得できるように解説できることに喜びを感じているとのこと。

技術解説

Amazon Bedrock とは

Luxyちゃん

とひさん、Amazon Bedrock ってどういうサービスなんですか?名前はよく聞くんですけど、いまいちピンと来なくて。

土肥

Amazon Bedrock は、Amazon、Anthropic、Cohere、Meta、Mistral AI といった AI 企業が提供する基盤モデルを、単一の API で利用できるサービスだよ。モデルのホスティングやスケーリングは AWS が全部管理してくれるから、利用者はアプリケーションの開発に集中できるんだ。

Luxyちゃん

つまり、自分で AI モデルを用意しなくても、AWS 経由でいろんな会社のモデルを使えるってことですか?

土肥

そのとおり。しかもサーバーレスで使えるからインフラ管理が不要だし、複数プロバイダーのモデルを統一された API で呼び出せるんだ。

Luxyちゃん

便利そうですけど、送ったデータがモデルの学習に使われちゃったりしませんか?セキュリティが気になります。

土肥

いいところに気づいたね。送信データがモデルのトレーニングに使用されることはないよ。さらに、VPC エンドポイント経由でプライベートに接続することもできるから、セキュリティ面でも安心なんだ。

主な特徴は以下のとおりです。

  • サーバーレスで利用でき、インフラ管理が不要
  • 複数プロバイダーのモデルを統一された API で呼び出せる
  • 送信データがモデルのトレーニングに使用されることはない
  • VPC エンドポイント経由でプライベートに接続できる

基盤モデル(Foundation Model)

Luxyちゃん

基盤モデルっていう言葉が出てきましたけど、普通の AI モデルと何が違うんですか?

土肥

基盤モデルは、大量のデータで事前にトレーニングされた大規模な AI モデルのことだよ。テキスト生成、要約、翻訳、画像生成など、さまざまなタスクに対応できるのが特徴なんだ。

Luxyちゃん

なるほど、汎用的に使えるモデルなんですね!Amazon Bedrock ではどんなモデルが使えるんですか?

土肥

いろんなプロバイダーのモデルが揃っているよ。Amazon の Titan、Anthropic の Claude、Meta の Llama、Mistral AI の Mistral や Mixtral、Cohere の Command なんかが代表的だね。下の表にまとめておくよ。

プロバイダー代表的なモデル主な用途
AmazonAmazon Titanテキスト生成、埋め込み、画像生成
AnthropicClaudeテキスト生成、分析、コード生成
MetaLlamaテキスト生成、対話
Mistral AIMistral、Mixtralテキスト生成、コード生成
CohereCommandテキスト生成、要約、検索
Luxyちゃん

こんなにたくさんあると、どれを選べばいいか迷いそうですね。

土肥

用途によって得意なモデルが違うから、まずは試してみるのが一番だよ。今回の実践では Anthropic の Claude を使ってテキスト生成を体験するよ。

推論パラメータ

Luxyちゃん

モデルにプロンプトを送るとき、何か設定を変えたりできるんですか?

土肥

できるよ。推論パラメータっていう設定値を調整することで、出力の特性を制御できるんだ。代表的なものを紹介するね。

パラメータ説明
Temperature出力のランダム性を制御する。値が高いほど多様な出力、低いほど決定的な出力になる
Top P累積確率の上位何パーセントのトークンから出力を選択するかを制御する
Max Tokens生成するトークンの最大数を指定する
Stop Sequences指定した文字列が生成されたらそこで出力を停止する
Luxyちゃん

Temperature っていうのが特に大事そうですね。値を低くすると毎回同じような答えになるんですか?

土肥

そうそう。Temperature を低くすると決定的な出力、つまり毎回似たような結果になるよ。逆に高くすると多様な表現が出てくるんだ。用途によって使い分けるのがポイントだね。

Luxyちゃん

Max Tokens を小さくしすぎると、途中で文章が切れちゃったりしませんか?

土肥

その可能性はあるよ。Max Tokens は生成するトークンの最大数だから、短すぎると回答が途中で終わることがあるんだ。あと、Stop Sequences を指定しておけば、特定の文字列が出たところで出力を止めることもできるよ。

プレイグラウンド

Luxyちゃん

実際にモデルを試すには、コードを書かないといけないんですか?

土肥

いや、Amazon Bedrock コンソールにはプレイグラウンドっていう機能が用意されていて、コードを書かずにブラウザ上でモデルを試せるんだよ。

Luxyちゃん

それは助かります!プレイグラウンドにはどんな種類があるんですか?

土肥

大きく分けて2つあるよ。

  • チャット / テキスト: テキストプロンプトを送信してレスポンスを生成する
  • イメージ: プロンプトからイメージを生成する
Luxyちゃん

今回はどっちを使うんですか?

土肥

今回はチャット / テキストプレイグラウンドを使ってテキスト生成を体験するよ。実際にプロンプトを入力して、モデルがどう応答するか見てみよう。

実践

前提条件

  • リージョン: ap-northeast-1(東京)
  • AWS マネジメントコンソールにログインできる IAM ユーザーまたはロールがあること
  • Amazon Bedrock へのアクセス権限(bedrock:* または必要なアクション)が付与されていること

本記事で実施する操作の一覧です。

操作内容
モデルアクセスの有効化使用するモデルへのアクセスを有効にする
テキスト生成プレイグラウンドでプロンプトを送信しテキストを生成する

プレイグラウンドでテキストを生成する

プレイグラウンドでテキスト生成を試します。

  • 左側ナビゲーションの「プレイグラウンド」→「モデルを選択」をクリックします
  • 画面上部のモードが「チャット」になっていることを確認します。
  • カテゴリで「Anthropic」を選択し、モデルで「Claude Sonnet 4.5」を選択して「適用」をクリックします
プレイグラウンドのモデル選択画面で Claude 3.5 Sonnet を選択した状態
  • 画面下部のプロンプト入力欄に以下のテキストを入力します
AWSのセキュリティベストプラクティスを3つ挙げて、それぞれ1文で説明してください。
  • 「実行」ボタンをクリックします
  • モデルからのレスポンスが画面に表示されることを確認します
プロンプト入力後にモデルからのレスポンスが表示された画面

システムプロンプトを設定してテキストを生成する

システムプロンプトを使うと、モデルの振る舞いや役割を事前に指定できます。

  • 画面上部の「システムプロンプト」欄に以下を入力します(システムプロンプトの効果を確認するために、語尾を指定しています)
あなたはAWSソリューションアーキテクトです。回答は常に日本語で、初心者にもわかりやすい表現を使ってください。語尾に「なのだ」をつけてください。
  • プロンプト入力欄に以下を入力し「実行」をクリックします
VPCとサブネットの違いを教えてください。
  • システムプロンプトで指定した役割に沿った回答が返されることを確認します
システムプロンプトを設定した状態でレスポンスが表示された画面

まとめ

  • Amazon Bedrock は、複数の AI プロバイダーの基盤モデルをフルマネージドで利用できるサービスである
  • モデルを使用するには、事前にモデルアクセスの有効化が必要である
  • プレイグラウンドを使うと、コードを書かずにブラウザ上でモデルの動作を試すことができる
  • Temperature などの推論パラメータを調整することで、出力のランダム性や長さを制御できる
  • システムプロンプトを設定することで、モデルの振る舞いや応答スタイルを制御できる

参照先

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

株式会社Luxy(https://luxy-inc.com)の代表取締役.

2018年〜インフラエンジニアとしてキャリアをスタートし、オンプレミスのネットワーク・サーバ環境で3年半、クラウド環境で4年半の8年間エンジニアとして従事。
2021年に佐藤氏の創業した会社を引き継ぎ、代表に就任。

目次