feat: support define tags in tool yaml (#4763)

This commit is contained in:
Yeuoly
2024-05-29 15:19:14 +08:00
committed by GitHub
parent b189faca52
commit 74f38eacda
82 changed files with 187 additions and 255 deletions

View File

@@ -6,6 +6,24 @@ from pydantic import BaseModel, Field
from core.tools.entities.common_entities import I18nObject
class ToolLabelEnum(Enum):
SEARCH = 'search'
IMAGE = 'image'
VIDEOS = 'videos'
WEATHER = 'weather'
FINANCE = 'finance'
DESIGN = 'design'
TRAVEL = 'travel'
SOCIAL = 'social'
NEWS = 'news'
MEDICAL = 'medical'
PRODUCTIVITY = 'productivity'
EDUCATION = 'education'
BUSINESS = 'business'
ENTERTAINMENT = 'entertainment'
UTILITIES = 'utilities'
OTHER = 'other'
class ToolProviderType(Enum):
"""
Enum class for tool provider
@@ -157,6 +175,7 @@ class ToolProviderIdentity(BaseModel):
description: I18nObject = Field(..., description="The description of the tool")
icon: str = Field(..., description="The icon of the tool")
label: I18nObject = Field(..., description="The label of the tool")
tags: Optional[list[ToolLabelEnum]] = Field(default=[], description="The tags of the tool", )
class ToolDescription(BaseModel):
human: I18nObject = Field(..., description="The description presented to the user")