diff --git a/main.py b/main.py index 02f10b13..73a3e2b8 100644 --- a/main.py +++ b/main.py @@ -34,7 +34,7 @@ def encode_plugin_info(k, plugin)->str: def main(): import gradio as gr - if gr.__version__ not in ['3.32.12']: + if gr.__version__ not in ['3.32.12', '3.32.13']: raise ModuleNotFoundError("使用项目内置Gradio获取最优体验! 请运行 `pip install -r requirements.txt` 指令安装内置Gradio及其他依赖, 详情信息见requirements.txt.") # 一些基础工具 diff --git a/requirements.txt b/requirements.txt index 7708fef0..92c86c01 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -https://public.agent-matrix.com/publish/gradio-3.32.12-py3-none-any.whl +https://public.agent-matrix.com/publish/gradio-3.32.13-py3-none-any.whl fastapi==0.110 gradio-client==0.8 pypdf2==2.12.1 diff --git a/shared_utils/advanced_markdown_format.py b/shared_utils/advanced_markdown_format.py index 383eed98..7be1db20 100644 --- a/shared_utils/advanced_markdown_format.py +++ b/shared_utils/advanced_markdown_format.py @@ -3,7 +3,8 @@ import re import os import math import html - +import base64 +import gzip from loguru import logger from textwrap import dedent from functools import lru_cache @@ -325,6 +326,14 @@ def markdown_convertion_for_file(txt): # cat them together return pre + convert_stage_5 + suf +def compress_string(s): + compress_string = gzip.compress(s.encode('utf-8')) + return base64.b64encode(compress_string).decode() + +def decompress_string(s): + decoded_string = base64.b64decode(s) + return gzip.decompress(decoded_string).decode('utf-8') + @lru_cache(maxsize=128) # 使用 lru缓存 加快转换速度 def markdown_convertion(txt): """ @@ -336,6 +345,12 @@ def markdown_convertion(txt): # print('警告,输入了已经经过转化的字符串,二次转化可能出问题') return txt # 已经被转化过,不需要再次转化 + # 在文本中插入一个base64编码的原始文本,以便在复制时能够获得原始文本 + raw_text_encoded = compress_string(txt) + raw_text_node = f'' + suf = raw_text_node + "" + + # 用于查找数学公式的正则表达式 find_equation_pattern = r'