メインコンテンツに移動
デベロッパーのためのクラウド活用方法
AWS for Games logo featuring a white game controller outline with directional pad and buttons, on a purple background.

面倒な操作は生成 AI に任せよう ! Amazon Bedrock でゲーム自動プレイさせてみた

2025-02-03 | Author : Sheng Hsia Leng, 中村 一樹

はじめに

ゲームなみなさんこんにちは ! Game Solutions Architect の Leng と Kazuki です。
この記事では Amazon Bedrock を使ってゲームを自動プレイさせることでゲーム開発の効率化の可能性を探ってみます。

近年のゲーム開発は肥大化しており、開発期間が 5 年を超えるものや、100 名を超えるメンバーで開発しているタイトルも珍しくありません。そのため、「開発効率や QA 効率を上げる」ことが重要視されています。可能な限り開発者が行わなくてよい作業や繰り返し行う作業などを自動化していきたいものです。その方法の一つとして AI 活用が注目されています。

今回は開発効率、QA 効率を上げるために Amazon Bedrock で利用可能な Anthropic 社が提供している Claude 3.5 Sonnet v2 の新機能の Computer Use を使用してゲームの自動プレイが可能かどうかを実際に試していきます。


X ポスト » | Facebook シェア » | はてブ »

builders.flash メールメンバー登録

毎月提供されるクラウドレシピのアップデート情報とともに、クレジットコードを受け取ることができます。 
今すぐ特典を受け取る »

AWS for Games

AWS for Games ではより早い開発、よりスマートな運営、そしてより楽しいゲームへの成長という BuildRunGrow の 3 つの柱に沿ってサポートします。本記事は BuildGrow の柱、 クラウドゲーム開発の分野で生成 AI を利用したものになります。
A Japanese-language diagram illustrating the stages of game development on AWS: Build (cloud game development), Run (game servers, game security, databases for games), and Grow (LiveOps, game analytics, AI & ML).

なぜゲームの自動プレイが必要なのか

ゲーム開発は機能の開発、チェックの繰り返しで行われます。新しい機能やゲームバランス調整などゲームに手を加えたものが正しく動作しているか、面白くなっているか、など様々なチェックを行っています。全てのチェックをゲーム開発者やテスター
が行えばよいのですが、それでは人的なコストが多くかかってしまいます。同じ作業を行ってなんらかの数値を取得したい、ただゲームがクラッシュしないか確認がしたい、といった簡易チェックなどは人ではなく自動で行わせることでコストを削減することができます。

例えば、出来上がった ROM が問題ないかを確認するための簡易チェック、処理負荷を確認するために様々なステージやシステムに移動し CPU 使用率や FPS (frame per seconds) メモリ容量など処理上げに必要な数値の取得、ゲームを長時間動作させても問題がないか確認するためのエージングテスト、など開発中盤以降で様々な要件で自動プレイをさせたい場面は増えてきます。

多くの場合、自動プレイはエンジニアが専用のコードを組み込んだり、FSM (Finante State Machine) ツールなどを作成し、それを利用してもらうことで実現されることが多いです。「このボタンを押して、次にこのボタンを押して」といった簡単なシーケンス移動でも個別でリソース作成やプログラムの組み込みが必要となります。

この自動プレイ部分を生成 AI が行うことができれば、エンジニアが専用プログラムを作成する必要もなく、テスト専用の FSM リソースなどを作る必要もなくなります。そのことにより属人性の削減やテスト効率が上がるだけでなく、テストやデバッグ用の組み込みプログラムの量が減ることによるエンバグの防止やユーザーと同じ操作での動作確認が可能なので、よりユーザーのプレイを模倣した確認を行うことができます。

ゲームを自動プレイさせてみる

もし生成 AI による自動プレイが簡単に実装できれば上記のようなユースケースの実装が楽になり開発効率や QA 効率が上がりそうです。今回は Amazon Bedrock で利用できる LLM モデルの一つである Antropic 社が提供している Claude 3.5 Sonnet v2 の新機能である Computer Use を使用して実際に AWS メンバーが作成したゲームを自動プレイできるかを確認してみます。

今回自動プレイを試すゲームは、『AWS アイコン探しゲーム Find The Icon』です。これは、AWS サービスアイコンの中から指示されたサービスのアイコンを最も早く見つけ出す、最大 4 人まで同時参加可能なマルチプレイヤー対戦ゲームです。バックエンドには Amazon EKS や Agones を使用しています。このデモゲーム開発の詳細については、以前公開された 関連記事 もぜひご参照ください。

Screenshot collage showing the user interface of the 'Find The Icon' game powered by Amazon Bedrock, including icon selection, gameplay, and player rankings screens.

Anthropic Claude 3.5 Sonnet v2 Computer Use とは

Anthropic 社が提供している Claude 3.5 v2 で新しく追加された機能です。Claude が入力されたプロンプトをもとに指定されたコンピューターを操作するという機能です。ユーザーは、Claude に画面を確認させたり、カーソルを移動させたり、ボタンを押させたり、テキストを入力させたり、など Claude に指示することで自身のコンピューターを操作させることができます。このことにより Claude にコンピューター上の様々なアプリケーションなどを使ってあるタスクを行わせる、など LLM 単体だけではできない作業を指示して行わせることができます。

Anthropic Claude 3.5 Sonnet v2 Computer Use 利用における注意点

記事を執筆した 2025 年 1 月では Computer Use はまだパブリックベータ版の機能となります。そのため今後機能の内容が変わる可能性もあります。また Anthropic からも Computer Use を使用する際には以下の注意事項の記載があります。

Caution
Computer use is a beta feature. Please be aware that computer use poses unique risks that are distinct from standard API features or chat interfaces. These risks are heightened when using computer use to interact with the internet. To minimize risks, consider taking precautions such as:
1.Use a dedicated virtual machine or container with minimal privileges to prevent direct system attacks or accidents.
2.Avoid giving the model access to sensitive data, such as account login information, to prevent information theft.
3.Limit internet access to an allowlist of domains to reduce exposure to malicious content.
4.Ask a human to confirm decisions that may result in meaningful real-world consequences as well as any tasks requiring affirmative consent, such as accepting cookies, executing financial transactions, or agreeing to terms of service.
In some circumstances, Claude will follow commands found in content even if it conflicts with the user's instructions. For example, instructions on webpages or contained in images may override user instructions or cause Claude to make mistakes. We suggest taking precautions to isolate Claude from sensitive data and actions to avoid risks related to prompt injection.
Finally, please inform end users of relevant risks and obtain their consent prior to enabling computer use in your own products.

(引用元) https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo

要約すると

  • 標準的な API やチャットインターフェースとは異なるリスクが存在している。インターネットを操作する際にはリスクが高まる。
  • Claude が誤った操作をする可能性がある。そのため情報漏洩などのリスクがある。機密情報を扱うようなタスクには注意が必要。
  • リスクを最小限に抑えるためにアクセス制限などセキュリティの設定と、サンドボックス環境 (仮想マシンやコンテナ) での利用をお勧めする。


この機能はユーザーがプロンプトを記載して自身のパソコンを Claude に操作させて様々なタスクを実行させるため、誤ったプロンプトを記載することにより意図していない行動をとる可能性があります。その結果、ネットワーク上のどこかにパソコン内の機密情報などを送信してしまったり、自身のコンピューターの環境を壊してしまうなどの事故が発生する可能性があります。また、現在はプライベートベータのため不具合やエラーなどが発生することもあるかもしれません。そのため Anthorpic 社からはサンドボックス環境での利用やネットワークに繋いでの利用の注意などが促されています。
※今回の利用に関しても細心の注意を払って実装と検証をしておりますが、実際にお試しいただく際には上記注意点を踏まえた上で検証などを行ってください。

Amazon Bedrock の利用開始方法

上記注意点などを守りながら実際に Compute Use を使ってゲームを自動操作させてみましょう。

Amazon Bedrock のモデルアクセス設定

本章の作業は、オレゴンリージョンで行います。Bedrock 上の Anthropic Claude 3.5 Sonnet v2 が利用可能なリージョンは今後追加される可能性もありますので、詳しくは こちらのドキュメント をご覧ください。

Amazon Bedrock を利用を開始するには、利用するモデルのアクセス設定が必要です。マネジメントコンソールで Amazon Bedrock のページに遷移し、左側のペインで「モデルアクセス」を選択します。

それから、右上の「モデルアクセスを変更」をクリックしてください。ここで、利用したいモデルにアクセスできるようにします。今回は Computer Use に対応するモデル「Anthropic Claude 3.5 Sonnet v2」を利用します。

Amazon Bedrock にアクセスできる権限を持つ AWS プロファイルを設定する

まず Amazon Bedrock にアクセスできる IAM ユーザーを作成し、AmazonBedrockFullAcces というポリシーをアタッチします。FullAccess を使用すると簡単に始められますが、本番環境では必要最小限の権限を持つカスタムポリシーを作成することを強く推奨します。

IAM ユーザーの作成が完了しましたら IAM ユーザーのアクセスキーとシークレットアクセスキーを取得します。該当する IAM ユーザーを選択し、「セキュリティ認証情報」タブに移動して、新しいアクセスキーを作成します。

作成されたアクセスキーとシークレットアクセスキーをコピーし、次のプロファイルの設定のステップで使います。アクセスキーの管理の詳細については、「AWS アクセスキーを管理するためのベストプラクティス」を参照してください。



Computer Use を使ってみる

ローカルターミナルで AWS CLI でプロファイルを設定します。以下のコマンドを実行し、プロンプトに従います。アクセスキー ID、シークレットアクセスキー、デフォルトリージョン (us-west-2)、出力形式を入力します。

bash
aws configure --profile bedrock-claude-user

入力例

アクセスキー ID、シークレットアクセスキー、デフォルトリージョン (us-west-2)、出力形式を入力します。

bash
AWS Access Key ID [None]: THISISEXAMPLEKEY
AWS Secret Access Key [None]: THISISEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json

Anthropic が共有した Computer Use の Quick Start リポジトリをクローン

AWS プロファイルの設定が完了しましたら、Anthropic が共有した Computer Use の Quick Start リポジトリをクローンします。このリポジトリは、必要な依存関係をすべて含む Docker コンテナを作成するためのビルドファイルや Bedrock を使用して Claude 3 Sonnet v2 モデルにアクセスするためのエージェントループ実装例が含まれていますので、Computer Use 利用を開始するのに役立ちます。

bash
git clone https://github.com/anthropics/anthropic-quickstarts

ディレクトリの移動

その後、下記のコマンドでディレクトリを移動します。

bash
cd anthropic-quickstarts/
cd computer-use-demo/

Docker の起動

最後は aws configure で設定したプロファイルを利用し、Docker を起動します。

bash
export AWS_PROFILE=bedrock-claude-user
docker run \
    -e API_PROVIDER=bedrock \
    -e AWS_PROFILE=$AWS_PROFILE \
    -e AWS_REGION=us-west-2 \
    -v $HOME/.aws:/home/computeruse/.aws \
    -v $HOME/.anthropic:/home/computeruse/.anthropic \
    -p 5900:5900 \
    -p 8501:8501 \
    -p 6080:6080 \
    -p 8080:8080 \
    -it ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest

仮想のデスクトップ起動

実行されると下記のような内容が表示されて、http://localhost:8080 にアクセスすると、チャット UI と仮想のデスクトップが表示されます。

Xvfb started successfully on display :1Xvfb PID: 9starting tint2 on display :1 ...starting mutterstarting vncPORT=5900starting noVNCnoVNC started successfully✨ Computer Use Demo is ready!➡️ Open http://localhost:8080 in your browser to begin
Screenshot of the Claude Computer Use Demo interface showing a security alert warning users not to provide access to sensitive accounts or data, as malicious web content can hijack Claude's behavior. The interface features a chat area, HTTP exchange logs, and workspace panel.

Claude にゲームを操作させる

Computer Use のチャット UI にプロンプトを入力することで、Claude がマシンを操作し色々なタスクをこなすことができます。まず、ブラウザを開いてゲームのリンクを開いてくださいという指示を出してみます。

'computer' 機能

動画で示されているように、Claude は 'computer' というツール機能を使用して、マウス操作、文字入力、スクリーンショット撮影などを行いながら、その結果を確認しています。

json
Tool Use: computer
Input: {'action': 'mouse_move', 'coordinate': [804, 736]}

--------------------------------------------------

Tool Use: computer
Input: {'action': 'type', 'text': 'https://...'}

--------------------------------------------------

Tool Use: computer
Input: {'action': 'screenshot'}

Claude Computer Use 画面イメージ

Screenshot displaying Japanese instructions for starting Firefox browser, including steps to click the address bar and enter a URL, with the Firefox homepage open and interface elements visible.
Screenshot displaying Japanese instructions for entering a URL in the Firefox browser, showing the browser window with a URL being typed and various website shortcuts visible on the start page.
Screenshot showing a Unity WebGL Player interface and Japanese instructions about page loading and screenshot process. The image displays a browser window with a Unity logo and Japanese text providing instructions.

Claude がゲームを操作する様子

『Find The Icon』ゲームのスタート画面が表示される際に Claude から「ゲームを開始するには "Start match!" ボタンをクリックする必要があります。ボタンの位置にカーソルを移動してクリックします。」と判断し、自動でマッチング画面まで進めることができました。

その後、 Claude から「マッチングを待っている状態が続いています。このゲームは他のプレイヤーとマッチングする必要があるようです。現在はマッチングを待っている状態で、対戦相手が見つかるのを待っています。」という返答がありました。Claude がここまで理解できることに感心しました。

今回は説明をわかりやすくするため、マルチプレイヤーモードではなく、Claude によるシングルプレイヤーでのプレイの様子を見ていきましょう。

Screenshot of the Unity WebGL game 'Find The Icon' showing the game matching interface in a web browser, with icon tiles and game status displayed.

ゲームプレイを始める

それでは早速、プレイを始めましょう ! Claude には初めてのゲームなので、基本的な画面操作から丁寧に説明していきます。正確にプレイできるよう、まずはゲームの概要、操作方法、スコアシステムについて順を追って説明します:

このゲームは、AWS サービスアイコンの中から指示されたサービスのアイコンを最も早く見つけ出すものです。「Game Start」を押すと、次の画面に移ります。次の画面下の十字キーでカーソルを動かし、該当するアイコンを見つけたら「Found!」ボタンを押してください。プレイヤーの点数は最初は 0 点ですが、正解の場合 10 点ずつ与えられます。

ゲームプレイの様子

動画からわかるように、アイコンを直接クリックするのではなく、十字キーを使って丁寧にアイコンを探していきます。実際の動作では、十字キーによる移動、アイコンの確認、スコアの変化など、一連の処理が順序立てて行われているのが確認できます。なお、動画は再生速度を調整することで、全体の流れをより速く把握することもできます。

Screenshot showing Japanese-language instructions for an Amazon Bedrock game featuring an auto-play scenario in Unity WebGL. The instructions guide the player to use cursor keys to find the 'Amazon FSx' icon among a grid, with tool usage details and a visual of the Unity WebGL interface displayed.
Screenshot of a Japanese instruction step for a Unity WebGL-based game, showing the Amazon FSx icon found and the user clicking the 'Found!' button. The instructions and game interface are in Japanese, and the display is within a desktop browser environment.
Screenshot of a game interface featuring AWS Cloud9, displayed in a Japanese language instructional setting. The image shows step-by-step Japanese instructions, interactive icons, navigation controls, and the AWS Cloud9 icon highlighted in a web browser window.

ゲーム結果の傾向

ゲームの結果を分析すると、興味深い傾向が見られました。最初の問題「Amazon FSx」と 2 問目の「AWS Cloud9」については、Claude は効率的に対応し、それぞれ約 1 分という比較的短時間でアイコンを特定することができました。これらのアイコンには特徴的な文字が含まれていたことが、素早い識別を可能にした要因と考えられます。

しかしながら、3 問目の「Amazon Aurora」については状況が大きく異なりました。2 分 30 秒という長い時間をかけ、画面上の様々なアイコンを慎重に確認し、複数回の試行錯誤を繰り返しましたが、最終的にアイコンを見つけることができませんでした。

これらの観察結果は、AI の視覚認識システムにおける学習データの多様性と量の重要性を浮き彫りにしています。特定の分野や文脈に特化したアイコンやシンボルの認識精度を向上させるには、それらに関する十分な学習データの蓄積が必要かもしれません。

現状と展望

現時点で生成AIをゲーム QA に活用する場合、その効果的な活用には明確な「向いているケース」と「向いていないケース」があることが、今回の検証で明らかになりました。

向いているケース :

  • ゲームの基本的な UI 要素の認識検証
  • 文字情報を含むアイコンの識別テスト
  • 画面上のナビゲーション確認
  • チュートリアルの自動化テスト
  • UI/UX の基本的な検証
  • アクセシビリティ評価

向いていないケース :

  • リアルタイムでの複雑な状況判断が必要なシーン
  • 即時的な対応が求められるゲームプレイテスト
  • 高速な判断を要する場面での信頼性テスト

まとめ

生成 AI による自動プレイの実験から、興味深い発見と課題が見えてきました。現時点では、ゲームの基本的な UI 要素の認識や文字情報を含むアイコンの識別、画面上のナビゲーションなどで予想以上の成果を上げていますが、状況判断のスピードが遅い場面が多く、複雑な判断や即時対応が必要な状況での信頼性にはまだ課題が残ります。

一方で、ゲームのチュートリアル自動化や UI/UX テスト、アクセシビリティ評価といった分野などリアルタイム性が求められないテストでの実用化の可能性は十分に感じられます。

適切な学習データの提供と継続的な改善により、これらの課題は徐々に解決できると考えられますが、現段階では完全な自動化というよりも、開発者やテスターの作業を支援する補助的なツールとしての活用が現実的な方向性だと思います。

筆者プロフィール

Anime-style illustration of a girl with big eyes, brown hair, and a pink shirt, set against a green background.

Sheng Hsia Leng

アマゾン ウェブ サービス ジャパン合同会社
ソリューションアーキテクト

ゲーム業界に特化したソリューションアーキテクトとしてお客様を支援しております。
2025 年は、ドライブやグランピング、キャンプにたくさん行けるようにしたいです !

A man in a casual shirt smiling indoors with natural light coming through the window in the background.

中村 一樹

アマゾン ウェブサービスジャパン合同会社
ソリューションアーキテクト

約 14 年ゲーム業界で開発に携わっていた元ゲームエンジニア。
「ゲーム開発者は面白いゲームを開発することに時間を使うべき」と考えており、それ以外のことはマネージドサービスやAIなどに任せれば良いと思っている。
趣味はフィットネスジムで汗を流すこと。格闘技系ワークアウトが好き。
2024 年 12 月はずっと体調不良だったので 2025 年は一年中健康で過ごしたい。