以下では、Gemini API (google-generativeai, langchain-google-genai) と browser-use を組み合わせて活用するための手順や実行方法をご紹介します。仮想環境の作成からサンプルコードの実行例までを網羅した内容になっていますので、ぜひ参考にしてください。
はじめに
今回の目的は、Google Generative AI (Gemini) と LangChain の連携に加えて、ブラウザ自動操作エージェントである browser_use
を利用する方法を解説することです。
以下の内容は Python の仮想環境(venv もしくは virtualenv)を使用することを前提としています。仮想環境を使うことで、プロジェクトごとにパッケージ管理を分離でき、環境汚染を防ぐことができます。
my_project/
├── .env # APIキーなどの環境変数を設定
├── run_agent.py # 実行コード (例のスクリプトを配置)
├── requirements.txt # インストールが必要なライブラリ一覧(任意)
├── myenv/ # venv または virtualenv で作成した仮想環境のディレクトリ
│ ├── bin/ # (macOS/Linux)実行ファイルが入る
│ ├── Scripts/ # (Windows)実行ファイルが入る
│ ├── include/
│ ├── lib/
│ └── ...
└── ...
仮想環境の準備
venv の場合(Python 3.3以降)
Python が標準で備えている venv
モジュールを使う手順です。
python3 -m venv myenv
コマンド実行後、フォルダ構成として myenv
ディレクトリが作成されます。myenv
の部分は任意の名前に変更できます。
virtualenv の場合
あらかじめ virtualenv
のインストールが必要です。
pip install virtualenv
virtualenv myenv
こちらも myenv
は任意のディレクトリ名に置き換えて構いません。
仮想環境のアクティベート(有効化)
macOS / Linux の場合
source myenv/bin/activate
Windows の場合
myenv\Scripts\activate
アクティベートに成功すると、ターミナルやコマンドプロンプトの先頭に (myenv)
のような表示が追加されます。
必要なライブラリのインストール
仮想環境が有効になっている状態で、以下のコマンドを実行します。
pip install -U google-generativeai langchain-google-genai browser-use python-dotenv
playwright install
各ライブラリの役割
- google-generativeai: Google の Gemini API を利用するためのライブラリ。
- langchain-google-genai: LangChain フレームワークから Gemini API を呼び出すための拡張ライブラリ。
- browser-use: ブラウザ操作を自動化するエージェント機能を提供するライブラリ。
- python-dotenv:
.env
ファイルから環境変数を読み込むために利用。
Python コード例
以下のサンプルコードは、引数で受け取ったタスクを Google Generative AI (Gemini) に投げかけ、結果を出力すると同時に、browser-use
エージェントによるブラウザ操作が組み合わされたタスクを実行できます。
import argparse
import asyncio
from browser_use import Agent
from langchain_google_genai import ChatGoogleGenerativeAI
import os
from dotenv import load_dotenv # .env ファイルを読み込むため
# .env ファイルを読み込む
load_dotenv()
# 環境変数 GOOGLE_API_KEY が設定されているか確認
if not os.environ.get("GOOGLE_API_KEY"):
raise ValueError("環境変数 GOOGLE_API_KEY が設定されていません。")
def parse_args():
parser = argparse.ArgumentParser(description="Run AI agent with a custom task.")
parser.add_argument("--task", type=str, required=True, help="Task for the AI agent.")
return parser.parse_args()
async def main():
args = parse_args()
agent = Agent(
task=args.task,
llm=ChatGoogleGenerativeAI(
model="gemini-1.5-pro",
convert_system_message_to_human=True,
temperature=0, # 出力多様性(創造性)の調整
),
)
result = await agent.run()
print(result)
if __name__ == "__main__":
asyncio.run(main())
.envファイルについて
上記のコードでは、.env
ファイルに GOOGLE_API_KEY
を設定し、python-dotenv
を使って読み込む想定です。.env
ファイルはプロジェクト直下などに作成し、以下のように API キーを記述してください。
GOOGLE_API_KEY=YOUR_GOOGLE_API_KEY
※ YOUR_GOOGLE_API_KEY
はご自身のキーに置き換えてください。
実行方法
仮想環境をアクティブにした状態で、上記コードを run_agent.py
というファイル名で保存している場合、以下のように実行できます。
python run_agent.py --task "ChatGPTのモデルの情報を調べてください。"
実行例では、"ChatGPTのモデルの情報を調べてください。"
というタスクを渡しています。
結果として、バックエンドでは Gemini API を用いた応答が実行され、ターミナル上に結果が表示されます。
仮想環境から抜ける方法
作業が終了したら、次のコマンドで仮想環境から抜けられます。
deactivate
まとめ
これで、Gemini API と browser_use
の環境構築から実行までが完了します。LangChain をはじめとした関連ライブラリは自動的にインストールされるため、追加のインストールは不要です。ぜひこれをベースにさまざまなタスクを自動化・エージェント化してみてください。
OpenAIのAPIを使ったシンプルな実装方法はこちらのサイトを確認してください。
GitHubで詳細を確認することも可能です。