File size: 11,639 Bytes
0079733
 
363e455
dcaa7a1
3387b5a
f238a34
77408f7
7186d9b
 
 
81741bc
594f4b2
55ef4ac
9540cf9
7186d9b
92d4400
7167c84
91609d6
fc222bf
321a51b
da1b428
e200709
07807e4
5eea959
a6c4b8d
7167c84
aa7574d
ac2c8ca
04504b1
e39c511
07807e4
 
 
 
64548d3
e200709
 
 
13342c2
 
e200709
da1b428
 
 
 
dc4fe3f
ac2c8ca
91609d6
04504b1
ac2c8ca
e6cf553
81741bc
5e8eb62
04504b1
81741bc
594f4b2
 
a0841c6
04504b1
594f4b2
55ef4ac
 
 
04504b1
55ef4ac
535525e
9540cf9
 
04504b1
9540cf9
fc222bf
 
 
 
 
321a51b
 
 
 
 
5e8eb62
f238a34
04504b1
f238a34
5eea959
 
 
 
 
dc4fe3f
77408f7
5eea959
04504b1
77408f7
7167c84
 
 
dc4fe3f
363e455
7167c84
363e455
92d4400
7167c84
363e455
 
3f559ec
3249b31
e39c511
3387b5a
da1b428
3387b5a
 
0b2b0a8
50dfccc
3249b31
49a6ff6
f38929b
 
2712d99
0b2b0a8
3387b5a
0b2b0a8
 
 
 
 
da1b428
 
 
 
4fe4626
3387b5a
0b2b0a8
0079733
 
3387b5a
4fe4626
3387b5a
 
 
 
50dfccc
 
 
 
 
da1b428
98724cd
3249b31
 
 
 
 
4fe4626
49a6ff6
 
 
 
 
4fe4626
53b099e
 
 
 
 
4fe4626
f38929b
 
 
 
 
4fe4626
f38929b
 
 
 
 
2712d99
 
 
 
 
 
5eea959
2f9a4e1
3387b5a
e39c511
3387b5a
 
90e1eef
 
 
 
 
 
 
 
fc222bf
90e1eef
 
 
 
 
 
 
 
3387b5a
2f9a4e1
 
c3cafd8
2f9a4e1
 
1139d39
bd62c6b
2f9a4e1
 
 
4065d6e
 
 
 
 
 
 
 
 
 
3387b5a
a6c4b8d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
from toolbox import HotReload  # HotReload 的意思是热更新,修改函数插件后,不需要重启程序,代码直接生效


def get_crazy_functions():
    ###################### 第一组插件 ###########################
    from crazy_functions.读文章写摘要 import 读文章写摘要
    from crazy_functions.生成函数注释 import 批量生成函数注释
    from crazy_functions.解析项目源代码 import 解析项目本身
    from crazy_functions.解析项目源代码 import 解析一个Python项目
    from crazy_functions.解析项目源代码 import 解析一个C项目的头文件
    from crazy_functions.解析项目源代码 import 解析一个C项目
    from crazy_functions.解析项目源代码 import 解析一个Golang项目
    from crazy_functions.解析项目源代码 import 解析一个Java项目
    from crazy_functions.解析项目源代码 import 解析一个Rect项目
    from crazy_functions.高级功能函数模板 import 高阶功能模板函数
    from crazy_functions.代码重写为全英文_多线程 import 全项目切换英文
    from crazy_functions.Latex全文润色 import Latex英文润色
    from crazy_functions.询问多个大语言模型 import 同时问询
    from crazy_functions.解析项目源代码 import 解析一个Lua项目
    from crazy_functions.解析项目源代码 import 解析一个CSharp项目
    from crazy_functions.总结word文档 import 总结word文档
    from crazy_functions.解析JupyterNotebook import 解析ipynb文件
    from crazy_functions.对话历史存档 import 对话历史存档
    from crazy_functions.批量Markdown翻译 import Markdown英译中
    function_plugins = {

        "解析整个Python项目": {
            "Color": "stop",    # 按钮颜色
            "Function": HotReload(解析一个Python项目)
        },
        "保存当前的对话": {
            "AsButton":False,
            "Function": HotReload(对话历史存档)
        },
        "[测试功能] 解析Jupyter Notebook文件": {
            "Color": "stop",
            "AsButton":False,
            "Function": HotReload(解析ipynb文件),
            "AdvancedArgs": True, # 调用时,唤起高级参数输入区(默认False)
            "ArgsReminder": "若输入0,则不解析notebook中的Markdown块", # 高级参数输入区的显示提示
        },
        "批量总结Word文档": {
            "Color": "stop",
            "Function": HotReload(总结word文档)
        },
        "解析整个C++项目头文件": {
            "Color": "stop",    # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个C项目的头文件)
        },
        "解析整个C++项目(.cpp/.hpp/.c/.h)": {
            "Color": "stop",    # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个C项目)
        },
        "解析整个Go项目": {
            "Color": "stop",    # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个Golang项目)
        },
        "解析整个Java项目": {
            "Color": "stop",  # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个Java项目)
        },
        "解析整个React项目": {
            "Color": "stop",  # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个Rect项目)
        },
        "解析整个Lua项目": {
            "Color": "stop",    # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个Lua项目)
        },
        "解析整个CSharp项目": {
            "Color": "stop",    # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(解析一个CSharp项目)
        },
        "读Tex论文写摘要": {
            "Color": "stop",    # 按钮颜色
            "Function": HotReload(读文章写摘要)
        },
        "Markdown/Readme英译中": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "Function": HotReload(Markdown英译中)
        },
        "批量生成函数注释": {
            "Color": "stop",    # 按钮颜色
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(批量生成函数注释)
        },
        "[多线程Demo] 解析此项目本身(源码自译解)": {
            "Function": HotReload(解析项目本身)
        },
        "[多线程demo] 把本项目源代码切换成全英文": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(全项目切换英文)
        },
        "[函数插件模板Demo] 历史上的今天": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Function": HotReload(高阶功能模板函数)
        },

    }
    ###################### 第二组插件 ###########################
    # [第二组插件]: 经过充分测试
    from crazy_functions.批量总结PDF文档 import 批量总结PDF文档
    from crazy_functions.批量总结PDF文档pdfminer import 批量总结PDF文档pdfminer
    from crazy_functions.批量翻译PDF文档_多线程 import 批量翻译PDF文档
    from crazy_functions.谷歌检索小助手 import 谷歌检索小助手
    from crazy_functions.理解PDF文档内容 import 理解PDF文档内容标准文件输入
    from crazy_functions.Latex全文润色 import Latex中文润色
    from crazy_functions.Latex全文翻译 import Latex中译英
    from crazy_functions.Latex全文翻译 import Latex英译中
    from crazy_functions.批量Markdown翻译 import Markdown中译英

    function_plugins.update({
        "批量翻译PDF文档(多线程)": {
            "Color": "stop",
            "AsButton": True,  # 加入下拉菜单中
            "Function": HotReload(批量翻译PDF文档)
        },
        "询问多个GPT模型": {
            "Color": "stop",    # 按钮颜色
            "Function": HotReload(同时问询)
        },
        "[测试功能] 批量总结PDF文档": {
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Function": HotReload(批量总结PDF文档)
        },
        "[测试功能] 批量总结PDF文档pdfminer": {
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(批量总结PDF文档pdfminer)
        },
        "谷歌学术检索助手(输入谷歌学术搜索页url)": {
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(谷歌检索小助手)
        },

        "理解PDF文档内容 (模仿ChatPDF)": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(理解PDF文档内容标准文件输入)
        },
        "[测试功能] 英文Latex项目全文润色(输入路径或上传压缩包)": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(Latex英文润色)
        },
        "[测试功能] 中文Latex项目全文润色(输入路径或上传压缩包)": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(Latex中文润色)
        },
        "[测试功能] Latex项目全文中译英(输入路径或上传压缩包)": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(Latex中译英)
        },
        "[测试功能] Latex项目全文英译中(输入路径或上传压缩包)": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(Latex英译中)
        },
        "[测试功能] 批量Markdown中译英(输入路径或上传压缩包)": {
            # HotReload 的意思是热更新,修改函数插件代码后,不需要重启程序,代码直接生效
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(Markdown中译英)
        },


    })

    ###################### 第三组插件 ###########################
    # [第三组插件]: 尚未充分测试的函数插件,放在这里
    from crazy_functions.下载arxiv论文翻译摘要 import 下载arxiv论文并翻译摘要
    function_plugins.update({
        "一键下载arxiv论文并翻译摘要(先在input输入编号,如1812.10695)": {
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(下载arxiv论文并翻译摘要)
        }
    })

    from crazy_functions.联网的ChatGPT import 连接网络回答问题
    function_plugins.update({
        "连接网络回答问题(先输入问题,再点击按钮,需要访问谷歌)": {
            "Color": "stop",
            "AsButton": False,  # 加入下拉菜单中
            "Function": HotReload(连接网络回答问题)
        }
    })

    from crazy_functions.解析项目源代码 import 解析任意code项目
    function_plugins.update({
        "解析项目源代码(手动指定和筛选源代码文件类型)": {
            "Color": "stop",
            "AsButton": False,
            "AdvancedArgs": True, # 调用时,唤起高级参数输入区(默认False)
            "ArgsReminder": "输入时用逗号隔开, *代表通配符, 加了^代表不匹配; 不输入代表全部匹配。例如: \"*.c, ^*.cpp, config.toml, ^*.toml\"", # 高级参数输入区的显示提示
            "Function": HotReload(解析任意code项目)
        },
    })
    from crazy_functions.询问多个大语言模型 import 同时问询_指定模型
    function_plugins.update({
        "询问多个GPT模型(手动指定询问哪些模型)": {
            "Color": "stop",
            "AsButton": False,
            "AdvancedArgs": True, # 调用时,唤起高级参数输入区(默认False)
            "ArgsReminder": "支持任意数量的llm接口,用&符号分隔。例如chatglm&gpt-3.5-turbo&api2d-gpt-4", # 高级参数输入区的显示提示
            "Function": HotReload(同时问询_指定模型)
        },
    })
    ###################### 第n组插件 ###########################
    return function_plugins