近年、AI技術の進化に伴い、Webサイトのアクセシビリティ向上への関心が高まっています。本記事では、AIエージェントがWebをより効率的に活用できるよう支援するオープンソースツール『Browser Use』について詳しくご紹介します。
Browser Useとは
- サービスURL
- GitHub URL
サイトのTOPには下記のように記載されています。
Make Websites Accessible for Agents We make websites accessible for AI agents by extracting all interactive elements, so agents can focus on what makes their beer taste better.
インタラクティブな要素を抽出することで、AIエージェントがWebサイトを利用できるようにするオープンソース管理されているサービスとなります。
特徴としては、HTMLの構造からのアプローチだけでなく、視覚的なアプローチを取ることや繰り返しの実行などを行う点にあります。
実行するにあたっては、ChatGPTかClaudeのAPIキーが必要となります。
デモについてはGitHubプロジェクトに動画が貼られているのでそちらをご覧ください。
利用するためのセットアップ
Python3の利用環境が構築されていることやChatGPTなどのAPIキーが取得済みであることが前提ですが、browser-useをインストールすると利用可能です。
pip install browser-use
併せてplaywrightのインストールもオプションとして記載されているのでこちらもインストールしておきます。
playwright install
.env
にChatGPTのAPIキーを設定しているので、下記のようなコードとしています。
from langchain_openai import ChatOpenAI
from browser_use import Agent
from dotenv import load_dotenv
import asyncio
async def main():
agent = Agent(
task="ここに実行するタスクを入力します",
llm=ChatOpenAI(model="gpt-4o-mini"),
)
result = await agent.run()
print(result)
load_dotenv()
asyncio.run(main())
試したこと
ページまとめ作業
とある比較サイトのページのURLを与え、「マークダウン形式でサービス比較氷を作成してください」という依頼をした場合、下記のような出力が出ました。
(氷は表のタイポだったのですが、よしなに判断して実行してくれました…)
サービス比較表
サービス名 | 特徴 | URL |
---|---|---|
カラーミーショップ | 初期費用・月額費用0円、電話サポートあり、デザインのカスタマイズ性が高い。 | カラーミーショップ |
STORES(ストアーズ) | 直感的操作、物販可能店数無制限、予約販売設定や電子チケット発行で販売促進。 | STORES |
Square オンラインビジネス | 初期費用なし、簡単にECサイト開始、SNSと連携。 | Square |
MakeShop | 豊富な機能、SNS連携、初心者向けサポートが充実。 | MakeShop |
BASE | シンプルで見やすいデザイン、決済方法が豊富。 | BASE |
Shopify | ショップの成長に必要なEC機能、POS機能が揃っている。 | Shopify |
データ入力を挟む検索
こちらは実行例として紹介されているタスクで、
Go to amazon.com, search for laptop, sort by best rating, and give me the price of the first result
を試してみました。
これは入力欄に"laptop"と入れて検索し、良い感じに探してくれます。
もう少し細かいインプットを行う作業
もう少し難しい例として、
https://ecomm.one-line.com/one-ecom/schedule/eco-calculator で横浜からサンフランシスコまでのCO2排出量を調べたいです。総重量は50トンです。ドライコンテナを利用しています。
というタスクを試してみました。
入力先のページがどこからどこまでと重さを入力すると、CO2排出量を調べることができるのでその入力内容を指示している形になります。
Originという入力欄にYokohamaという情報を入れるところまでは合っているのですが、入力した内容に併せて表示されている選択肢を良い感じに選択することができない場合があります。
HTMLの構造としては認識できているので、いずれ解消されそうではありますが2024年12月時点ではうまくいかないケースのほうが多かったです。
再実行した場合には入力する内容は網羅できているものの、どこに入力するのかがわからなくなりエラーとなっていました。
繰り返し実行してくれるのは良い点ではあるのですが、実行するトークン数がどんどん増えていくので確実に実行可能なタスクとなるまでプロンプトを磨き込まないと業務で実行するにはコスト面でのリスクが大きそうです。
最後に
フォームへの入力という点については現時点ではまだ課題があり、RPAの代用としてすぐに現場のオペレーションに組み込むのは難しそうです。
一方で特定のページのスクレイピングでは良い感じに動くので、コストとの兼ね合いではありますが調査系では作業が楽になるようなケースもありそうです。
ただ、フォーム入力等の課題についても解決不可能という印象はなく、今後の改善ではこういった点も改善される可能性があります。RPAと併せてプロンプトベースでのブラウザ操作が候補に入ってくるのもそう遠くない未来なのではないかと感じました。