From 1e4bcc0757978ede840052821ea9deabc194ad04 Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 24 Mar 2023 13:28:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E5=8F=8A=E6=97=B6=E5=93=8D?= =?UTF-8?q?=E5=BA=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- functional_crazy.py | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/functional_crazy.py b/functional_crazy.py index 0dd993d..4c26a68 100644 --- a/functional_crazy.py +++ b/functional_crazy.py @@ -4,11 +4,14 @@ fast_debug = False def 高阶功能模板函数(txt, top_p, temperature, chatbot, history, systemPromptTxt, WEB_PORT): for i in range(5): i_say = f'我给出一个数字,你给出该数字的平方。我给出数字:{i}' - gpt_say = predict_no_ui(inputs=i_say, top_p=top_p, temperature=temperature) - chatbot.append((i_say, gpt_say)) - history.append(i_say) - history.append(gpt_say) - yield chatbot, history, '正常' + chatbot.append((i_say, "[Local Message] waiting gpt response.")) + yield chatbot, history, '正常' # 由于请求gpt需要一段时间,我们先及时地做一次状态显示 + + gpt_say = predict_no_ui(inputs=i_say, top_p=top_p, temperature=temperature) # 请求gpt,需要一段时间 + + chatbot[-1] = (i_say, gpt_say) + history.append(i_say);history.append(gpt_say) + yield chatbot, history, '正常' # 显示 def 解析项目本身(txt, top_p, temperature, chatbot, history, systemPromptTxt, WEB_PORT): @@ -22,7 +25,7 @@ def 解析项目本身(txt, top_p, temperature, chatbot, history, systemPromptTx 前言 = "接下来请你分析自己的程序构成,别紧张," if index==0 else "" i_say = 前言 + f'请对下面的程序文件做一个概述文件名是{fp},文件代码是 ```{file_content}```' i_say_show_user = 前言 + f'[{index}/{len(file_manifest)}] 请对下面的程序文件做一个概述: {os.path.abspath(fp)}' - chatbot.append((i_say_show_user, "[waiting gpt response]")) + chatbot.append((i_say_show_user, "[Local Message] waiting gpt response.")) yield chatbot, history, '正常' if not fast_debug: @@ -35,7 +38,7 @@ def 解析项目本身(txt, top_p, temperature, chatbot, history, systemPromptTx time.sleep(2) i_say = f'根据以上你自己的分析,对程序的整体功能和构架做出概括。然后用一张markdown表格整理每个文件的功能(包括{file_manifest})。' - chatbot.append((i_say, "[waiting gpt response]")) + chatbot.append((i_say, "[Local Message] waiting gpt response.")) yield chatbot, history, '正常' if not fast_debug: @@ -64,7 +67,7 @@ def 解析源代码(file_manifest, project_folder, top_p, temperature, chatbot, 前言 = "接下来请你逐文件分析下面的工程" if index==0 else "" i_say = 前言 + f'请对下面的程序文件做一个概述文件名是{os.path.relpath(fp, project_folder)},文件代码是 ```{file_content}```' i_say_show_user = 前言 + f'[{index}/{len(file_manifest)}] 请对下面的程序文件做一个概述: {os.path.abspath(fp)}' - chatbot.append((i_say_show_user, "[waiting gpt response]")) + chatbot.append((i_say_show_user, "[Local Message] waiting gpt response.")) print('[1] yield chatbot, history') yield chatbot, history, '正常' @@ -89,7 +92,7 @@ def 解析源代码(file_manifest, project_folder, top_p, temperature, chatbot, all_file = ', '.join([os.path.relpath(fp, project_folder) for index, fp in enumerate(file_manifest)]) i_say = f'根据以上你自己的分析,对程序的整体功能和构架做出概括。然后用一张markdown表格整理每个文件的功能(包括{all_file})。' - chatbot.append((i_say, "[waiting gpt response]")) + chatbot.append((i_say, "[Local Message] waiting gpt response.")) yield chatbot, history, '正常' if not fast_debug: @@ -116,7 +119,7 @@ def 解析一个Python项目(txt, top_p, temperature, chatbot, history, systemPr project_folder = txt else: if txt == "": txt = '空空如也的输入栏' - report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到本地项目: {txt}") + report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到本地项目或无权访问: {txt}") yield chatbot, history, '正常' return file_manifest = [f for f in glob.glob(f'{project_folder}/**/*.py', recursive=True)] @@ -134,14 +137,14 @@ def 解析一个C项目的头文件(txt, top_p, temperature, chatbot, history, s project_folder = txt else: if txt == "": txt = '空空如也的输入栏' - report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到本地项目: {txt}") + report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到本地项目或无权访问: {txt}") yield chatbot, history, '正常' return file_manifest = [f for f in glob.glob(f'{project_folder}/**/*.h', recursive=True)] # + \ # [f for f in glob.glob(f'{project_folder}/**/*.cpp', recursive=True)] + \ # [f for f in glob.glob(f'{project_folder}/**/*.c', recursive=True)] if len(file_manifest) == 0: - report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到任何.h/.cpp/.c文件: {txt}") + report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到任何.h头文件: {txt}") yield chatbot, history, '正常' return yield from 解析源代码(file_manifest, project_folder, top_p, temperature, chatbot, history, systemPromptTxt)