| import yaml |
| import os |
| import sys |
| from urllib.parse import urljoin |
| from typing import Callable, Dict, Any |
| from utils.configs import TOOLS_SERVER_BASE_ENDPOINT_URL, USE_NLP_FORMAT_RETURN, WEB_BASED_TOOLS_USE_CACHE |
| from tool_kits.base import BaseToolkit |
|
|
|
|
| class FileWideParseToolkit(BaseToolkit): |
| NAME = "parse_file" |
| TOOLS_SERVER_BASE_ENDPOINT = TOOLS_SERVER_BASE_ENDPOINT_URL |
| ENTRY_POINT = "file_wide_parse" |
| DESCRIPTION = f"This is a tool that can be used to parse multiple user uploaded local files or online files such as PDF, DOCX, PPTX, TXT, CSV, XLSX, DOC, ZIP, MP4, MP3." |
| TIMEOUT = 600 |
| TOOL_PARAMS = { |
| "files": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| }, |
| "description": "The online file's URLs or the user uploaded local file paths to be parsed." |
| }, |
| } |
| TOOL_PARAMS_REQUIRED = ["files"] |
| USE_CACHE = WEB_BASED_TOOLS_USE_CACHE |
| USE_TONGYI_FORMAT = USE_NLP_FORMAT_RETURN |
|
|