browser-useを使ってみた!使い方など
数日前に見かけて、使ってみたいなぁとは思っていたのですが、時間が取れず。。
そしたら、昨日あたりから界隈で盛り上がっているみたいで
もっと早く触っておけば!と後悔していますw
とりあえずやってみましょう!
browser-useができることは
LangChain連携: langchain_openai など、LangChainでサポートされている様々なLLM(大規模言語モデル)を利用できます。
ブラウザ操作の自動化: LLMの指示に基づき、ウェブサイトの検索、フォーム入力、クリックなどの操作を自動で行います。
マルチタブ管理: 複数のタブを同時に操作できます。
XPath抽出と再利用: クリックした要素のXPathを記録し、同じ操作を再現できます。
カスタムアクション: ユーザーが独自のアクション(ファイルの保存、データベースへの書き込みなど)を定義できます。
自己修正機能: エラーが発生した場合、エージェントが自身で修正を試みます。
並列処理: 複数のエージェントを同時に実行できます。
ビジョン + HTML抽出: 画像認識とHTML構造の解析が可能です。
アクション履歴の取得: エージェントが行った操作の履歴を取得できます。
豊富な設定オプション: ブラウザの動作を細かく設定できます(ヘッドレスモード、Cookieの永続化など)。
だそうです!めっちゃ色々できる。。
とりあえず適当な作業ディレクトリで
python3 -m venv myenv
source venv/bin/activate
仮想環境を作ってアクティベートして
pip install --upgrade pip
pip install browser-use
pipをアップグレード後、インストール!
あとは、.envで環境変数として
OPENAI_API_KEY=YOUR_OPENAI_API_KEY
ANTHROPIC_API_KEY=YOUR_ANTHROPIC_API_KEY
APIキーをセットして
from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio
import os
from dotenv import load_dotenv
load_dotenv()
async def main():
agent = Agent(
task="東京の明日の天気を調べてきて!",
llm=ChatOpenAI(model="gpt-4o-mini", api_key=os.getenv("OPENAI_API_KEY")),
)
result = await agent.run()
print(result)
asyncio.run(main())
とりあえずこんな感じにやると、実行して調べてきてくれます。
実際動かしてみたところ、ちゃんとブラウザを立ち上げて、検索して
なんか色々。。みてました!
これは確かにすごい!
しかし、APIの使用量を見てみたらちょっと調べてきてもらっただけで
11万トークンぐらい使われていました。。
念の為gpt-4o-miniにしておいてよかった。。w
ただ、gpt-4o-miniでも、これだけ使ってしまうと2円ぐらい?になっちゃうんですかね。。
一回遊んでみたら2円かかるのは、なかなかコストがw
なので、ちょっとこれは実用化するにはちょっと。。と思いました。
ワンショットでゴリゴリ成果出せる人ならいいかもですが、
「よし、ちょっと試してみよ!おお、検索した!すげぇ!」
って遊ぶぐらいな感じだと、中々エグいですw
多分、visonを使って画像認識もしてる分トークンの使用量が多いのかな?と思いました。
今browser useで遊んでる人達は
ガンガンAPIに突っ込んでいけるブルジョワな方々が多いと思うので
この辺のコストに関して言及してる人はあまり居ない感じですが、
コスト、気をつけて!!という話でまとまりました!
ただ、使い方自体は本当に簡単で、すぐ動かせるので
これだけ簡単に実装ができるっていうのはめちゃめちゃ可能性あるなと思いました。