### What problem does this PR solve? Added static check at PR CI ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue) - [x] Refactoringtags/v0.15.0
| @@ -49,6 +49,12 @@ jobs: | |||
| fetch-depth: 0 | |||
| fetch-tags: true | |||
| # https://github.com/astral-sh/ruff-action | |||
| - name: Static check with Ruff | |||
| uses: astral-sh/ruff-action@v2 | |||
| with: | |||
| version: ">=0.8.2" | |||
| - name: Build ragflow:dev-slim | |||
| run: | | |||
| RUNNER_WORKSPACE_PREFIX=${RUNNER_WORKSPACE_PREFIX:-$HOME} | |||
| @@ -45,7 +45,7 @@ from agent.canvas import Canvas | |||
| from functools import partial | |||
| @manager.route('/new_token', methods=['POST']) | |||
| @manager.route('/new_token', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def new_token(): | |||
| req = request.json | |||
| @@ -75,7 +75,7 @@ def new_token(): | |||
| return server_error_response(e) | |||
| @manager.route('/token_list', methods=['GET']) | |||
| @manager.route('/token_list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def token_list(): | |||
| try: | |||
| @@ -90,7 +90,7 @@ def token_list(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @validate_request("tokens", "tenant_id") | |||
| @login_required | |||
| def rm(): | |||
| @@ -104,7 +104,7 @@ def rm(): | |||
| return server_error_response(e) | |||
| @manager.route('/stats', methods=['GET']) | |||
| @manager.route('/stats', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def stats(): | |||
| try: | |||
| @@ -135,7 +135,7 @@ def stats(): | |||
| return server_error_response(e) | |||
| @manager.route('/new_conversation', methods=['GET']) | |||
| @manager.route('/new_conversation', methods=['GET']) # noqa: F821 | |||
| def set_conversation(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| objs = APIToken.query(token=token) | |||
| @@ -175,7 +175,7 @@ def set_conversation(): | |||
| return server_error_response(e) | |||
| @manager.route('/completion', methods=['POST']) | |||
| @manager.route('/completion', methods=['POST']) # noqa: F821 | |||
| @validate_request("conversation_id", "messages") | |||
| def completion(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -341,7 +341,7 @@ def completion(): | |||
| return server_error_response(e) | |||
| @manager.route('/conversation/<conversation_id>', methods=['GET']) | |||
| @manager.route('/conversation/<conversation_id>', methods=['GET']) # noqa: F821 | |||
| # @login_required | |||
| def get(conversation_id): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -372,7 +372,7 @@ def get(conversation_id): | |||
| return server_error_response(e) | |||
| @manager.route('/document/upload', methods=['POST']) | |||
| @manager.route('/document/upload', methods=['POST']) # noqa: F821 | |||
| @validate_request("kb_name") | |||
| def upload(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -484,7 +484,7 @@ def upload(): | |||
| return get_json_result(data=doc_result.to_json()) | |||
| @manager.route('/document/upload_and_parse', methods=['POST']) | |||
| @manager.route('/document/upload_and_parse', methods=['POST']) # noqa: F821 | |||
| @validate_request("conversation_id") | |||
| def upload_parse(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -507,7 +507,7 @@ def upload_parse(): | |||
| return get_json_result(data=doc_ids) | |||
| @manager.route('/list_chunks', methods=['POST']) | |||
| @manager.route('/list_chunks', methods=['POST']) # noqa: F821 | |||
| # @login_required | |||
| def list_chunks(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -547,7 +547,7 @@ def list_chunks(): | |||
| return get_json_result(data=res) | |||
| @manager.route('/list_kb_docs', methods=['POST']) | |||
| @manager.route('/list_kb_docs', methods=['POST']) # noqa: F821 | |||
| # @login_required | |||
| def list_kb_docs(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -587,7 +587,7 @@ def list_kb_docs(): | |||
| return server_error_response(e) | |||
| @manager.route('/document/infos', methods=['POST']) | |||
| @manager.route('/document/infos', methods=['POST']) # noqa: F821 | |||
| @validate_request("doc_ids") | |||
| def docinfos(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -601,7 +601,7 @@ def docinfos(): | |||
| return get_json_result(data=list(docs.dicts())) | |||
| @manager.route('/document', methods=['DELETE']) | |||
| @manager.route('/document', methods=['DELETE']) # noqa: F821 | |||
| # @login_required | |||
| def document_rm(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -660,7 +660,7 @@ def document_rm(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/completion_aibotk', methods=['POST']) | |||
| @manager.route('/completion_aibotk', methods=['POST']) # noqa: F821 | |||
| @validate_request("Authorization", "conversation_id", "word") | |||
| def completion_faq(): | |||
| import base64 | |||
| @@ -802,7 +802,7 @@ def completion_faq(): | |||
| return server_error_response(e) | |||
| @manager.route('/retrieval', methods=['POST']) | |||
| @manager.route('/retrieval', methods=['POST']) # noqa: F821 | |||
| @validate_request("kb_id", "question") | |||
| def retrieval(): | |||
| token = request.headers.get('Authorization').split()[1] | |||
| @@ -25,13 +25,13 @@ from agent.canvas import Canvas | |||
| from peewee import MySQLDatabase, PostgresqlDatabase | |||
| @manager.route('/templates', methods=['GET']) | |||
| @manager.route('/templates', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def templates(): | |||
| return get_json_result(data=[c.to_dict() for c in CanvasTemplateService.get_all()]) | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def canvas_list(): | |||
| return get_json_result(data=sorted([c.to_dict() for c in \ | |||
| @@ -39,7 +39,7 @@ def canvas_list(): | |||
| ) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @validate_request("canvas_ids") | |||
| @login_required | |||
| def rm(): | |||
| @@ -52,7 +52,7 @@ def rm(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/set', methods=['POST']) | |||
| @manager.route('/set', methods=['POST']) # noqa: F821 | |||
| @validate_request("dsl", "title") | |||
| @login_required | |||
| def save(): | |||
| @@ -77,7 +77,7 @@ def save(): | |||
| return get_json_result(data=req) | |||
| @manager.route('/get/<canvas_id>', methods=['GET']) | |||
| @manager.route('/get/<canvas_id>', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get(canvas_id): | |||
| e, c = UserCanvasService.get_by_id(canvas_id) | |||
| @@ -86,7 +86,7 @@ def get(canvas_id): | |||
| return get_json_result(data=c.to_dict()) | |||
| @manager.route('/completion', methods=['POST']) | |||
| @manager.route('/completion', methods=['POST']) # noqa: F821 | |||
| @validate_request("id") | |||
| @login_required | |||
| def run(): | |||
| @@ -163,7 +163,7 @@ def run(): | |||
| return get_json_result(data={"answer": final_ans["content"], "reference": final_ans.get("reference", [])}) | |||
| @manager.route('/reset', methods=['POST']) | |||
| @manager.route('/reset', methods=['POST']) # noqa: F821 | |||
| @validate_request("id") | |||
| @login_required | |||
| def reset(): | |||
| @@ -186,7 +186,7 @@ def reset(): | |||
| return server_error_response(e) | |||
| @manager.route('/test_db_connect', methods=['POST']) | |||
| @manager.route('/test_db_connect', methods=['POST']) # noqa: F821 | |||
| @validate_request("db_type", "database", "username", "host", "port", "password") | |||
| @login_required | |||
| def test_db_connect(): | |||
| @@ -35,7 +35,7 @@ import hashlib | |||
| import re | |||
| @manager.route('/list', methods=['POST']) | |||
| @manager.route('/list', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id") | |||
| def list_chunk(): | |||
| @@ -84,7 +84,7 @@ def list_chunk(): | |||
| return server_error_response(e) | |||
| @manager.route('/get', methods=['GET']) | |||
| @manager.route('/get', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get(): | |||
| chunk_id = request.args["chunk_id"] | |||
| @@ -113,7 +113,7 @@ def get(): | |||
| return server_error_response(e) | |||
| @manager.route('/set', methods=['POST']) | |||
| @manager.route('/set', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id", "chunk_id", "content_with_weight", | |||
| "important_kwd", "question_kwd") | |||
| @@ -164,7 +164,7 @@ def set(): | |||
| return server_error_response(e) | |||
| @manager.route('/switch', methods=['POST']) | |||
| @manager.route('/switch', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("chunk_ids", "available_int", "doc_id") | |||
| def switch(): | |||
| @@ -184,7 +184,7 @@ def switch(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("chunk_ids", "doc_id") | |||
| def rm(): | |||
| @@ -203,7 +203,7 @@ def rm(): | |||
| return server_error_response(e) | |||
| @manager.route('/create', methods=['POST']) | |||
| @manager.route('/create', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id", "content_with_weight") | |||
| def create(): | |||
| @@ -255,7 +255,7 @@ def create(): | |||
| return server_error_response(e) | |||
| @manager.route('/retrieval_test', methods=['POST']) | |||
| @manager.route('/retrieval_test', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("kb_id", "question") | |||
| def retrieval_test(): | |||
| @@ -314,7 +314,7 @@ def retrieval_test(): | |||
| return server_error_response(e) | |||
| @manager.route('/knowledge_graph', methods=['GET']) | |||
| @manager.route('/knowledge_graph', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def knowledge_graph(): | |||
| doc_id = request.args["doc_id"] | |||
| @@ -31,7 +31,7 @@ from api.utils.api_utils import server_error_response, get_data_error_result, va | |||
| from graphrag.mind_map_extractor import MindMapExtractor | |||
| @manager.route('/set', methods=['POST']) | |||
| @manager.route('/set', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def set_conversation(): | |||
| req = request.json | |||
| @@ -72,7 +72,7 @@ def set_conversation(): | |||
| return server_error_response(e) | |||
| @manager.route('/get', methods=['GET']) | |||
| @manager.route('/get', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get(): | |||
| conv_id = request.args["conversation_id"] | |||
| @@ -94,7 +94,7 @@ def get(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def rm(): | |||
| conv_ids = request.json["conversation_ids"] | |||
| @@ -117,7 +117,7 @@ def rm(): | |||
| return server_error_response(e) | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def list_convsersation(): | |||
| dialog_id = request.args["dialog_id"] | |||
| @@ -136,7 +136,7 @@ def list_convsersation(): | |||
| return server_error_response(e) | |||
| @manager.route('/completion', methods=['POST']) | |||
| @manager.route('/completion', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("conversation_id", "messages") | |||
| def completion(): | |||
| @@ -209,7 +209,7 @@ def completion(): | |||
| return server_error_response(e) | |||
| @manager.route('/tts', methods=['POST']) | |||
| @manager.route('/tts', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def tts(): | |||
| req = request.json | |||
| @@ -243,7 +243,7 @@ def tts(): | |||
| return resp | |||
| @manager.route('/delete_msg', methods=['POST']) | |||
| @manager.route('/delete_msg', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("conversation_id", "message_id") | |||
| def delete_msg(): | |||
| @@ -266,7 +266,7 @@ def delete_msg(): | |||
| return get_json_result(data=conv) | |||
| @manager.route('/thumbup', methods=['POST']) | |||
| @manager.route('/thumbup', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("conversation_id", "message_id") | |||
| def thumbup(): | |||
| @@ -293,7 +293,7 @@ def thumbup(): | |||
| return get_json_result(data=conv) | |||
| @manager.route('/ask', methods=['POST']) | |||
| @manager.route('/ask', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("question", "kb_ids") | |||
| def ask_about(): | |||
| @@ -319,7 +319,7 @@ def ask_about(): | |||
| return resp | |||
| @manager.route('/mindmap', methods=['POST']) | |||
| @manager.route('/mindmap', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("question", "kb_ids") | |||
| def mindmap(): | |||
| @@ -341,7 +341,7 @@ def mindmap(): | |||
| return get_json_result(data=mind_map) | |||
| @manager.route('/related_questions', methods=['POST']) | |||
| @manager.route('/related_questions', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("question") | |||
| def related_questions(): | |||
| @@ -26,7 +26,7 @@ from api.utils import get_uuid | |||
| from api.utils.api_utils import get_json_result | |||
| @manager.route('/set', methods=['POST']) | |||
| @manager.route('/set', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def set_dialog(): | |||
| req = request.json | |||
| @@ -125,7 +125,7 @@ def set_dialog(): | |||
| return server_error_response(e) | |||
| @manager.route('/get', methods=['GET']) | |||
| @manager.route('/get', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get(): | |||
| dialog_id = request.args["dialog_id"] | |||
| @@ -151,7 +151,7 @@ def get_kb_names(kb_ids): | |||
| return ids, nms | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def list_dialogs(): | |||
| try: | |||
| @@ -168,7 +168,7 @@ def list_dialogs(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("dialog_ids") | |||
| def rm(): | |||
| @@ -42,7 +42,7 @@ from api.utils.web_utils import html2pdf, is_valid_url | |||
| from api.constants import IMG_BASE64_PREFIX | |||
| @manager.route('/upload', methods=['POST']) | |||
| @manager.route('/upload', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("kb_id") | |||
| def upload(): | |||
| @@ -71,7 +71,7 @@ def upload(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/web_crawl', methods=['POST']) | |||
| @manager.route('/web_crawl', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("kb_id", "name", "url") | |||
| def web_crawl(): | |||
| @@ -138,7 +138,7 @@ def web_crawl(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/create', methods=['POST']) | |||
| @manager.route('/create', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("name", "kb_id") | |||
| def create(): | |||
| @@ -174,7 +174,7 @@ def create(): | |||
| return server_error_response(e) | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def list_docs(): | |||
| kb_id = request.args.get("kb_id") | |||
| @@ -209,7 +209,7 @@ def list_docs(): | |||
| return server_error_response(e) | |||
| @manager.route('/infos', methods=['POST']) | |||
| @manager.route('/infos', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def docinfos(): | |||
| req = request.json | |||
| @@ -225,7 +225,7 @@ def docinfos(): | |||
| return get_json_result(data=list(docs.dicts())) | |||
| @manager.route('/thumbnails', methods=['GET']) | |||
| @manager.route('/thumbnails', methods=['GET']) # noqa: F821 | |||
| # @login_required | |||
| def thumbnails(): | |||
| doc_ids = request.args.get("doc_ids").split(",") | |||
| @@ -245,7 +245,7 @@ def thumbnails(): | |||
| return server_error_response(e) | |||
| @manager.route('/change_status', methods=['POST']) | |||
| @manager.route('/change_status', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id", "status") | |||
| def change_status(): | |||
| @@ -284,7 +284,7 @@ def change_status(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id") | |||
| def rm(): | |||
| @@ -334,7 +334,7 @@ def rm(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/run', methods=['POST']) | |||
| @manager.route('/run', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_ids", "run") | |||
| def run(): | |||
| @@ -377,7 +377,7 @@ def run(): | |||
| return server_error_response(e) | |||
| @manager.route('/rename', methods=['POST']) | |||
| @manager.route('/rename', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id", "name") | |||
| def rename(): | |||
| @@ -418,7 +418,7 @@ def rename(): | |||
| return server_error_response(e) | |||
| @manager.route('/get/<doc_id>', methods=['GET']) | |||
| @manager.route('/get/<doc_id>', methods=['GET']) # noqa: F821 | |||
| # @login_required | |||
| def get(doc_id): | |||
| try: | |||
| @@ -443,7 +443,7 @@ def get(doc_id): | |||
| return server_error_response(e) | |||
| @manager.route('/change_parser', methods=['POST']) | |||
| @manager.route('/change_parser', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("doc_id", "parser_id") | |||
| def change_parser(): | |||
| @@ -494,7 +494,7 @@ def change_parser(): | |||
| return server_error_response(e) | |||
| @manager.route('/image/<image_id>', methods=['GET']) | |||
| @manager.route('/image/<image_id>', methods=['GET']) # noqa: F821 | |||
| # @login_required | |||
| def get_image(image_id): | |||
| try: | |||
| @@ -506,7 +506,7 @@ def get_image(image_id): | |||
| return server_error_response(e) | |||
| @manager.route('/upload_and_parse', methods=['POST']) | |||
| @manager.route('/upload_and_parse', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("conversation_id") | |||
| def upload_and_parse(): | |||
| @@ -525,7 +525,7 @@ def upload_and_parse(): | |||
| return get_json_result(data=doc_ids) | |||
| @manager.route('/parse', methods=['POST']) | |||
| @manager.route('/parse', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| def parse(): | |||
| url = request.json.get("url") if request.json else "" | |||
| @@ -28,7 +28,7 @@ from api import settings | |||
| from api.utils.api_utils import get_json_result | |||
| @manager.route('/convert', methods=['POST']) | |||
| @manager.route('/convert', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("file_ids", "kb_ids") | |||
| def convert(): | |||
| @@ -92,7 +92,7 @@ def convert(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("file_ids") | |||
| def rm(): | |||
| @@ -34,7 +34,7 @@ from api.utils.file_utils import filename_type | |||
| from rag.utils.storage_factory import STORAGE_IMPL | |||
| @manager.route('/upload', methods=['POST']) | |||
| @manager.route('/upload', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| # @validate_request("parent_id") | |||
| def upload(): | |||
| @@ -120,7 +120,7 @@ def upload(): | |||
| return server_error_response(e) | |||
| @manager.route('/create', methods=['POST']) | |||
| @manager.route('/create', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("name") | |||
| def create(): | |||
| @@ -160,7 +160,7 @@ def create(): | |||
| return server_error_response(e) | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def list_files(): | |||
| pf_id = request.args.get("parent_id") | |||
| @@ -192,7 +192,7 @@ def list_files(): | |||
| return server_error_response(e) | |||
| @manager.route('/root_folder', methods=['GET']) | |||
| @manager.route('/root_folder', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get_root_folder(): | |||
| try: | |||
| @@ -202,7 +202,7 @@ def get_root_folder(): | |||
| return server_error_response(e) | |||
| @manager.route('/parent_folder', methods=['GET']) | |||
| @manager.route('/parent_folder', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get_parent_folder(): | |||
| file_id = request.args.get("file_id") | |||
| @@ -217,7 +217,7 @@ def get_parent_folder(): | |||
| return server_error_response(e) | |||
| @manager.route('/all_parent_folder', methods=['GET']) | |||
| @manager.route('/all_parent_folder', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get_all_parent_folders(): | |||
| file_id = request.args.get("file_id") | |||
| @@ -235,7 +235,7 @@ def get_all_parent_folders(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['POST']) | |||
| @manager.route('/rm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("file_ids") | |||
| def rm(): | |||
| @@ -284,7 +284,7 @@ def rm(): | |||
| return server_error_response(e) | |||
| @manager.route('/rename', methods=['POST']) | |||
| @manager.route('/rename', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("file_id", "name") | |||
| def rename(): | |||
| @@ -322,7 +322,7 @@ def rename(): | |||
| return server_error_response(e) | |||
| @manager.route('/get/<file_id>', methods=['GET']) | |||
| @manager.route('/get/<file_id>', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def get(file_id): | |||
| try: | |||
| @@ -350,7 +350,7 @@ def get(file_id): | |||
| return server_error_response(e) | |||
| @manager.route('/mv', methods=['POST']) | |||
| @manager.route('/mv', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("src_file_ids", "dest_file_id") | |||
| def move(): | |||
| @@ -32,7 +32,7 @@ from rag.nlp import search | |||
| from api.constants import DATASET_NAME_LIMIT | |||
| @manager.route('/create', methods=['post']) | |||
| @manager.route('/create', methods=['post']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("name") | |||
| def create(): | |||
| @@ -67,7 +67,7 @@ def create(): | |||
| return server_error_response(e) | |||
| @manager.route('/update', methods=['post']) | |||
| @manager.route('/update', methods=['post']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("kb_id", "name", "description", "permission", "parser_id") | |||
| @not_allowed_parameters("id", "tenant_id", "created_by", "create_time", "update_time", "create_date", "update_date", "created_by") | |||
| @@ -120,7 +120,7 @@ def update(): | |||
| return server_error_response(e) | |||
| @manager.route('/detail', methods=['GET']) | |||
| @manager.route('/detail', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def detail(): | |||
| kb_id = request.args["kb_id"] | |||
| @@ -143,7 +143,7 @@ def detail(): | |||
| return server_error_response(e) | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def list_kbs(): | |||
| keywords = request.args.get("keywords", "") | |||
| @@ -160,7 +160,7 @@ def list_kbs(): | |||
| return server_error_response(e) | |||
| @manager.route('/rm', methods=['post']) | |||
| @manager.route('/rm', methods=['post']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("kb_id") | |||
| def rm(): | |||
| @@ -28,7 +28,7 @@ from rag.llm import EmbeddingModel, ChatModel, RerankModel, CvModel, TTSModel | |||
| import requests | |||
| @manager.route('/factories', methods=['GET']) | |||
| @manager.route('/factories', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def factories(): | |||
| try: | |||
| @@ -50,7 +50,7 @@ def factories(): | |||
| return server_error_response(e) | |||
| @manager.route('/set_api_key', methods=['POST']) | |||
| @manager.route('/set_api_key', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("llm_factory", "api_key") | |||
| def set_api_key(): | |||
| @@ -129,7 +129,7 @@ def set_api_key(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/add_llm', methods=['POST']) | |||
| @manager.route('/add_llm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("llm_factory") | |||
| def add_llm(): | |||
| @@ -292,7 +292,7 @@ def add_llm(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/delete_llm', methods=['POST']) | |||
| @manager.route('/delete_llm', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("llm_factory", "llm_name") | |||
| def delete_llm(): | |||
| @@ -303,7 +303,7 @@ def delete_llm(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/delete_factory', methods=['POST']) | |||
| @manager.route('/delete_factory', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("llm_factory") | |||
| def delete_factory(): | |||
| @@ -313,7 +313,7 @@ def delete_factory(): | |||
| return get_json_result(data=True) | |||
| @manager.route('/my_llms', methods=['GET']) | |||
| @manager.route('/my_llms', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def my_llms(): | |||
| try: | |||
| @@ -334,7 +334,7 @@ def my_llms(): | |||
| return server_error_response(e) | |||
| @manager.route('/list', methods=['GET']) | |||
| @manager.route('/list', methods=['GET']) # noqa: F821 | |||
| @login_required | |||
| def list_app(): | |||
| self_deploied = ["Youdao", "FastEmbed", "BAAI", "Ollama", "Xinference", "LocalAI", "LM-Studio"] | |||
| @@ -19,7 +19,7 @@ from api.utils.api_utils import get_error_data_result, token_required | |||
| from api.utils.api_utils import get_result | |||
| from flask import request | |||
| @manager.route('/agents', methods=['GET']) | |||
| @manager.route('/agents', methods=['GET']) # noqa: F821 | |||
| @token_required | |||
| def list_agents(tenant_id): | |||
| id = request.args.get("id") | |||
| @@ -26,7 +26,7 @@ from api.utils.api_utils import get_result | |||
| @manager.route('/chats', methods=['POST']) | |||
| @manager.route('/chats', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def create(tenant_id): | |||
| req=request.json | |||
| @@ -150,7 +150,7 @@ def create(tenant_id): | |||
| res["avatar"] = res.pop("icon") | |||
| return get_result(data=res) | |||
| @manager.route('/chats/<chat_id>', methods=['PUT']) | |||
| @manager.route('/chats/<chat_id>', methods=['PUT']) # noqa: F821 | |||
| @token_required | |||
| def update(tenant_id,chat_id): | |||
| if not DialogService.query(tenant_id=tenant_id, id=chat_id, status=StatusEnum.VALID.value): | |||
| @@ -238,7 +238,7 @@ def update(tenant_id,chat_id): | |||
| return get_result() | |||
| @manager.route('/chats', methods=['DELETE']) | |||
| @manager.route('/chats', methods=['DELETE']) # noqa: F821 | |||
| @token_required | |||
| def delete(tenant_id): | |||
| req = request.json | |||
| @@ -260,7 +260,7 @@ def delete(tenant_id): | |||
| DialogService.update_by_id(id, temp_dict) | |||
| return get_result() | |||
| @manager.route('/chats', methods=['GET']) | |||
| @manager.route('/chats', methods=['GET']) # noqa: F821 | |||
| @token_required | |||
| def list_chat(tenant_id): | |||
| id = request.args.get("id") | |||
| @@ -34,7 +34,7 @@ from api.utils.api_utils import ( | |||
| ) | |||
| @manager.route("/datasets", methods=["POST"]) | |||
| @manager.route("/datasets", methods=["POST"]) # noqa: F821 | |||
| @token_required | |||
| def create(tenant_id): | |||
| """ | |||
| @@ -190,7 +190,7 @@ def create(tenant_id): | |||
| return get_result(data=renamed_data) | |||
| @manager.route("/datasets", methods=["DELETE"]) | |||
| @manager.route("/datasets", methods=["DELETE"]) # noqa: F821 | |||
| @token_required | |||
| def delete(tenant_id): | |||
| """ | |||
| @@ -260,7 +260,7 @@ def delete(tenant_id): | |||
| return get_result(code=settings.RetCode.SUCCESS) | |||
| @manager.route("/datasets/<dataset_id>", methods=["PUT"]) | |||
| @manager.route("/datasets/<dataset_id>", methods=["PUT"]) # noqa: F821 | |||
| @token_required | |||
| def update(tenant_id, dataset_id): | |||
| """ | |||
| @@ -429,7 +429,7 @@ def update(tenant_id, dataset_id): | |||
| return get_result(code=settings.RetCode.SUCCESS) | |||
| @manager.route("/datasets", methods=["GET"]) | |||
| @manager.route("/datasets", methods=["GET"]) # noqa: F821 | |||
| @token_required | |||
| def list(tenant_id): | |||
| """ | |||
| @@ -22,7 +22,7 @@ from api import settings | |||
| from api.utils.api_utils import validate_request, build_error_result, apikey_required | |||
| @manager.route('/dify/retrieval', methods=['POST']) | |||
| @manager.route('/dify/retrieval', methods=['POST']) # noqa: F821 | |||
| @apikey_required | |||
| @validate_request("knowledge_id", "query") | |||
| def retrieval(tenant_id): | |||
| @@ -45,7 +45,7 @@ from rag.utils.storage_factory import STORAGE_IMPL | |||
| MAXIMUM_OF_UPLOADING_FILES = 256 | |||
| @manager.route("/datasets/<dataset_id>/documents", methods=["POST"]) | |||
| @manager.route("/datasets/<dataset_id>/documents", methods=["POST"]) # noqa: F821 | |||
| @token_required | |||
| def upload(dataset_id, tenant_id): | |||
| """ | |||
| @@ -153,7 +153,7 @@ def upload(dataset_id, tenant_id): | |||
| return get_result(data=renamed_doc_list) | |||
| @manager.route("/datasets/<dataset_id>/documents/<document_id>", methods=["PUT"]) | |||
| @manager.route("/datasets/<dataset_id>/documents/<document_id>", methods=["PUT"]) # noqa: F821 | |||
| @token_required | |||
| def update_doc(tenant_id, dataset_id, document_id): | |||
| """ | |||
| @@ -296,7 +296,7 @@ def update_doc(tenant_id, dataset_id, document_id): | |||
| return get_result() | |||
| @manager.route("/datasets/<dataset_id>/documents/<document_id>", methods=["GET"]) | |||
| @manager.route("/datasets/<dataset_id>/documents/<document_id>", methods=["GET"]) # noqa: F821 | |||
| @token_required | |||
| def download(tenant_id, dataset_id, document_id): | |||
| """ | |||
| @@ -360,7 +360,7 @@ def download(tenant_id, dataset_id, document_id): | |||
| ) | |||
| @manager.route("/datasets/<dataset_id>/documents", methods=["GET"]) | |||
| @manager.route("/datasets/<dataset_id>/documents", methods=["GET"]) # noqa: F821 | |||
| @token_required | |||
| def list_docs(dataset_id, tenant_id): | |||
| """ | |||
| @@ -494,7 +494,7 @@ def list_docs(dataset_id, tenant_id): | |||
| return get_result(data={"total": tol, "docs": renamed_doc_list}) | |||
| @manager.route("/datasets/<dataset_id>/documents", methods=["DELETE"]) | |||
| @manager.route("/datasets/<dataset_id>/documents", methods=["DELETE"]) # noqa: F821 | |||
| @token_required | |||
| def delete(tenant_id, dataset_id): | |||
| """ | |||
| @@ -586,7 +586,7 @@ def delete(tenant_id, dataset_id): | |||
| return get_result() | |||
| @manager.route("/datasets/<dataset_id>/chunks", methods=["POST"]) | |||
| @manager.route("/datasets/<dataset_id>/chunks", methods=["POST"]) # noqa: F821 | |||
| @token_required | |||
| def parse(tenant_id, dataset_id): | |||
| """ | |||
| @@ -653,7 +653,7 @@ def parse(tenant_id, dataset_id): | |||
| return get_result() | |||
| @manager.route("/datasets/<dataset_id>/chunks", methods=["DELETE"]) | |||
| @manager.route("/datasets/<dataset_id>/chunks", methods=["DELETE"]) # noqa: F821 | |||
| @token_required | |||
| def stop_parsing(tenant_id, dataset_id): | |||
| """ | |||
| @@ -711,7 +711,7 @@ def stop_parsing(tenant_id, dataset_id): | |||
| return get_result() | |||
| @manager.route("/datasets/<dataset_id>/documents/<document_id>/chunks", methods=["GET"]) | |||
| @manager.route("/datasets/<dataset_id>/documents/<document_id>/chunks", methods=["GET"]) # noqa: F821 | |||
| @token_required | |||
| def list_chunks(tenant_id, dataset_id, document_id): | |||
| """ | |||
| @@ -895,7 +895,7 @@ def list_chunks(tenant_id, dataset_id, document_id): | |||
| return get_result(data=res) | |||
| @manager.route( | |||
| @manager.route( # noqa: F821 | |||
| "/datasets/<dataset_id>/documents/<document_id>/chunks", methods=["POST"] | |||
| ) | |||
| @token_required | |||
| @@ -1038,7 +1038,7 @@ def add_chunk(tenant_id, dataset_id, document_id): | |||
| # return get_result(data={"chunk_id": chunk_id}) | |||
| @manager.route( | |||
| @manager.route( # noqa: F821 | |||
| "datasets/<dataset_id>/documents/<document_id>/chunks", methods=["DELETE"] | |||
| ) | |||
| @token_required | |||
| @@ -1098,7 +1098,7 @@ def rm_chunk(tenant_id, dataset_id, document_id): | |||
| return get_result(message=f"deleted {chunk_number} chunks") | |||
| @manager.route( | |||
| @manager.route( # noqa: F821 | |||
| "/datasets/<dataset_id>/documents/<document_id>/chunks/<chunk_id>", methods=["PUT"] | |||
| ) | |||
| @token_required | |||
| @@ -1208,7 +1208,7 @@ def update_chunk(tenant_id, dataset_id, document_id, chunk_id): | |||
| return get_result() | |||
| @manager.route("/retrieval", methods=["POST"]) | |||
| @manager.route("/retrieval", methods=["POST"]) # noqa: F821 | |||
| @token_required | |||
| def retrieval_test(tenant_id): | |||
| """ | |||
| @@ -33,7 +33,7 @@ from api.utils.api_utils import get_result, token_required | |||
| from api.db.services.llm_service import LLMBundle | |||
| @manager.route('/chats/<chat_id>/sessions', methods=['POST']) | |||
| @manager.route('/chats/<chat_id>/sessions', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def create(tenant_id, chat_id): | |||
| req = request.json | |||
| @@ -60,7 +60,7 @@ def create(tenant_id, chat_id): | |||
| return get_result(data=conv) | |||
| @manager.route('/agents/<agent_id>/sessions', methods=['POST']) | |||
| @manager.route('/agents/<agent_id>/sessions', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def create_agent_session(tenant_id, agent_id): | |||
| e, cvs = UserCanvasService.get_by_id(agent_id) | |||
| @@ -86,7 +86,7 @@ def create_agent_session(tenant_id, agent_id): | |||
| return get_result(data=conv) | |||
| @manager.route('/chats/<chat_id>/sessions/<session_id>', methods=['PUT']) | |||
| @manager.route('/chats/<chat_id>/sessions/<session_id>', methods=['PUT']) # noqa: F821 | |||
| @token_required | |||
| def update(tenant_id, chat_id, session_id): | |||
| req = request.json | |||
| @@ -108,7 +108,7 @@ def update(tenant_id, chat_id, session_id): | |||
| return get_result() | |||
| @manager.route('/chats/<chat_id>/completions', methods=['POST']) | |||
| @manager.route('/chats/<chat_id>/completions', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def completion(tenant_id, chat_id): | |||
| dia = DialogService.query(id=chat_id, tenant_id=tenant_id, status=StatusEnum.VALID.value) | |||
| @@ -219,7 +219,7 @@ def completion(tenant_id, chat_id): | |||
| return get_result(data=answer) | |||
| @manager.route('/agents/<agent_id>/completions', methods=['POST']) | |||
| @manager.route('/agents/<agent_id>/completions', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def agent_completion(tenant_id, agent_id): | |||
| req = request.json | |||
| @@ -379,7 +379,7 @@ def agent_completion(tenant_id, agent_id): | |||
| return get_result(data=result) | |||
| @manager.route('/chats/<chat_id>/sessions', methods=['GET']) | |||
| @manager.route('/chats/<chat_id>/sessions', methods=['GET']) # noqa: F821 | |||
| @token_required | |||
| def list_session(tenant_id, chat_id): | |||
| if not DialogService.query(tenant_id=tenant_id, id=chat_id, status=StatusEnum.VALID.value): | |||
| @@ -433,7 +433,7 @@ def list_session(tenant_id, chat_id): | |||
| return get_result(data=convs) | |||
| @manager.route('/agents/<agent_id>/sessions', methods=['GET']) | |||
| @manager.route('/agents/<agent_id>/sessions', methods=['GET']) # noqa: F821 | |||
| @token_required | |||
| def list_agent_session(tenant_id, agent_id): | |||
| if not UserCanvasService.query(user_id=tenant_id, id=agent_id): | |||
| @@ -488,7 +488,7 @@ def list_agent_session(tenant_id, agent_id): | |||
| return get_result(data=convs) | |||
| @manager.route('/chats/<chat_id>/sessions', methods=["DELETE"]) | |||
| @manager.route('/chats/<chat_id>/sessions', methods=["DELETE"]) # noqa: F821 | |||
| @token_required | |||
| def delete(tenant_id, chat_id): | |||
| if not DialogService.query(id=chat_id, tenant_id=tenant_id, status=StatusEnum.VALID.value): | |||
| @@ -514,7 +514,7 @@ def delete(tenant_id, chat_id): | |||
| return get_result() | |||
| @manager.route('/sessions/ask', methods=['POST']) | |||
| @manager.route('/sessions/ask', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def ask_about(tenant_id): | |||
| req = request.json | |||
| @@ -553,7 +553,7 @@ def ask_about(tenant_id): | |||
| return resp | |||
| @manager.route('/sessions/related_questions', methods=['POST']) | |||
| @manager.route('/sessions/related_questions', methods=['POST']) # noqa: F821 | |||
| @token_required | |||
| def related_questions(tenant_id): | |||
| req = request.json | |||
| @@ -38,7 +38,7 @@ from timeit import default_timer as timer | |||
| from rag.utils.redis_conn import REDIS_CONN | |||
| @manager.route("/version", methods=["GET"]) | |||
| @manager.route("/version", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def version(): | |||
| """ | |||
| @@ -61,7 +61,7 @@ def version(): | |||
| return get_json_result(data=get_ragflow_version()) | |||
| @manager.route("/status", methods=["GET"]) | |||
| @manager.route("/status", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def status(): | |||
| """ | |||
| @@ -170,7 +170,7 @@ def status(): | |||
| return get_json_result(data=res) | |||
| @manager.route("/new_token", methods=["POST"]) | |||
| @manager.route("/new_token", methods=["POST"]) # noqa: F821 | |||
| @login_required | |||
| def new_token(): | |||
| """ | |||
| @@ -219,7 +219,7 @@ def new_token(): | |||
| return server_error_response(e) | |||
| @manager.route("/token_list", methods=["GET"]) | |||
| @manager.route("/token_list", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def token_list(): | |||
| """ | |||
| @@ -261,7 +261,7 @@ def token_list(): | |||
| return server_error_response(e) | |||
| @manager.route("/token/<token>", methods=["DELETE"]) | |||
| @manager.route("/token/<token>", methods=["DELETE"]) # noqa: F821 | |||
| @login_required | |||
| def rm(token): | |||
| """ | |||
| @@ -26,7 +26,7 @@ from api.utils import get_uuid, delta_seconds | |||
| from api.utils.api_utils import get_json_result, validate_request, server_error_response, get_data_error_result | |||
| @manager.route("/<tenant_id>/user/list", methods=["GET"]) | |||
| @manager.route("/<tenant_id>/user/list", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def user_list(tenant_id): | |||
| if current_user.id != tenant_id: | |||
| @@ -44,7 +44,7 @@ def user_list(tenant_id): | |||
| return server_error_response(e) | |||
| @manager.route('/<tenant_id>/user', methods=['POST']) | |||
| @manager.route('/<tenant_id>/user', methods=['POST']) # noqa: F821 | |||
| @login_required | |||
| @validate_request("email") | |||
| def create(tenant_id): | |||
| @@ -80,7 +80,7 @@ def create(tenant_id): | |||
| return get_json_result(data=usr) | |||
| @manager.route('/<tenant_id>/user/<user_id>', methods=['DELETE']) | |||
| @manager.route('/<tenant_id>/user/<user_id>', methods=['DELETE']) # noqa: F821 | |||
| @login_required | |||
| def rm(tenant_id, user_id): | |||
| if current_user.id != tenant_id and current_user.id != user_id: | |||
| @@ -96,7 +96,7 @@ def rm(tenant_id, user_id): | |||
| return server_error_response(e) | |||
| @manager.route("/list", methods=["GET"]) | |||
| @manager.route("/list", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def tenant_list(): | |||
| try: | |||
| @@ -108,7 +108,7 @@ def tenant_list(): | |||
| return server_error_response(e) | |||
| @manager.route("/agree/<tenant_id>", methods=["PUT"]) | |||
| @manager.route("/agree/<tenant_id>", methods=["PUT"]) # noqa: F821 | |||
| @login_required | |||
| def agree(tenant_id): | |||
| try: | |||
| @@ -44,7 +44,7 @@ from api.db.services.file_service import FileService | |||
| from api.utils.api_utils import get_json_result, construct_response | |||
| @manager.route("/login", methods=["POST", "GET"]) | |||
| @manager.route("/login", methods=["POST", "GET"]) # noqa: F821 | |||
| def login(): | |||
| """ | |||
| User login endpoint. | |||
| @@ -115,7 +115,7 @@ def login(): | |||
| ) | |||
| @manager.route("/github_callback", methods=["GET"]) | |||
| @manager.route("/github_callback", methods=["GET"]) # noqa: F821 | |||
| def github_callback(): | |||
| """ | |||
| GitHub OAuth callback endpoint. | |||
| @@ -200,7 +200,7 @@ def github_callback(): | |||
| return redirect("/?auth=%s" % user.get_id()) | |||
| @manager.route("/feishu_callback", methods=["GET"]) | |||
| @manager.route("/feishu_callback", methods=["GET"]) # noqa: F821 | |||
| def feishu_callback(): | |||
| """ | |||
| Feishu OAuth callback endpoint. | |||
| @@ -335,7 +335,7 @@ def user_info_from_github(access_token): | |||
| return user_info | |||
| @manager.route("/logout", methods=["GET"]) | |||
| @manager.route("/logout", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def log_out(): | |||
| """ | |||
| @@ -357,7 +357,7 @@ def log_out(): | |||
| return get_json_result(data=True) | |||
| @manager.route("/setting", methods=["POST"]) | |||
| @manager.route("/setting", methods=["POST"]) # noqa: F821 | |||
| @login_required | |||
| def setting_user(): | |||
| """ | |||
| @@ -429,7 +429,7 @@ def setting_user(): | |||
| ) | |||
| @manager.route("/info", methods=["GET"]) | |||
| @manager.route("/info", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def user_profile(): | |||
| """ | |||
| @@ -531,7 +531,7 @@ def user_register(user_id, user): | |||
| return UserService.query(email=user["email"]) | |||
| @manager.route("/register", methods=["POST"]) | |||
| @manager.route("/register", methods=["POST"]) # noqa: F821 | |||
| @validate_request("nickname", "email", "password") | |||
| def user_add(): | |||
| """ | |||
| @@ -617,7 +617,7 @@ def user_add(): | |||
| ) | |||
| @manager.route("/tenant_info", methods=["GET"]) | |||
| @manager.route("/tenant_info", methods=["GET"]) # noqa: F821 | |||
| @login_required | |||
| def tenant_info(): | |||
| """ | |||
| @@ -655,7 +655,7 @@ def tenant_info(): | |||
| return server_error_response(e) | |||
| @manager.route("/set_tenant_info", methods=["POST"]) | |||
| @manager.route("/set_tenant_info", methods=["POST"]) # noqa: F821 | |||
| @login_required | |||
| @validate_request("tenant_id", "asr_id", "embd_id", "img2txt_id", "llm_id") | |||
| def set_tenant_info(): | |||
| @@ -21,7 +21,6 @@ import re | |||
| import pdfplumber | |||
| from PIL import Image | |||
| import numpy as np | |||
| from timeit import default_timer as timer | |||
| from pypdf import PdfReader as pdf2_read | |||
| from api import settings | |||
| @@ -949,7 +948,6 @@ class RAGFlowPdfParser: | |||
| self.page_cum_height = [0] | |||
| self.page_layout = [] | |||
| self.page_from = page_from | |||
| st = timer() | |||
| try: | |||
| self.pdf = pdfplumber.open(fnm) if isinstance( | |||
| fnm, str) else pdfplumber.open(BytesIO(fnm)) | |||
| @@ -18,7 +18,7 @@ import os | |||
| from huggingface_hub import snapshot_download | |||
| from api.utils.file_utils import get_project_base_directory | |||
| from .operators import * | |||
| from .operators import * # noqa: F403 | |||
| import math | |||
| import numpy as np | |||
| import cv2 | |||
| @@ -23,7 +23,8 @@ import onnxruntime as ort | |||
| from huggingface_hub import snapshot_download | |||
| from api.utils.file_utils import get_project_base_directory | |||
| from .operators import * | |||
| from .operators import * # noqa: F403 | |||
| from .operators import preprocess | |||
| class Recognizer(object): | |||
| def __init__(self, label_list, task_name, model_dir=None): | |||
| @@ -10,6 +10,7 @@ import numpy as np | |||
| import networkx as nx | |||
| from dataclasses import dataclass | |||
| from graphrag.leiden import stable_largest_connected_component | |||
| import graspologic as gc | |||
| @dataclass | |||