chore: apply ruff's pyupgrade linter rules to modernize Python code with targeted version (#2419)

This commit is contained in:
Bowen Liang
2024-02-09 15:21:33 +08:00
committed by GitHub
parent 589099a005
commit 063191889d
246 changed files with 912 additions and 937 deletions

View File

@@ -1,6 +1,6 @@
import json
from json import dumps
from typing import Any, Dict, List, Union
from typing import Any, Union
import httpx
import requests
@@ -18,7 +18,7 @@ class ApiTool(Tool):
"""
Api tool
"""
def fork_tool_runtime(self, meta: Dict[str, Any]) -> 'Tool':
def fork_tool_runtime(self, meta: dict[str, Any]) -> 'Tool':
"""
fork a new tool with meta data
@@ -33,7 +33,7 @@ class ApiTool(Tool):
runtime=Tool.Runtime(**meta)
)
def validate_credentials(self, credentials: Dict[str, Any], parameters: Dict[str, Any], format_only: bool = False) -> str:
def validate_credentials(self, credentials: dict[str, Any], parameters: dict[str, Any], format_only: bool = False) -> str:
"""
validate the credentials for Api tool
"""
@@ -47,7 +47,7 @@ class ApiTool(Tool):
# validate response
return self.validate_and_parse_response(response)
def assembling_request(self, parameters: Dict[str, Any]) -> Dict[str, Any]:
def assembling_request(self, parameters: dict[str, Any]) -> dict[str, Any]:
headers = {}
credentials = self.runtime.credentials or {}
@@ -108,7 +108,7 @@ class ApiTool(Tool):
else:
raise ValueError(f'Invalid response type {type(response)}')
def do_http_request(self, url: str, method: str, headers: Dict[str, Any], parameters: Dict[str, Any]) -> httpx.Response:
def do_http_request(self, url: str, method: str, headers: dict[str, Any], parameters: dict[str, Any]) -> httpx.Response:
"""
do http request depending on api bundle
"""
@@ -225,7 +225,7 @@ class ApiTool(Tool):
return response
def _invoke(self, user_id: str, tool_parameters: Dict[str, Any]) -> ToolInvokeMessage | List[ToolInvokeMessage]:
def _invoke(self, user_id: str, tool_parameters: dict[str, Any]) -> ToolInvokeMessage | list[ToolInvokeMessage]:
"""
invoke http request
"""

View File

@@ -1,4 +1,3 @@
from typing import List
from core.model_runtime.entities.llm_entities import LLMResult
from core.model_runtime.entities.message_entities import PromptMessage, SystemPromptMessage, UserPromptMessage
@@ -22,7 +21,7 @@ class BuiltinTool(Tool):
"""
def invoke_model(
self, user_id: str, prompt_messages: List[PromptMessage], stop: List[str]
self, user_id: str, prompt_messages: list[PromptMessage], stop: list[str]
) -> LLMResult:
"""
invoke model
@@ -52,7 +51,7 @@ class BuiltinTool(Tool):
tenant_id=self.runtime.tenant_id,
)
def get_prompt_tokens(self, prompt_messages: List[PromptMessage]) -> int:
def get_prompt_tokens(self, prompt_messages: list[PromptMessage]) -> int:
"""
get prompt tokens
@@ -104,7 +103,7 @@ class BuiltinTool(Tool):
new_lines.append(line)
# merge lines into messages with max tokens
messages: List[str] = []
messages: list[str] = []
for i in new_lines:
if len(messages) == 0:
messages.append(i)

View File

@@ -1,5 +1,5 @@
import threading
from typing import List, Optional, Type
from typing import Optional
from flask import Flask, current_app
from langchain.tools import BaseTool
@@ -35,20 +35,20 @@ class DatasetMultiRetrieverToolInput(BaseModel):
class DatasetMultiRetrieverTool(BaseTool):
"""Tool for querying multi dataset."""
name: str = "dataset-"
args_schema: Type[BaseModel] = DatasetMultiRetrieverToolInput
args_schema: type[BaseModel] = DatasetMultiRetrieverToolInput
description: str = "dataset multi retriever and rerank. "
tenant_id: str
dataset_ids: List[str]
dataset_ids: list[str]
top_k: int = 2
score_threshold: Optional[float] = None
reranking_provider_name: str
reranking_model_name: str
return_resource: bool
retriever_from: str
hit_callbacks: List[DatasetIndexToolCallbackHandler] = []
hit_callbacks: list[DatasetIndexToolCallbackHandler] = []
@classmethod
def from_dataset(cls, dataset_ids: List[str], tenant_id: str, **kwargs):
def from_dataset(cls, dataset_ids: list[str], tenant_id: str, **kwargs):
return cls(
name=f'dataset-{tenant_id}',
tenant_id=tenant_id,
@@ -155,8 +155,8 @@ class DatasetMultiRetrieverTool(BaseTool):
async def _arun(self, tool_input: str) -> str:
raise NotImplementedError()
def _retriever(self, flask_app: Flask, dataset_id: str, query: str, all_documents: List,
hit_callbacks: List[DatasetIndexToolCallbackHandler]):
def _retriever(self, flask_app: Flask, dataset_id: str, query: str, all_documents: list,
hit_callbacks: list[DatasetIndexToolCallbackHandler]):
with flask_app.app_context():
dataset = db.session.query(Dataset).filter(
Dataset.tenant_id == self.tenant_id,

View File

@@ -1,5 +1,5 @@
import threading
from typing import List, Optional, Type
from typing import Optional
from flask import current_app
from langchain.tools import BaseTool
@@ -35,14 +35,14 @@ class DatasetRetrieverToolInput(BaseModel):
class DatasetRetrieverTool(BaseTool):
"""Tool for querying a Dataset."""
name: str = "dataset"
args_schema: Type[BaseModel] = DatasetRetrieverToolInput
args_schema: type[BaseModel] = DatasetRetrieverToolInput
description: str = "use this to retrieve a dataset. "
tenant_id: str
dataset_id: str
top_k: int = 2
score_threshold: Optional[float] = None
hit_callbacks: List[DatasetIndexToolCallbackHandler] = []
hit_callbacks: list[DatasetIndexToolCallbackHandler] = []
return_resource: bool
retriever_from: str

View File

@@ -1,4 +1,4 @@
from typing import Any, Dict, List
from typing import Any
from langchain.tools import BaseTool
@@ -20,7 +20,7 @@ class DatasetRetrieverTool(Tool):
return_resource: bool,
invoke_from: InvokeFrom,
hit_callback: DatasetIndexToolCallbackHandler
) -> List['DatasetRetrieverTool']:
) -> list['DatasetRetrieverTool']:
"""
get dataset tool
"""
@@ -65,7 +65,7 @@ class DatasetRetrieverTool(Tool):
return tools
def get_runtime_parameters(self) -> List[ToolParameter]:
def get_runtime_parameters(self) -> list[ToolParameter]:
return [
ToolParameter(name='query',
label=I18nObject(en_US='', zh_Hans=''),
@@ -77,7 +77,7 @@ class DatasetRetrieverTool(Tool):
default=''),
]
def _invoke(self, user_id: str, tool_parameters: Dict[str, Any]) -> ToolInvokeMessage | List[ToolInvokeMessage]:
def _invoke(self, user_id: str, tool_parameters: dict[str, Any]) -> ToolInvokeMessage | list[ToolInvokeMessage]:
"""
invoke dataset retriever tool
"""
@@ -90,7 +90,7 @@ class DatasetRetrieverTool(Tool):
return self.create_text_message(text=result)
def validate_credentials(self, credentials: Dict[str, Any], parameters: Dict[str, Any]) -> None:
def validate_credentials(self, credentials: dict[str, Any], parameters: dict[str, Any]) -> None:
"""
validate the credentials for dataset retriever tool
"""

View File

@@ -1,6 +1,6 @@
from abc import ABC, abstractmethod
from enum import Enum
from typing import Any, Dict, List, Optional, Union
from typing import Any, Optional, Union
from pydantic import BaseModel
@@ -19,7 +19,7 @@ from core.tools.tool_file_manager import ToolFileManager
class Tool(BaseModel, ABC):
identity: ToolIdentity = None
parameters: Optional[List[ToolParameter]] = None
parameters: Optional[list[ToolParameter]] = None
description: ToolDescription = None
is_team_authorization: bool = False
agent_callback: Optional[DifyAgentCallbackHandler] = None
@@ -36,8 +36,8 @@ class Tool(BaseModel, ABC):
tenant_id: str = None
tool_id: str = None
credentials: Dict[str, Any] = None
runtime_parameters: Dict[str, Any] = None
credentials: dict[str, Any] = None
runtime_parameters: dict[str, Any] = None
runtime: Runtime = None
variables: ToolRuntimeVariablePool = None
@@ -53,7 +53,7 @@ class Tool(BaseModel, ABC):
class VARIABLE_KEY(Enum):
IMAGE = 'image'
def fork_tool_runtime(self, meta: Dict[str, Any], agent_callback: DifyAgentCallbackHandler = None) -> 'Tool':
def fork_tool_runtime(self, meta: dict[str, Any], agent_callback: DifyAgentCallbackHandler = None) -> 'Tool':
"""
fork a new tool with meta data
@@ -146,7 +146,7 @@ class Tool(BaseModel, ABC):
return file_binary[0]
def list_variables(self) -> List[ToolRuntimeVariable]:
def list_variables(self) -> list[ToolRuntimeVariable]:
"""
list all variables
@@ -157,7 +157,7 @@ class Tool(BaseModel, ABC):
return self.variables.pool
def list_default_image_variables(self) -> List[ToolRuntimeVariable]:
def list_default_image_variables(self) -> list[ToolRuntimeVariable]:
"""
list all image variables
@@ -174,7 +174,7 @@ class Tool(BaseModel, ABC):
return result
def invoke(self, user_id: str, tool_parameters: Dict[str, Any]) -> List[ToolInvokeMessage]:
def invoke(self, user_id: str, tool_parameters: dict[str, Any]) -> list[ToolInvokeMessage]:
# update tool_parameters
if self.runtime.runtime_parameters:
tool_parameters.update(self.runtime.runtime_parameters)
@@ -209,7 +209,7 @@ class Tool(BaseModel, ABC):
return result
def _convert_tool_response_to_str(self, tool_response: List[ToolInvokeMessage]) -> str:
def _convert_tool_response_to_str(self, tool_response: list[ToolInvokeMessage]) -> str:
"""
Handle tool response
"""
@@ -233,10 +233,10 @@ class Tool(BaseModel, ABC):
return result
@abstractmethod
def _invoke(self, user_id: str, tool_parameters: Dict[str, Any]) -> Union[ToolInvokeMessage, List[ToolInvokeMessage]]:
def _invoke(self, user_id: str, tool_parameters: dict[str, Any]) -> Union[ToolInvokeMessage, list[ToolInvokeMessage]]:
pass
def validate_credentials(self, credentials: Dict[str, Any], parameters: Dict[str, Any]) -> None:
def validate_credentials(self, credentials: dict[str, Any], parameters: dict[str, Any]) -> None:
"""
validate the credentials
@@ -245,7 +245,7 @@ class Tool(BaseModel, ABC):
"""
pass
def get_runtime_parameters(self) -> List[ToolParameter]:
def get_runtime_parameters(self) -> list[ToolParameter]:
"""
get the runtime parameters