mirror of
https://github.com/langgenius/dify.git
synced 2024-11-16 11:42:29 +08:00
36 lines
912 B
Python
36 lines
912 B
Python
from typing import Any, Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from core.tools.entities.tool_entities import ToolParameter, ToolProviderType
|
|
|
|
|
|
class ApiBasedToolBundle(BaseModel):
|
|
"""
|
|
This class is used to store the schema information of an api based tool. such as the url, the method, the parameters, etc.
|
|
"""
|
|
# server_url
|
|
server_url: str
|
|
# method
|
|
method: str
|
|
# summary
|
|
summary: Optional[str] = None
|
|
# operation_id
|
|
operation_id: str = None
|
|
# parameters
|
|
parameters: Optional[list[ToolParameter]] = None
|
|
# author
|
|
author: str
|
|
# icon
|
|
icon: Optional[str] = None
|
|
# openapi operation
|
|
openapi: dict
|
|
|
|
class AppToolBundle(BaseModel):
|
|
"""
|
|
This class is used to store the schema information of an tool for an app.
|
|
"""
|
|
type: ToolProviderType
|
|
credential: Optional[dict[str, Any]] = None
|
|
provider_id: str
|
|
tool_name: str |