見出し画像

【話題の技術!】PCをAIが自律操作!Anthropicのcomputer useを、Bedrockでお試し【CLI、各種コード、クラウド実装、デモ動画あり】

こんにちは、みなさん!Sakuraです。

今日は、話題のAnthropicの「computer use」について、詳しく解説してみたいと思います。MITライセンスのオープンソースとして配布されております。

Computer useは、Claude 3.5 SonnetというAIモデルに組み込まれた新機能で、人間がコンピューターを操作するように、AIが画面を見てカーソルを動かし、ボタンをクリックしたり、テキストを入力したりすることができる機能です。

この新しい能力は、APIを通じて利用可能で、ベータ版として公開されています。以下はデモ動画、詳細は後半にて解説。Macでの実装となります。


Computer useの利便性

Computer useは、繰り返し行う作業や、複雑なプロセスを自動化するのに役立ちます。たとえば、データ入力やレポート作成など、手間のかかる操作をAIが代わりに行うことで、人間が行うよりも効率的かつ迅速に作業が完了します。

すでにAsana、Canva、Replitなどの企業がこの機能を活用して、アプリのテストや評価を行っています。Replitでは、Claudeのコンピュータ操作機能を活用し、数十から数百のステップが必要なプロセスを実行しています。

Claude 3.5 Sonnetによる高度な自動化

Claude 3.5 Sonnetは、このコンピュータ操作機能を活用して、より多くのタスクを自動的に処理する能力を持っています。開発者は、コードを書くプロセスやUI操作をAIに任せることができ、

複雑なソフトウェアの開発やテストを効率的に行うことが可能です。この機能を活用することで、よりスムーズな開発サイクルを実現し、製品のリリースまでの時間を短縮できるでしょう。

現在、この機能はまだ試験的な段階ですが、早期導入してフィードバックを集めることで、将来的に大きな進化を遂げることが期待されています。

Anthropicは、AIが人間のように一般的なコンピュータスキルを身につけ、幅広いツールやソフトウェアに対応できるようにすることを目指しています。今後、Computer useがさらに進化すれば、ソフトウェア開発やビジネスプロセス全体を自動化するAIエージェントとしての役割がますます大きくなるでしょう。

環境のセットアップ

以下は、Macでの実装となります。

AWS CLIの設定

AWS CLIをインストールして、以下のコマンドで設定します。

aws configure

プロンプトに従って、AWSのアクセスキーやリージョン情報を入力してください。このステップが完了すれば、AWSのリソースにアクセスできるようになります。

bongin@BonginnoMacBook-Pro-2 ~ % aws configure
AWS Access Key ID [****************HXGC]: aws configure list
AWS Secret Access Key [****************0Ypb]: exit
Default region name [None]:  
Default output format [None]: 
bongin@BonginnoMacBook-Pro-2 ~ % git clone https://github.com/anthropics/anthropic-quickstarts
cd anthropic-quickstarts/computer-use-demo/
Cloning into 'anthropic-quickstarts'...
remote: Enumerating objects: 357, done.
remote: Counting objects: 100% (355/355), done.
remote: Compressing objects: 100% (196/196), done.
remote: Total 357 (delta 145), reused 317 (delta 132), pack-reused 2 (from 1)
Receiving objects: 100% (357/357), 3.07 MiB | 3.89 MiB/s, done.
Resolving deltas: 100% (145/145), done.
bongin@BonginnoMacBook-Pro-2 computer-use-demo %    aws configure list-profiles
default
bongin@BonginnoMacBook-Pro-2 computer-use-demo %    export AWS_PROFILE=myprofile
bongin@BonginnoMacBook-Pro-2 computer-use-demo %    echo $AWS_PROFILE
myprofile

このコードスニペットは、AWS(Amazon Web Services)のCLI(Command Line Interface)を使用して設定を行い、GitHubからリポジトリをクローンしてプロジェクトをセットアップするプロセスを示しています。

1. aws configure: このコマンドはAWS CLIの初期設定を行います。ここでは、AWSのアクセスキーやリージョン情報を入力し、CLIがAWSにアクセスできるようにします。
Access Key IDSecret Access Key は、ユーザーの認証情報です。
Default regionoutput format も設定できますが、ここでは省略されています。
2. git clone: GitHubリポジトリ anthropics/anthropic-quickstarts をローカル環境にクローンしています。これにより、Anthropicのプロジェクトがダウンロードされます。
3. aws configure list-profiles: このコマンドは設定済みのAWSプロファイルを一覧表示します。ここでは default プロファイルが確認できます。
4. export AWS_PROFILE=myprofile: 使用するAWSプロファイルを myprofile に設定し、続けて echo でその設定を確認しています。

この一連のコマンドは、AWSの設定を整え、プロジェクト環境をセットアップする手順です。

必要なツールのインストール

Computer useをフル活用するために必要なツールもインストールしましょう。PythonやDocker、boto3ライブラリがその中心です。

pip install boto3

boto3は、AWSのサービスをPythonで扱うためのライブラリです。これで、AWS上のリソースをPythonコードから操作できるようになります。

IAMポリシーの設定

次に、Computer useを使ってAIモデルを実行するためのIAMポリシーを設定します。IAMポリシーとは、AWSリソースに対するアクセス権を制御する仕組みです。

IAMコンソールで、新しく作成したユーザーに以下のポリシーを付与します。

   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "bedrock:InvokeModel",
         "Resource": "arn:aws:bedrock:us-west-2::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0"
       }
     ]
   }

このコードは、AWS(Amazon Web Services)のIAMポリシーを表しています。IAMポリシーは、AWSリソースへのアクセス制御を設定するために使用されるドキュメントです。

• "Version": "2012-10-17" は、ポリシードキュメントのバージョンを示します。
• "Statement" の部分がポリシーの具体的なルールを定義しています。
このポリシーでは、特定のアクションとリソースに対してアクセスを許可しています。
• "Effect": "Allow" は、指定されたアクションを許可することを意味します。
• "Action": "bedrock:InvokeModel" は、Amazon BedrockのAIモデル(Claude 3.5)を実行するアクションを指定しています。
• "Resource" は、アクセス対象の具体的なリソース(AIモデル)を示しています。arn:aws:bedrock:us-west-2::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0 がそのモデルの識別子です。

簡単に言うと、このポリシーは、Amazon Bedrockで特定のAIモデルを実行する権限を許可するものです。

Dockerコンテナの起動

AnthropicのリポジトリをGitHubからクローンして、Dockerコンテナを起動する方法も紹介します。Dockerは、コンテナ内でアプリケーションを実行するツールで、これにより、環境設定の手間を減らし、安定した動作が保証されます。

git clone https://github.com/anthropics/anthropic-quickstarts
cd anthropic-quickstarts/computer-use-demo/

以下のコマンドを使ってDockerコンテナを起動します。

docker run \
    -e API_PROVIDER=bedrock \
    -e AWS_PROFILE=myprofile \
    -e AWS_REGION=us-west-2 \
    -v $HOME/.aws/credentials:/home/computeruse/.aws/credentials \
    -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 にアクセスすることで、デモアプリケーションに接続できます。この手順を通じて、簡単にAnthropicのAIモデルを試すことができます。

【デモ】bonginkan.aiの事業分析をする

今回は、bonginkan.aiのウェブサイトにアクセスして、事業内容を分析し、その結果をExcelにまとめるデモをお見せします。

このデモでは、企業のサービス内容や提供しているソリューションの特徴を調査し、それをわかりやすく整理します。

最初にウェブサイトの各ページを見ながら、提供されているプロダクトやサービスの特徴を抽出。その後、Excelにまとめる過程を紹介します。

この手順はローカル環境で実行されていますが、クラウドの仮想PCにも同様に適用することが可能です。

クラウド上の仮想PCを使う選択肢

クラウド上の仮想PCを使用することで、computer useをクラウドから利用することも可能です。以下はサーバーレス環境でのBedrock活用方法の概要です。

AWS Lambda + Bedrock

AWS Lambdaはサーバーレスでコードを実行できるサービスで、BedrockのAPIを呼び出すことも可能です。これにより、AIモデルを動的に利用し、計算が完了するたびに結果を返すといった処理を行えます。

手順:

Lambda関数の作成: AWSマネジメントコンソールからLambda関数を作成します。
boto3を使ったBedrock呼び出し: Lambda関数内で boto3 ライブラリを使用してBedrockモデルを呼び出します。

まとめ

現在のベータ版の「computer use」は、まだ試験的でエラーが発生しやすいですが、この技術が成熟すれば、AIが人間と同じようにさまざまなツールを操作し、さらに高度なタスクをこなすことができるようになるでしょう。

感想としては、精度を出すにはプロセス設計とそれにそったプロンプトがしっかりといるかなと感じました。わたしも精度を出すには、使いこなすための研究がもっと必要です。

けれども、この革命的な進展は、AIとコンピュータの未来において、新しい可能性を切り開く鍵となります。

また、本ソースコードはMITのOSSであり、今後は企業のニーズにフィットするような内容に開発が進むと思います。

今回は、AnthropicモデルのセットアップとComputer useの活用法について解説しました。AI技術は、私たちの日常やビジネスにおいて、今後ますます重要な役割を果たすでしょう。

サーバーレスでAmazon Bedrockを使ったAIの実装は、スピーディーかつスケーラブルなソリューションを提供します。これからの時代、AIはあらゆる分野でますます進化していくでしょう。

皆さんもぜひ、この記事を参考にして、AIの可能性を最大限に活かしてくださいね。


この記事が気に入ったらサポートをしてみませんか?