Boobs00's picture
Upload folder using huggingface_hub
db4810d verified
from typing import Optional
from pydantic import BaseModel, model_validator
# Action Input Models
class SearchGoogleAction(BaseModel):
query: str
class GoToUrlAction(BaseModel):
url: str
class ClickElementAction(BaseModel):
index: int
xpath: Optional[str] = None
class InputTextAction(BaseModel):
index: int
text: str
xpath: Optional[str] = None
class DoneAction(BaseModel):
text: str
success: bool
class SwitchTabAction(BaseModel):
page_id: int
class OpenTabAction(BaseModel):
url: str
class ScrollAction(BaseModel):
amount: Optional[int] = None # The number of pixels to scroll. If None, scroll down/up one page
class SendKeysAction(BaseModel):
keys: str
class ExtractPageContentAction(BaseModel):
value: str
class NoParamsAction(BaseModel):
"""
Accepts absolutely anything in the incoming data
and discards it, so the final parsed model is empty.
"""
@model_validator(mode='before')
def ignore_all_inputs(cls, values):
# No matter what the user sends, discard it and return empty.
return {}
class Config:
# If you want to silently allow unknown fields at top-level,
# set extra = 'allow' as well:
extra = 'allow'