From 5565b701129ed219c099665a2628329347534be4 Mon Sep 17 00:00:00 2001 From: "xh.xin" Date: Wed, 2 Apr 2025 14:16:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=89=B9=E6=94=B9=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E5=92=8C=E8=AF=84=E5=88=86=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- results/logs/grading_log_20250402_101459.log | 0 results/logs/grading_log_20250402_101601.log | 0 results/logs/grading_log_20250402_101704.log | 156 +++++++++++++++++++ results/logs/grading_log_20250402_105419.log | 44 ++++++ results/logs/grading_log_20250402_110506.log | 0 results/logs/grading_log_20250402_110516.log | 11 ++ results/logs/grading_log_20250402_111222.log | 9 ++ results/logs/grading_log_20250402_135006.log | 0 results/logs/grading_log_20250402_135031.log | 29 ++++ results/复批结果.xlsx | Bin 0 -> 5706 bytes results/批改结果.xlsx | Bin 73936 -> 10731 bytes source/grade_assignments.py | 118 +++++++++++++- 12 files changed, 362 insertions(+), 5 deletions(-) create mode 100644 results/logs/grading_log_20250402_101459.log create mode 100644 results/logs/grading_log_20250402_101601.log create mode 100644 results/logs/grading_log_20250402_101704.log create mode 100644 results/logs/grading_log_20250402_105419.log create mode 100644 results/logs/grading_log_20250402_110506.log create mode 100644 results/logs/grading_log_20250402_110516.log create mode 100644 results/logs/grading_log_20250402_111222.log create mode 100644 results/logs/grading_log_20250402_135006.log create mode 100644 results/logs/grading_log_20250402_135031.log create mode 100644 results/复批结果.xlsx diff --git a/results/logs/grading_log_20250402_101459.log b/results/logs/grading_log_20250402_101459.log new file mode 100644 index 0000000..e69de29 diff --git a/results/logs/grading_log_20250402_101601.log b/results/logs/grading_log_20250402_101601.log new file mode 100644 index 0000000..e69de29 diff --git a/results/logs/grading_log_20250402_101704.log b/results/logs/grading_log_20250402_101704.log new file mode 100644 index 0000000..53281ac --- /dev/null +++ b/results/logs/grading_log_20250402_101704.log @@ -0,0 +1,156 @@ +2025-04-02 10:17:31,664 - INFO - 촨 - ɣµ÷: 0 +2025-04-02 10:17:31,665 - INFO - ѧ: 촨 - APIɹ +: 0 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ΪģδⷶΧȻļϸȱԾȷͽϸ衣Ӧ˵AI߽⣬롢̺ȡ + +#### 2. YMLļǷDifyƱ׼... +Ӧ: {'task_id': '2e7c85c4-8969-4eb8-8361-c51b518ac2db', 'workflow_run_id': '0a49b21e-20ea-4fb6-8b78-ce761de6ceff', 'data': {'id': '0a49b21e-20ea-4fb6-8b78-ce761de6ceff', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ΪģδⷶΧȻļϸȱԾȷͽϸ衣Ӧ˵AI߽⣬롢̺ȡ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹܣ60֣\n**֣ 40... +2025-04-02 10:18:05,263 - INFO - - ɣµ÷: 80 +2025-04-02 10:18:05,263 - INFO - ѧ: - APIɹ +: 80 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** Ϊϸ˴ĵȡɲĶ裬ĿơĿĿŵȡԼӿȻȱٶԾȷ硰ӿڲϸrebotľӦóⷶΧֲ費ϸδȫ... +Ӧ: {'task_id': 'c2e34c87-a8e8-47f7-ba4b-8780f23d8f6e', 'workflow_run_id': 'd6a2268a-4401-436c-b72a-7964bf82f879', 'data': {'id': 'd6a2268a-4401-436c-b72a-7964bf82f879', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** Ϊϸ˴ĵȡɲĶ裬ĿơĿĿŵȡԼӿȻȱٶԾȷ硰ӿڲϸrebotľӦóⷶΧֲ費ϸδȫչʾν⡣\n\n#### 2. YMLļǷ... +2025-04-02 10:18:36,935 - INFO - - ɣµ÷: 50 +2025-04-02 10:18:36,935 - INFO - ѧ: - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ᵽʹAI߽вɣΪģδϸ˵δȡҪ󡢽ӿҪҪ󣬲תΪIJȻᵽĵȡLLMʹãȱԾ岽ͷϸ¹δȫⷶΧ + +#### ... +Ӧ: {'task_id': 'd172a2a1-f398-45a9-9832-ae85c7ce95b8', 'workflow_run_id': 'cc35297a-cb1c-4127-87fa-0f6c2c824ede', 'data': {'id': 'cc35297a-cb1c-4127-87fa-0f6c2c824ede', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ᵽʹAI߽вɣΪģδϸ˵δȡҪ󡢽ӿҪҪ󣬲תΪIJȻᵽĵȡLLMʹãȱԾ岽ͷϸ¹δȫⷶΧ\n\n#### 2. YMLļǷDifyƱ׼ʵ... +2025-04-02 10:19:10,111 - INFO - ܵ - ɣµ÷: 80 +2025-04-02 10:19:10,111 - INFO - ѧ: ܵ - APIɹ +: 80 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ⣬ָԪĹؼɸѡƥͺţṩӦơͺšԤۺֻšȻȱٶԾʵֲϸ˵ռͼ¼ûṩԪؼԼβѯͺʵӦϢЩϸڶȷԺͿ... +Ӧ: {'task_id': '5af5ed02-2521-474a-9612-1192a2011bf5', 'workflow_run_id': 'add94934-cf77-45f8-b504-ef4ed09d1965', 'data': {'id': 'add94934-cf77-45f8-b504-ef4ed09d1965', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ⣬ָԪĹؼɸѡƥͺţṩӦơͺšԤۺֻšȻȱٶԾʵֲϸ˵ռͼ¼ûṩԪؼԼβѯͺʵӦϢЩϸڶȷԺͿɲҪ\n\n#### 2. YMLļǷDi... +2025-04-02 10:19:41,035 - INFO - - ɣµ÷: 80 +2025-04-02 10:19:41,035 - INFO - ѧ: - APIɹ +: 80 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ϸ˲Ʒ̣о桢顢ƻĵȡۡȻȱٶԾϸ˵׼̵ľ岽ȡȻҪ⣬ȱϸڵ²δȫǡ + +#### 2.... +Ӧ: {'task_id': '9004fbbd-c743-4e96-ab6f-7f8895d1daab', 'workflow_run_id': 'afde0590-6dac-46b6-8d60-1e07cba989a1', 'data': {'id': 'afde0590-6dac-46b6-8d60-1e07cba989a1', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ϸ˲Ʒ̣о桢顢ƻĵȡۡȻȱٶԾϸ˵׼̵ľ岽ȡȻҪ⣬ȱϸڵ²δȫǡ\n\n#### 2. YMLļǷDifyƱ׼ʵԼ... +2025-04-02 10:20:10,379 - INFO - ε - ɣµ÷: 77 +2025-04-02 10:20:10,379 - INFO - ѧ: ε - APIɹ +: 77 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** Ϊϸ˴±⵽µĶ裬ɡṹɡɺУԵȡȻȱٶԾȷ綨硰ͨòƷӪ¡ľӦó⣬δἰδûľݺͲƷԼȷ... +Ӧ: {'task_id': '343e0f99-4437-4d38-886c-bcab4858e224', 'workflow_run_id': '3e8e9f6e-0cf8-44a2-9c0e-241b0c1edf7f', 'data': {'id': '3e8e9f6e-0cf8-44a2-9c0e-241b0c1edf7f', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** Ϊϸ˴±⵽µĶ裬ɡṹɡɺУԵȡȻȱٶԾȷ綨硰ͨòƷӪ¡ľӦó⣬δἰδûľݺͲƷԼȷɵ·ӪĿꡣ\n\n#### 2. YMLļǷ... +2025-04-02 10:20:48,438 - INFO - - ɣµ÷: 72 +2025-04-02 10:20:48,439 - INFO - ѧ: - APIɹ +: 72 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** +˲ñҪ裬ƱϢȡñͲñ㡣ȻȱٶԾϸ˵δͬ͵ķƱɻ𳵡ס޵ȣԼθݳغĿĵؼʱ䡣⣬δȷἰδס޷δʱ... +Ӧ: {'task_id': '56052756-79f9-4524-ad3c-b2fd4dcd4ff1', 'workflow_run_id': '56177b9a-c26f-4775-8e63-4797308227ae', 'data': {'id': '56177b9a-c26f-4775-8e63-4797308227ae', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n****\n˲ñҪ裬ƱϢȡñͲñ㡣ȻȱٶԾϸ˵δͬ͵ķƱɻ𳵡ס޵ȣԼθݳغĿĵؼʱ䡣⣬δȷἰδס޷δʱϣⷶΧϸڲ֡\n\n... +2025-04-02 10:21:18,333 - INFO - ߷ - ɣµ÷: 65 +2025-04-02 10:21:18,334 - INFO - ѧ: ߷ - APIɹ +: 65 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ᵽˡԳʴģ塱δϸ˵ͽΪģδⷶΧȻᵽʹAI߽ʴ𣬵ȱIJϸڣ⡢شȡˣδȫⷶΧ + +##... +Ӧ: {'task_id': '331ac093-8338-4000-88ad-d93a62fb1201', 'workflow_run_id': '794a52cd-2dda-4a22-99f5-a0ca9d55d150', 'data': {'id': '794a52cd-2dda-4a22-99f5-a0ca9d55d150', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ᵽˡԳʴģ塱δϸ˵ͽΪģδⷶΧȻᵽʹAI߽ʴ𣬵ȱIJϸڣ⡢شȡˣδȫⷶΧ\n\n#### 2. YMLļǷDifyƱ׼... +2025-04-02 10:21:44,961 - INFO - - ɣµ÷: 100 +2025-04-02 10:21:44,962 - INFO - ѧ: - APIɹ +: 100 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 20** +**** ϸ˴ȷĿꡢռгϢݡԱȹָܺ굽MarkdowṇȫMCUģƷеⷶΧÿ趼Ŀĺʵַʽȷȫ + +#### 2. YMLļǷDify... +Ӧ: {'task_id': '5432019d-2833-4d8c-9c92-6df83435b586', 'workflow_run_id': '3e0e71fb-c0b0-4204-8e38-38262e01cf19', 'data': {'id': '3e0e71fb-c0b0-4204-8e38-38262e01cf19', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 20**\n**** ϸ˴ȷĿꡢռгϢݡԱȹָܺ굽MarkdowṇȫMCUģƷеⷶΧÿ趼Ŀĺʵַʽȷȫ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹܣ60֣... +2025-04-02 10:22:15,783 - INFO - ԬҰ - ɣµ÷: 72 +2025-04-02 10:22:15,783 - INFO - ѧ: ԬҰ - APIɹ +: 72 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ᵽʹAI߽вԶɣ˴ĵȡɵĻ̡ȻȱٶԾ岽ϸ˵δĵȡؼϢȷ׼ȷԺȫԵȡϣⷶΧϸ + +#### 2. YM... +Ӧ: {'task_id': 'bc476e73-8a69-4374-a632-1e6c9182e39d', 'workflow_run_id': 'dbaf7aec-08a5-447f-be76-9ccb40ca326e', 'data': {'id': 'dbaf7aec-08a5-447f-be76-9ccb40ca326e', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ᵽʹAI߽вԶɣ˴ĵȡɵĻ̡ȻȱٶԾ岽ϸ˵δĵȡؼϢȷ׼ȷԺȫԵȡϣⷶΧϸ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹ... +2025-04-02 10:22:59,220 - INFO - ֣ - ɣµ÷: 65 +2025-04-02 10:22:59,220 - INFO - ѧ: ֣ - APIɹ +: 65 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ⣬ͨAIߴӵֲȡ󹦺ĺͷװ߶Ϣаֲ롢֧ǷṩBOMĵȡLLMԼȲ裬̽ΪȻȱٶԾʵϸڵϸ˵δ... +Ӧ: {'task_id': '8b45f742-3870-4180-995a-0716bed72053', 'workflow_run_id': '69cb4f42-9712-4244-9f80-25580461a884', 'data': {'id': '69cb4f42-9712-4244-9f80-25580461a884', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ⣬ͨAIߴӵֲȡ󹦺ĺͷװ߶Ϣаֲ롢֧ǷṩBOMĵȡLLMԼȲ裬̽ΪȻȱٶԾʵϸڵϸ˵δͬʽֲᡢȷȡ׼ȷԵȡ⣬... +2025-04-02 10:23:23,021 - INFO -  - ɣµ÷: 0 +2025-04-02 10:23:23,021 - INFO - ѧ:  - APIɹ +: 0 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ΪģδⷶΧȻᵽˡ֪ʶʴ𡱣ȱⱳϸĹ˵磬ûȷ˵δ֪ʶмϢδԼմ𰸡⵼¹޷ȫⷶΧ + +#### 2. YMLļ... +Ӧ: {'task_id': '0aacb1d8-6065-476e-8e3f-e8c0a0552b92', 'workflow_run_id': 'd1f2d671-8a51-453b-9d8a-ea786012a006', 'data': {'id': 'd1f2d671-8a51-453b-9d8a-ea786012a006', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ΪģδⷶΧȻᵽˡ֪ʶʴ𡱣ȱⱳϸĹ˵磬ûȷ˵δ֪ʶмϢδԼմ𰸡⵼¹޷ȫⷶΧ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹ... +2025-04-02 10:23:53,996 - INFO - 䳯 - ɣµ÷: 80 +2025-04-02 10:23:53,996 - INFO - ѧ: 䳯 - APIɹ +: 80 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ᵽˡֲPDFԶɸѡŷͺšϸ˵˴ϴֲᵽɸѡŷͺŵIJ衣ȻȱٶԾ弼ϸڵϸ˵νPDFļɸѡͺŵȡϣⷶΧֲ費ϸ + +##... +Ӧ: {'task_id': '632f10e7-d2f0-489d-9339-771573cc289d', 'workflow_run_id': 'a456380b-57bb-4dd9-a387-15335e56f9aa', 'data': {'id': 'a456380b-57bb-4dd9-a387-15335e56f9aa', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ᵽˡֲPDFԶɸѡŷͺšϸ˵˴ϴֲᵽɸѡŷͺŵIJ衣ȻȱٶԾ弼ϸڵϸ˵νPDFļɸѡͺŵȡϣⷶΧֲ費ϸ\n\n#### 2. YMLļǷDifyƱ׼... +2025-04-02 10:24:23,631 - INFO - - ɣµ÷: 50 +2025-04-02 10:24:23,631 - INFO - ѧ: - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ѧǡߡвδϸ˵AI߽еľ⡣ҪļϴĵȡIJ裬ȱоĽˣָⷶΧ÷Ϊе10֡ + +#### 2. Y... +Ӧ: {'task_id': 'ad9b8473-de6d-40e6-a097-eaf9d8e04428', 'workflow_run_id': 'fea95447-a680-4575-94ea-f774d23e355b', 'data': {'id': 'fea95447-a680-4575-94ea-f774d23e355b', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ѧǡߡвδϸ˵AI߽еľ⡣ҪļϴĵȡIJ裬ȱоĽˣָⷶΧ÷Ϊе10֡\n\n#### 2. YMLļǷDifyƱ׼ʵԼ... +2025-04-02 10:24:51,329 - INFO - ޱ - ɣµ÷: 50 +2025-04-02 10:24:51,329 - INFO - ѧ: ޱ - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ᵽԱܱܽ쳣⼰֧֣ΪģδϸĹʵַʽȻᵽ˺Ĺṹȡ쳣״̬ʶȣȱʵϸں˵δȫⷶΧ + +#### 2. YMLļǷDif... +Ӧ: {'task_id': 'f9fe641d-6186-45aa-bd96-972435633f44', 'workflow_run_id': 'e6b8e402-21a5-44d9-87e1-e4e3f32fde87', 'data': {'id': 'e6b8e402-21a5-44d9-87e1-e4e3f32fde87', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ᵽԱܱܽ쳣⼰֧֣ΪģδϸĹʵַʽȻᵽ˺Ĺṹȡ쳣״̬ʶȣȱʵϸں˵δȫⷶΧ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹܣ60... diff --git a/results/logs/grading_log_20250402_105419.log b/results/logs/grading_log_20250402_105419.log new file mode 100644 index 0000000..0ccd8e5 --- /dev/null +++ b/results/logs/grading_log_20250402_105419.log @@ -0,0 +1,44 @@ +2025-04-02 10:54:49,208 - INFO - ǿ - ɣµ÷: 65 +2025-04-02 10:54:49,208 - INFO - ѧ: ǿ - APIɹ +: 65 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ᵽOAģǶ˰ƽ̨APIӿڣԱϴӷƱϵͳԶýӿ֤α¼ⷶΧȱԾʵֲϸ˵APIõľ̡ƵȡˣȻ⣬꾡 + +#### 2. Y... +Ӧ: {'task_id': '6e7eb532-1e1f-4c0f-bf06-91cae4f20d4a', 'workflow_run_id': 'bf405751-1d26-431a-97d5-5ab79f72be7a', 'data': {'id': 'bf405751-1d26-431a-97d5-5ab79f72be7a', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ᵽOAģǶ˰ƽ̨APIӿڣԱϴӷƱϵͳԶýӿ֤α¼ⷶΧȱԾʵֲϸ˵APIõľ̡ƵȡˣȻ⣬꾡\n\n#### 2. YMLļǷDifyƱ׼ʵԼ... +2025-04-02 10:55:12,424 - INFO - Ѻ - ɣµ÷: 50 +2025-04-02 10:55:12,425 - INFO - ѧ: Ѻ - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ΪģδⷶΧȻᵽʹAI߽гкƶϣȱIJϸڣνηݵȡʹù޷ȫⷶΧ + +#### 2. YMLļǷDifyƱ׼ʵԼ... +Ӧ: {'task_id': 'dd182ab5-459b-4491-b8e3-dd2f88fed6c1', 'workflow_run_id': 'd68cacb2-b442-40c2-a347-c2a19fbe7869', 'data': {'id': 'd68cacb2-b442-40c2-a347-c2a19fbe7869', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ΪģδⷶΧȻᵽʹAI߽гкƶϣȱIJϸڣνηݵȡʹù޷ȫⷶΧ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹܣ60֣\n**֣ 30**\n**... +2025-04-02 10:55:38,213 - INFO - ƿ - ɣµ÷: 50 +2025-04-02 10:55:38,214 - INFO - ѧ: ƿ - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ᵽˡͬδϸ˵AI߽кͬľ岽̡ΪģδⷶΧṩ˻̿ܣȱʵϸںľ巽 + +#### 2. YMLļǷDifyƱ׼ʵԼ... +Ӧ: {'task_id': 'f5615f28-cc46-4b4f-8fe0-038bbcffb48c', 'workflow_run_id': 'edc7afe7-b119-4a56-bd7d-cbee42eefa66', 'data': {'id': 'edc7afe7-b119-4a56-bd7d-cbee42eefa66', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ᵽˡͬδϸ˵AI߽кͬľ岽̡ΪģδⷶΧṩ˻̿ܣȱʵϸںľ巽\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹܣ60֣\n**֣ 30**\n... +2025-04-02 10:56:03,632 - INFO - - ɣµ÷: 50 +2025-04-02 10:56:03,632 - INFO - ѧ: - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ᵽˡɹδϸ˵AI߽ɵľ⡣ΪģδⷶΧṩ˹Ļܣȱ岽ʵϸڡ + +#### 2. YMLļǷDifyƱ׼ʵԼĹ... +Ӧ: {'task_id': '188414d1-694e-466c-8543-4efeaf908b48', 'workflow_run_id': '9ec31be2-a5ca-4a9b-b1e7-fb498b82036b', 'data': {'id': '9ec31be2-a5ca-4a9b-b1e7-fb498b82036b', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ᵽˡɹδϸ˵AI߽ɵľ⡣ΪģδⷶΧṩ˹Ļܣȱ岽ʵϸڡ\n\n#### 2. YMLļǷDifyƱ׼ʵԼĹܣ60֣\n**֣ 30**\n***... diff --git a/results/logs/grading_log_20250402_110506.log b/results/logs/grading_log_20250402_110506.log new file mode 100644 index 0000000..e69de29 diff --git a/results/logs/grading_log_20250402_110516.log b/results/logs/grading_log_20250402_110516.log new file mode 100644 index 0000000..ad01f08 --- /dev/null +++ b/results/logs/grading_log_20250402_110516.log @@ -0,0 +1,11 @@ +2025-04-02 11:05:38,049 - INFO - - ɣµ÷: 50 +2025-04-02 11:05:38,050 - INFO - ѧ: - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ѧǡļڱдСΡᵽʹAIʫģΪģδⷶΧȻᵽ˹ؼʺѡ񣬵ȱIJϸڣδ롢ʫĵ߼ȡˣֵ÷Ϊе10֡ + +#### 2. Y... +Ӧ: {'task_id': '673461f1-41b9-47ed-8fbb-012d3e4866ec', 'workflow_run_id': '93c4c81e-aef9-47e8-bb90-517f3e4d90cb', 'data': {'id': '93c4c81e-aef9-47e8-bb90-517f3e4d90cb', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ѧǡļڱдСΡᵽʹAIʫģΪģδⷶΧȻᵽ˹ؼʺѡ񣬵ȱIJϸڣδ롢ʫĵ߼ȡˣֵ÷Ϊе10֡\n\n#### 2. YMLļǷDifyƱ׼ʵԼ... diff --git a/results/logs/grading_log_20250402_111222.log b/results/logs/grading_log_20250402_111222.log new file mode 100644 index 0000000..7fe147c --- /dev/null +++ b/results/logs/grading_log_20250402_111222.log @@ -0,0 +1,9 @@ +2025-04-02 11:12:53,710 - INFO - - ɣµ÷: 50 +2025-04-02 11:12:53,710 - INFO - ѧ: - APIɹ +: 50 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ѧǡļڱдСΡᵽʹAI뼾صȻΪģδϸ˵IJʵַʽδ롢ıȷıȡˣָⷶΧ÷Ϊе10... +Ӧ: {'task_id': '23be86da-8fd1-4f39-b963-9058da9203af', 'workflow_run_id': 'abce5407-bc27-4d54-845f-023161fa1cb7', 'data': {'id': 'abce5407-bc27-4d54-845f-023161fa1cb7', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ѧǡļڱдСΡᵽʹAI뼾صȻΪģδϸ˵IJʵַʽδ롢ıȷıȡˣָⷶΧ÷Ϊе10֡\n\n#### 2. YMLļǷDify... diff --git a/results/logs/grading_log_20250402_135006.log b/results/logs/grading_log_20250402_135006.log new file mode 100644 index 0000000..e69de29 diff --git a/results/logs/grading_log_20250402_135031.log b/results/logs/grading_log_20250402_135031.log new file mode 100644 index 0000000..bfca97d --- /dev/null +++ b/results/logs/grading_log_20250402_135031.log @@ -0,0 +1,29 @@ +2025-04-02 13:50:59,309 - INFO - - ɣ÷: 65 +2025-04-02 13:50:59,309 - INFO - ѧ: - APIɹ +: 65 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ϸDifyԶͻʾ̣ʾơ͡ͷȻڡᵽDifyܹԶƷϢṩѡԶʾݣЩܻⷶΧȻжξԭԼ... +Ӧ: {'task_id': '3129cf8d-7676-4f96-855b-4b644788f10d', 'workflow_run_id': '39c869a1-2731-4360-938f-187df72f678d', 'data': {'id': '39c869a1-2731-4360-938f-187df72f678d', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ϸDifyԶͻʾ̣ʾơ͡ͷȻڡᵽDifyܹԶƷϢṩѡԶʾݣЩܻⷶΧȻжξԭԼθݷƶIJֽΪģδȫ... +2025-04-02 13:51:23,561 - INFO - - ɣ÷: 0 +2025-04-02 13:51:23,561 - INFO - ѧ: - APIɹ +: 0 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 10** +**** ͨAIпĿ꣬ϸ˵ݡʹLLMпԼIJ衣ȻδȫѧⷶΧԱʱʵʱѯNCӦϵͳеĹؼҵݵ󡣹Ҫڿϣʵʱѯ... +Ӧ: {'task_id': 'ed6c2006-14fb-42bb-88fb-c719cc94f877', 'workflow_run_id': '94f02241-173e-4e0d-989d-80633c5c2f93', 'data': {'id': '94f02241-173e-4e0d-989d-80633c5c2f93', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 10**\n**** ͨAIпĿ꣬ϸ˵ݡʹLLMпԼIJ衣ȻδȫѧⷶΧԱʱʵʱѯNCӦϵͳеĹؼҵݵ󡣹ҪڿϣʵʱѯƶԵ⡣ˣָⷶΧ\... +2025-04-02 13:51:45,097 - INFO - - ɣ÷: 45 +2025-04-02 13:51:45,097 - INFO - ѧ: - APIɹ +: 45 +APIӦժҪ: ### + +#### 1. ǷܹԼ⣨20֣ +**֣ 15** +**** ϸ˲ѯԪװ̣ѯԶѯű֤洢ԼάȲ裬ⷶΧȻжȷѯ׼ȷԺδѯʧܻ쳣ϸڲ֣ܻӰ칤ʵӦЧ + +#### 2. ... +Ӧ: {'task_id': 'e34d217a-d7a4-40a8-82b1-a39d65987b9a', 'workflow_run_id': '42bfc629-6f09-4a26-9936-0d2584908a56', 'data': {'id': '42bfc629-6f09-4a26-9936-0d2584908a56', 'workflow_id': 'f92cba23-5741-4720-a852-baed04beffb0', 'status': 'succeeded', 'outputs': {'text': '### \n\n#### 1. ǷܹԼ⣨20֣\n**֣ 15**\n**** ϸ˲ѯԪװ̣ѯԶѯű֤洢ԼάȲ裬ⷶΧȻжȷѯ׼ȷԺδѯʧܻ쳣ϸڲ֣ܻӰ칤ʵӦЧ\n\n#### 2. YMLļǷDifyƱ׼ʵԼ... diff --git a/results/复批结果.xlsx b/results/复批结果.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..20b4a5a2c56b8bf996771e52b2ff7eaa1c056259 GIT binary patch literal 5706 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 literal 0 HcmV?d00001 diff --git a/results/批改结果.xlsx b/results/批改结果.xlsx index f76378bda82a677bc1d68bc54228d38dd1927ab3..4ab29114513527e0fdc67a554c764285fa401a58 100644 GIT binary patch delta 3603 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 Lo1%&TKMnr_*2SSv delta 67304 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 diff --git a/source/grade_assignments.py b/source/grade_assignments.py index 1f8981a..9a21a3b 100644 --- a/source/grade_assignments.py +++ b/source/grade_assignments.py @@ -460,15 +460,121 @@ def regrade_zero_scores(): print(f"\n❌ 复批流程出现错误: {e}") raise +def regrade_100_scores(): + """复批0分作业""" + print("\n开始复批100分作业...") + + # 检查原始结果文件是否存在 + if not os.path.exists(OUTPUT_FILE): + print("❌ 未找到原始批改结果文件,无法进行复批") + return + + try: + # 读取原始结果 + original_wb = openpyxl.load_workbook(OUTPUT_FILE) + original_ws = original_wb.active + + # 初始化复批工作簿 + regrade_wb = None + + # 查找100分记录 + zero_count = 0 + for row in original_ws.iter_rows(min_row=2, values_only=True): + name, score, details = row[0], row[1], row[2] + + if score == 100: + zero_count += 1 + print(f"\n发现100分记录: {name}") + + # 查找YML文件 + yml_path = find_assignment_yml(name) + if not yml_path: + print(f"⚠️ 未找到 {name} 的作业文件,保持0分") + result = { + 'name': name, + 'score': 0, + 'details': details + } + regrade_wb = save_result(result, regrade_wb, is_regrade=True) + continue + + # 解析YML文件 + try: + print(f"解析YML文件: {os.path.basename(yml_path)}") + yml_content = parse_yml_file(yml_path) + except Exception as e: + print(f"❌ 解析YML文件失败: {e}") + result = { + 'name': name, + 'score': 0, + 'details': f'YML文件解析失败: {str(e)}' + } + regrade_wb = save_result(result, regrade_wb, is_regrade=True) + continue + + # 准备API调用数据 + assignment_data = { + 'name': name, + **yml_content + } + + # 调用API进行复批 + print("调用Dify API进行复批...") + api_response = call_dify_api(yml_path, assignment_data) + if not api_response: + logger.error(f"{name} - 复批API调用失败") + print(f"❌ {name} 复批失败") + result = { + 'name': name, + 'score': 0, + 'details': '复批API调用失败' + } + regrade_wb = save_result(result, regrade_wb, is_regrade=True) + continue + + # 解析API响应 + try: + score, new_details = parse_api_response(api_response) + print(f"✅ {name} 复批完成 - 新得分: {score}") + logger.info(f"{name} - 复批完成,新得分: {score}") + log_api_result(name, api_response, score) + + # 使用save_result保存复批结果 + result = { + 'name': name, + 'score': score, + 'details': new_details + } + regrade_wb = save_result(result, regrade_wb, is_regrade=True) + except Exception as e: + print(f"❌ 解析API响应失败: {e}") + result = { + 'name': name, + 'score': 0, + 'details': f'复批结果解析失败: {str(e)}' + } + regrade_wb = save_result(result, regrade_wb, is_regrade=True) + + # 保存复批结果 + if zero_count > 0: + print(f"\n✅ 共复批{zero_count}份100分作业") + else: + print("\n没有发现100分记录需要复批") + + except Exception as e: + print(f"\n❌ 复批流程出现错误: {e}") + raise + def main(): """主函数,执行作业批改流程""" print("\n请选择批改模式:") print("1. 全部批改(包括未批改和0分复批)") print("2. 仅复批0分作业") + print("3. 仅复批100分作业") while True: - choice = input("请输入选择(1/2): ").strip() - if choice in ('1', '2'): + choice = input("请输入选择(1/2/3): ").strip() + if choice in ('1', '2', '3'): break print("无效输入,请重新选择") @@ -476,6 +582,11 @@ def main(): # 仅执行复批 regrade_zero_scores() return + + if choice == '3': + # 仅执行复批 + regrade_100_scores() + return print("\n开始批改作业...") @@ -562,9 +673,6 @@ def main(): print(f"\n✅ 所有{total_count}份作业批改完成") print(f"批改结果已实时保存到: {OUTPUT_FILE}") - # 自动执行复批 - regrade_zero_scores() - except Exception as e: print(f"\n❌ 批改流程出现严重错误: {e}") raise