fix:修复一些BUG
This commit is contained in:
@@ -4,11 +4,13 @@ from langchain_core.output_parsers import StrOutputParser
|
||||
from langchain_core.prompts import ChatPromptTemplate
|
||||
from langchain_openai import ChatOpenAI
|
||||
from loguru import logger
|
||||
|
||||
import traceback
|
||||
from config.config import load_config
|
||||
|
||||
config = load_config("config.toml")
|
||||
|
||||
class_type_config =[
|
||||
"本期开展了小袋鼠整合主题课程:(语言、社会、科学、健康、艺术)、生活数学;特色课程(英语、体能、美工、篮球)",
|
||||
"本学期开展了柏克莱主题课程(语言、社会、科学、艺术、健康);英语及特色课程(体能、舞蹈、美工、魔力猴、足球、国学)"
|
||||
]
|
||||
|
||||
def generate_comment(name, age_group, traits,sex):
|
||||
"""
|
||||
@@ -19,7 +21,14 @@ def generate_comment(name, age_group, traits,sex):
|
||||
:param sex: 性别
|
||||
:return: 评语
|
||||
"""
|
||||
|
||||
# 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
return "配置文件加载失败,请检查文件路径和内容。"
|
||||
ai_config = config["ai"]
|
||||
llm = ChatOpenAI(
|
||||
base_url=ai_config["api_url"],
|
||||
@@ -42,7 +51,8 @@ def generate_comment(name, age_group, traits,sex):
|
||||
"name": name,
|
||||
"age_group": age_group,
|
||||
"traits": traits,
|
||||
"sex": sex
|
||||
"sex": sex,
|
||||
"class_type": class_type_config[(config.get("class_type", 0))],
|
||||
})
|
||||
cleaned_text = re.sub(r'\s+', '', comment)
|
||||
logger.success(f"学生:{name} =>生成评语成功: {cleaned_text}")
|
||||
|
||||
@@ -24,15 +24,6 @@ from utils.growt_utils import (
|
||||
)
|
||||
from utils.pptx_utils import replace_picture
|
||||
|
||||
# 如果你之前没有全局定义 console,这里定义一个
|
||||
console = Console()
|
||||
|
||||
# ==========================================
|
||||
# 1. 配置区域 (Configuration)
|
||||
# ==========================================
|
||||
config = load_config("config.toml")
|
||||
|
||||
|
||||
# ==========================================
|
||||
# 1. 生成模板(根据names.xlsx文件生成名字图片文件夹)
|
||||
# ==========================================
|
||||
@@ -42,6 +33,13 @@ def generate_template(stop_event: threading.Event = None, progress_callback=None
|
||||
:params stop_event 任务是否停止事件(监听UI的事件监听)
|
||||
:params progress_callback 进度回调函数
|
||||
"""
|
||||
# 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
try:
|
||||
# 1. 读取数据
|
||||
df = pd.read_excel(config["excel_file"], sheet_name="Sheet1")
|
||||
@@ -89,6 +87,13 @@ def generate_comment_all(stop_event: threading.Event = None, progress_callback=N
|
||||
:params stop_event 任务是否停止事件(监听UI的事件监听)
|
||||
:params progress_callback 进度回调函数
|
||||
"""
|
||||
# 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
try:
|
||||
# 1. 读取数据
|
||||
excel_path = config["excel_file"]
|
||||
@@ -109,9 +114,6 @@ def generate_comment_all(stop_event: threading.Event = None, progress_callback=N
|
||||
if stop_event and stop_event.is_set():
|
||||
logger.warning("任务正在停止中,正在中断中.....")
|
||||
return # 停止任务
|
||||
# 添加进度条
|
||||
if progress_callback:
|
||||
progress_callback(i + 1, total_count, "生成学生评语")
|
||||
|
||||
# 获取学生姓名
|
||||
name = df.at[i, "姓名"]
|
||||
@@ -135,7 +137,9 @@ def generate_comment_all(stop_event: threading.Event = None, progress_callback=N
|
||||
if not pd.isna(current_comment) and str(current_comment).strip() != "":
|
||||
logger.info(f"[{i + 1}/{total_count}] {name} 已有评语,跳过。")
|
||||
continue
|
||||
|
||||
# 添加进度条
|
||||
if progress_callback:
|
||||
progress_callback(i + 1, total_count, f"[{i + 1}/{total_count}] 正在生成评价: {name}")
|
||||
logger.info(f"[{i + 1}/{total_count}] 正在生成评价: {name}")
|
||||
|
||||
try:
|
||||
@@ -176,7 +180,13 @@ def generate_report(stop_event: threading.Event = None, progress_callback=None):
|
||||
根据学生姓名生成成长报告
|
||||
:params stop_event 任务是否停止事件(监听UI的事件监听)
|
||||
:params progress_callback 进度回调函数
|
||||
"""
|
||||
""" # 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
# 1. 检查模版文件是否存在
|
||||
if not os.path.exists(config["source_file"]):
|
||||
logger.info(f"错误: 找不到模版文件 {config["source_file"]}")
|
||||
@@ -212,9 +222,6 @@ def generate_report(stop_event: threading.Event = None, progress_callback=None):
|
||||
if stop_event and stop_event.is_set():
|
||||
logger.warning("任务正在停止中,正在中断中.....")
|
||||
return
|
||||
# 更新进度条
|
||||
if progress_callback:
|
||||
progress_callback(i + 1, total_count, "生成报告")
|
||||
# 解包数据
|
||||
(
|
||||
name,
|
||||
@@ -228,7 +235,9 @@ def generate_report(stop_event: threading.Event = None, progress_callback=None):
|
||||
food,
|
||||
comments,
|
||||
) = row_data
|
||||
|
||||
# 更新进度条
|
||||
if progress_callback:
|
||||
progress_callback(i + 1, total_count, f"[{i + 1}/{len(datas)}] 正在生成: 【{name}】 成长报告")
|
||||
logger.info(f"[{i + 1}/{len(datas)}] 正在生成: {name}")
|
||||
|
||||
# 每次循环重新加载模版
|
||||
@@ -341,6 +350,13 @@ def batch_convert_folder(folder_path, stop_event: threading.Event = None, progre
|
||||
:params stop_event 任务是否停止事件(监听UI的事件监听)
|
||||
:params progress_callback 进度回调函数
|
||||
"""
|
||||
# 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
# 子线程初始化 COM 组件
|
||||
pythoncom.CoInitialize()
|
||||
try:
|
||||
@@ -424,6 +440,13 @@ def generate_zodiac(stop_event: threading.Event = None, progress_callback=None):
|
||||
:params stop_event 任务是否停止事件(监听UI的事件监听)
|
||||
:params progress_callback 进度回调函数
|
||||
"""
|
||||
# 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
try:
|
||||
# 1. 读取数据
|
||||
excel_path = config["excel_file"]
|
||||
@@ -505,6 +528,13 @@ def generate_signature(progress_callback=None) -> str:
|
||||
"""
|
||||
生成园长签名
|
||||
"""
|
||||
# 1. 加载配置文件
|
||||
try:
|
||||
config = load_config("config.toml")
|
||||
except Exception as e:
|
||||
logger.error(f"配置文件获取失败: {str(e)}")
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
try:
|
||||
# 获取所有的PPT (此时返回的是文件名或路径的列表)
|
||||
pptx_files = get_output_pptx_files(config["output_folder"])
|
||||
@@ -542,4 +572,6 @@ def generate_signature(progress_callback=None) -> str:
|
||||
progress_callback(len(pptx_files), len(pptx_files), "签名生成完成")
|
||||
except Exception as e:
|
||||
logger.error(f"generate_signature 发生未知错误: {e}")
|
||||
return str(e)
|
||||
# 打印详细报错位置,方便调试
|
||||
logger.error(traceback.format_exc())
|
||||
return str(e)
|
||||
|
||||
Reference in New Issue
Block a user