[アップデート] Amazon Bedrock のプロンプト最適化が一般提供されました
こんにちは!クラウド事業本部コンサルティング部のたかくに(@takakuni_)です。
Amazon Bedrock のプロンプト最適化が一般提供されました。
プロンプト最適化
プロンプト最適化機能は Amazon Bedrock の機能の 1 つで、ユーザーが LLM へ入力するプロンプトの内容を最適化(書き換え)する機能です。
LLM はプロンプトの内容に沿って、コンテンツを生成するため、プロンプトは生成結果に大きな影響を与える重要な要素です。
そのため、プロンプトを最適化していく プロンプトエンジニアリング
といった技術もあったりします。
このプロンプトの最適化ですが、利用する LLM によって最適化されたプロンプトが異なり各社でプロンプトエンジニアリングガイドといった形で提供されています。
参考:Prompt engineering concepts
これらのモデルごとに最適化されたプロンプトを、カスタマイズするのは大変なため、LLM を使ってプロンプトを自動で修正しようという機能がプロンプト最適化機能になります。
アップデート内容
プレビュー期間中に比べてのアップデートを紹介します。
利用可能なモデル
Mistral AI Mistral Large (24.07) が利用可能なモデルが増えました。現状、次のモデルでプロンプト最適化を利用できます。
- Amazon Nova Lite
- Amazon Nova Micro
- Amazon Nova Pro
- Amazon Titan Text G1 - Premier
- Anthropic Claude 3 Haiku
- Anthropic Claude 3 Opus
- Anthropic Claude 3 Sonnet
- Anthropic Claude 3.5 Haiku
- Anthropic Claude 3.5 Sonnet v2
- Anthropic Claude 3.5 Sonnet
- DeepSeek DeepSeek-R1
- Meta Llama 3 70B Instruct
- Meta Llama 3.1 70B Instruct
- Meta Llama 3.2 11B Instruct
- Meta Llama 3.3 70B Instruct
- Mistral AI Mistral Large (24.02)
- Mistral AI Mistral Large (24.07)
実行制限の撤廃
プレビュー期間中は 1 日あたり 10 個のプロンプトのみ最適化可能で、 AWS アカウント内で合計 100 プロンプトのみ最適化可能でした。
この機能制限は撤廃されたので、シンプルによかったです。
仕様について
リージョン
次のリージョンで利用可能です。東京リージョンで利用可能になる日が待ち遠しいですね。
- US East (N. Virginia)
- US West (Oregon)
- Asia Pacific (Mumbai)
- Asia Pacific (Sydney)
- Canada (Central)
- Europe (Frankfurt)
- Europe (Ireland)
- Europe (London)
- Europe (Paris)
- South America (São Paulo)
言語
引き続き、英語でプロンプトを記載した方が良い旨が記載されています。この点には注意ですね
For best results, we recommend optimizing prompts in English.
料金
GA したため料金周りが気になります。1,000 トークンあたり $0.030 USD が発生します。
Claude 3.7 Sonnet が 1,000 入力トークンで $0.003 USD、1,000 出力トークンあたり $0.015 USD のため、結構いい値段しています。
主にシステムプロンプトなど、更新が低いが LLM アプリケーションの回答に重要度の高い部分の最適化用途になりそうです。
利用に際して
利用に関してはマネジメンソコンソールまたは、API 形式をサポートしています。プレビュー時点と変わらずの操作感で良きですね。
Submit a prompt for optimization
やってみた
マネジメントコンソールで操作してみましょう。Amazon Bedrock のコンソールで作業を行います。プレビュー期間中と操作感変わらずでした。
最適化ボタンを押してみます。
最適化結果が出てきました。ドキュメントと若干揺れがあるのか、マネジメントコンソールでは英語のみサポートと表記されています。英語でプロンプトをつくっ画法が無難な気がしました。
それぞれ生成前後のプロンプトは以下になります。
生成前
プロンプトエンジニアリングについて教えて
生成後
<instruction>
プロンプトエンジニアリングについて説明してください。以下の点に留意して回答を作成してください:
- プロンプトエンジニアリングの定義と目的を簡潔に説明する
- プロンプトエンジニアリングの主要な手法や原則を列挙する
- プロンプトエンジニアリングの利点と課題を指摘する
- 回答は明確で構造化された形式で提示する
- 技術用語は適切に定義し、分かりやすい言葉を使用する
</instruction>
<response>
プロンプトエンジニアリングとは、大規模言語モデル(LLM)に与える入力プロンプトを設計・最適化する手法のことです。目的は、LLMからより適切で有用な出力を得ることです。
主な手法:
- プロンプトの構造化と明確化(タスク指示、例示、フォーマット指定など)
- 関連情報の適切な提示
- 出力フォーマットの指定
- 反復的な調整とフィードバック
利点:
- LLMの性能を最大限に引き出せる
- 特定タスクに特化した出力が得られる
- プロンプト設計を通じてLLMの振る舞いを制御できる
課題:
- プロンプト設計に手間と熟練が必要
- LLMの能力に依存する部分が大きい
- 最適なプロンプトを見つけるのが難しい場合がある
</response>
まとめ
以上、「[アップデート] Amazon Bedrock のプロンプト最適化が一般提供されました。」でした。
re:Invent で登場した機能が続々と GA され、今年の re:Invent はどうなるのでしょうか。非常に楽しみです。
このブログがどなたかの参考になれば幸いです。クラウド事業本部コンサルティング部のたかくに(@takakuni_)でした!