name change name change name change name change name change name change 暂存 暂存 暂存 版本更新 版本更新 版本更新 和网关协议对齐 和网关协议对齐 和网关协议对齐 再升级下 再升 再完善下 升级 final resp 修复 修复 修复 再测试下 再测试下 包顺序 包顺序 包顺序 包顺序 修改为answer 更新下 更新版本 使用logger 使用logger 使用 滚滚滚 更新版本 screen opmot test use context 有问题 gogogo agent browser agent browser screen resume gogo gogo file upload to debug file upload base64 screen screen 修复 修复
31 lines
889 B
Python
31 lines
889 B
Python
from pydantic import BaseModel
|
|
from browser_agent.index import RunBrowserUseAgentCtx,LLMConfig
|
|
from typing import AsyncGenerator,Dict,Optional
|
|
from abc import ABC, abstractmethod
|
|
from datetime import datetime
|
|
from stream_helper.schema import SSEData
|
|
from langchain_core.language_models.chat_models import BaseChatModel
|
|
class BrowserAgentBase(BaseModel,ABC):
|
|
query: str
|
|
conversation_id: str = ''
|
|
llm: BaseChatModel
|
|
browser_session_endpoint: str
|
|
endpoint_header: Dict[str, str] = {}
|
|
max_steps: int = 20
|
|
system_prompt: str = None
|
|
extend_prompt: str = None
|
|
@abstractmethod
|
|
async def save_cookies(self):
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def get_llm(self)->BaseChatModel:
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def get_system_prompt(self)->str:
|
|
pass
|
|
|
|
async def run(self)->AsyncGenerator[SSEData,None]:
|
|
pass
|