브라우저 사용: AI 인텔리전트가 브라우저를 쉽게 운영할 수 있는 지능형 웹 자동화 도구 구축

최신 AI 리소스8개월 전 업데이트 AI 공유 서클
14.1K 00

일반 소개

Browser-Use는 언어 모델(LLM)이 웹사이트와 자연스럽게 상호 작용할 수 있도록 특별히 설계된 혁신적인 오픈 소스 웹 자동화 도구입니다. 이 도구는 GPT-4, Claude 등 다양한 주류 언어 모델을 지원하는 강력하고 유연한 프레임워크를 제공합니다. 이 도구의 가장 주목할 만한 기능은 시각적 인식 및 HTML 추출, 다중 탭 페이지 자동 관리, 지능형 요소 감지 등을 지원하는 브라우저 자동화와 AI 기능의 완벽한 통합입니다. Browser-Use는 단순한 웹 브라우징 작업뿐만 아니라 양식 자동 채우기, 신청서 제출, 정보 검색 등 복잡한 상호작용 시나리오도 처리할 수 있습니다. 이 도구는 AI 에이전트가 사람처럼 자연스럽게 브라우저를 사용할 수 있도록 설계되어 웹 자동화 개발 프로세스를 크게 간소화합니다. 이 도구는 웹 자동화, 데이터 수집 및 배치 작업을 수행해야 하는 개발자에게 특히 적합합니다.

Browser-Use:构建智能网页自动化工具,让AI智能体轻松操作浏览器

 

기능 목록

  • HTML 콘텐츠의 시각적 인식 및 지능형 추출 지원
  • 자동화된 멀티 탭 페이지 관리 시스템
  • 클릭한 요소의 XPath 경로를 추출하고 정확한 LLM 작업을 재현합니다.
  • 사용자 지정 작업 지원(예: 파일 저장, 데이터베이스 푸시, 알림 보내기, 수동 입력 받기)
  • 자체 수정 기능
  • LangChain에서 지원하는 모든 언어 모델과 호환 가능
  • 여러 AI 에이전트를 동시에 실행할 수 있도록 지원
  • 구성 가능한 브라우저 보안 기능
  • 쿠키 영구 저장 기능
  • 유연한 페이지 로드 대기 시간 설정

 

도움말 사용

1. 설치 구성

  1. 먼저 pip를 통해 브라우저 사용 패키지를 설치합니다:
pip install browser-use
  1. (선택 사항) 플레이라이트를 설치합니다:
playwright install
  1. 환경 변수를 구성합니다:
    설정.env파일을 열고 필요한 API 키를 추가합니다:
OPENAI_API_KEY=你的OpenAI API密钥
ANTHROPIC_API_KEY=你的Anthropic API密钥

2. 기본 사용법

2.1 간단한 AI 에이전트 만들기

from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio
async def main():
agent = Agent(
task="查找特定航班信息",
llm=ChatOpenAI(model="gpt-4"),
)
result = await agent.run()
print(result)
asyncio.run(main())

2.2 사용자 지정 작업 등록하기

데코레이터를 통해 사용자 지정 동작을 추가할 수 있습니다:

from browser_use.controller.service import Controller
controller = Controller()
@controller.action('询问用户信息')
def ask_human(question: str, display_question: bool) -> str:
return input(f'\n{question}\nInput: ')

2.3 Pydantic을 사용하여 파라메트릭 모델 정의하기

from pydantic import BaseModel
from typing import Optional
class JobDetails(BaseModel):
title: str
company: str
job_link: str
salary: Optional[str] = None
@controller.action('保存职位详情', param_model=JobDetails, requires_browser=True)
async def save_job(params: JobDetails, browser: Browser):
print(params)
page = browser.get_current_page()
page.go_to(params.job_link)

3. 고급 기능 사용

3.1 병렬화 에이전트

단일 브라우저 인스턴스를 사용하고 각 상담원의 컨텍스트를 병렬화하는 것이 좋습니다:

browser = Browser()
for i in range(10):
async with browser.new_context() as context:
agent = Agent(
task=f"任务 {i}",
llm=model,
browser_context=context
)
# 处理任务...

3.2 브라우저 구성

브라우저 동작은 BrowserConfig 및 BrowserContextConfig 클래스를 통해 구성할 수 있습니다:

browser_config = BrowserConfig(
headless=False,  # 是否使用无头模式
keep_open=True,  # 脚本结束后保持浏览器开启
disable_security=True,  # 禁用安全特性
cookies_file="cookies.json",  # Cookie存储文件
minimum_wait_page_load_time=1.0,  # 最小页面加载等待时间
wait_for_network_idle_page_load_time=2.0,  # 网络空闲等待时间
maximum_wait_page_load_time=10.0  # 最大页面加载等待时间
)

4. 성능 최적화 권장 사항

  1. 과도한 대기를 방지하기 위해 적절한 페이지 로드 대기 시간 사용
  2. 병렬화 기능의 합리적인 사용으로 처리 효율성 향상
  3. 적절한 경우 헤드리스 모드를 활성화하여 리소스 사용량을 줄입니다.
  4. 쿠키 지속성으로 중복 인증 줄이기
  5. 필요에 따라 안전 기능의 구성을 조정하세요.

5. 문제 해결

  1. 교차 도메인 요청에 문제가 발생하면 다음을 사용하도록 설정하는 것이 좋습니다.disable_security옵션(컴퓨터 소프트웨어 설정에서와 같이)
  2. 조정 가능한 대기 시간 매개 변수가 있는 페이지 로드 시간 초과
  3. API 키가 올바르게 구성되었는지 확인합니다.
  4. 네트워크 연결 상태 확인
  5. 브라우저 콘솔 로그에서 자세한 오류 메시지를 확인하세요.
© 저작권 정책

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...