chore(api/core): apply ruff reformatting (#7624)

This commit is contained in:
Bowen Liang
2024-09-10 17:00:20 +08:00
committed by GitHub
parent 178730266d
commit 2cf1187b32
724 changed files with 21180 additions and 21123 deletions

View File

@@ -7,25 +7,25 @@ from core.tools.provider.builtin_tool_provider import BuiltinToolProviderControl
class GithubProvider(BuiltinToolProviderController):
def _validate_credentials(self, credentials: dict) -> None:
try:
if 'access_tokens' not in credentials or not credentials.get('access_tokens'):
if "access_tokens" not in credentials or not credentials.get("access_tokens"):
raise ToolProviderCredentialValidationError("Github API Access Tokens is required.")
if 'api_version' not in credentials or not credentials.get('api_version'):
api_version = '2022-11-28'
if "api_version" not in credentials or not credentials.get("api_version"):
api_version = "2022-11-28"
else:
api_version = credentials.get('api_version')
api_version = credentials.get("api_version")
try:
headers = {
"Content-Type": "application/vnd.github+json",
"Authorization": f"Bearer {credentials.get('access_tokens')}",
"X-GitHub-Api-Version": api_version
"X-GitHub-Api-Version": api_version,
}
response = requests.get(
url="https://api.github.com/search/users?q={account}".format(account='charli117'),
headers=headers)
url="https://api.github.com/search/users?q={account}".format(account="charli117"), headers=headers
)
if response.status_code != 200:
raise ToolProviderCredentialValidationError((response.json()).get('message'))
raise ToolProviderCredentialValidationError((response.json()).get("message"))
except Exception as e:
raise ToolProviderCredentialValidationError("Github API Key and Api Version is invalid. {}".format(e))
except Exception as e:

View File

@@ -10,53 +10,61 @@ from core.tools.tool.builtin_tool import BuiltinTool
class GithubRepositoriesTool(BuiltinTool):
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]]:
"""
invoke tools
invoke tools
"""
top_n = tool_parameters.get('top_n', 5)
query = tool_parameters.get('query', '')
top_n = tool_parameters.get("top_n", 5)
query = tool_parameters.get("query", "")
if not query:
return self.create_text_message('Please input symbol')
return self.create_text_message("Please input symbol")
if 'access_tokens' not in self.runtime.credentials or not self.runtime.credentials.get('access_tokens'):
if "access_tokens" not in self.runtime.credentials or not self.runtime.credentials.get("access_tokens"):
return self.create_text_message("Github API Access Tokens is required.")
if 'api_version' not in self.runtime.credentials or not self.runtime.credentials.get('api_version'):
api_version = '2022-11-28'
if "api_version" not in self.runtime.credentials or not self.runtime.credentials.get("api_version"):
api_version = "2022-11-28"
else:
api_version = self.runtime.credentials.get('api_version')
api_version = self.runtime.credentials.get("api_version")
try:
headers = {
"Content-Type": "application/vnd.github+json",
"Authorization": f"Bearer {self.runtime.credentials.get('access_tokens')}",
"X-GitHub-Api-Version": api_version
"X-GitHub-Api-Version": api_version,
}
s = requests.session()
api_domain = 'https://api.github.com'
response = s.request(method='GET', headers=headers,
url=f"{api_domain}/search/repositories?"
f"q={quote(query)}&sort=stars&per_page={top_n}&order=desc")
api_domain = "https://api.github.com"
response = s.request(
method="GET",
headers=headers,
url=f"{api_domain}/search/repositories?" f"q={quote(query)}&sort=stars&per_page={top_n}&order=desc",
)
response_data = response.json()
if response.status_code == 200 and isinstance(response_data.get('items'), list):
if response.status_code == 200 and isinstance(response_data.get("items"), list):
contents = []
if len(response_data.get('items')) > 0:
for item in response_data.get('items'):
if len(response_data.get("items")) > 0:
for item in response_data.get("items"):
content = {}
updated_at_object = datetime.strptime(item['updated_at'], "%Y-%m-%dT%H:%M:%SZ")
content['owner'] = item['owner']['login']
content['name'] = item['name']
content['description'] = item['description'][:100] + '...' if len(item['description']) > 100 else item['description']
content['url'] = item['html_url']
content['star'] = item['watchers']
content['forks'] = item['forks']
content['updated'] = updated_at_object.strftime("%Y-%m-%d")
updated_at_object = datetime.strptime(item["updated_at"], "%Y-%m-%dT%H:%M:%SZ")
content["owner"] = item["owner"]["login"]
content["name"] = item["name"]
content["description"] = (
item["description"][:100] + "..." if len(item["description"]) > 100 else item["description"]
)
content["url"] = item["html_url"]
content["star"] = item["watchers"]
content["forks"] = item["forks"]
content["updated"] = updated_at_object.strftime("%Y-%m-%d")
contents.append(content)
s.close()
return self.create_text_message(self.summary(user_id=user_id, content=json.dumps(contents, ensure_ascii=False)))
return self.create_text_message(
self.summary(user_id=user_id, content=json.dumps(contents, ensure_ascii=False))
)
else:
return self.create_text_message(f'No items related to {query} were found.')
return self.create_text_message(f"No items related to {query} were found.")
else:
return self.create_text_message((response.json()).get('message'))
return self.create_text_message((response.json()).get("message"))
except Exception as e:
return self.create_text_message("Github API Key and Api Version is invalid. {}".format(e))