256 Commits

Author SHA1 Message Date
carry
8c35a38c47 feat(frontend): 更新模板选择功能
- 在模板选择变更时,获取所选模板的详细信息
- 创建 PromptTemplate 对象并获取输入变量列表
- 此更新为后续的模板编辑功能做准备
2025-04-15 21:31:50 +08:00
carry
7ee751c88f fix(frontend): 移除文档生成页面的冗余事件绑定代码
- 删除了原有的简单事件绑定逻辑,这些逻辑仅将输入值赋给状态变量
- 为后续添加更复杂的文档选择更改事件处理函数做准备
2025-04-15 20:44:26 +08:00
carry
b715b36a5f feat(frontend): 更新数据集生成页面并添加独立运行功能
- 重构导入路径,使用绝对路径替换相对路径
- 新增文档和模板选择的事件处理函数
- 添加独立运行数据集生成页面的功能
- 优化代码结构,提高可读性和可维护性
2025-04-15 17:13:52 +08:00
carry
8023233bb2 feat(prompt): 增加模板变量有效性检查
- 在 promptTempleta 模型中添加字段验证器
- 验证模板内容是否包含必要的 document_slice 变量
- 如果缺少该变量,抛出 ValueError 异常
2025-04-15 16:54:17 +08:00
carry
2a86b3b5b0 fix(db): 初始化 prompt store 时插入第一条记录的 ID 从 0 改为 1
- 将初始化时插入的第一条记录的 ID 从 0 改为 1
- 修正了文档节选的变量名,从 {content} 改为 {document_slice}
2025-04-15 16:45:12 +08:00
carry
ca1505304e fix(tools): 更新 tools/__init__.py 中的导入语句
- 将 from .doc import * 改为 from .document import *
- 这个修改统一了文档处理模块的命名,提高了代码的一致性和可读性
2025-04-15 16:31:55 +08:00
carry
df9260e918 fix(db): 修复初始提示词的变量花括号的空格问题 2025-04-15 16:13:57 +08:00
carry
df9aba0c6e refactor(tools): 重命名模块并更新导入
- 将 scan_doc_dir.py 重命名为 document.py
- 将 socket.py 重命名为 port.py
- 更新 __init__.py 中的导入语句
- 在 port.py 中添加测试代码,用于查找可用端口
2025-04-15 15:47:44 +08:00
carry
6b87dcb58f refactor(frontend): 重构数据集生成页面的变量命名逻辑
- 将 prompt_choices 变量重命名为 prompt_list,以更准确地反映其内容
- 更新相关代码中对这两个变量的引用,以保持一致性
2025-04-15 15:40:24 +08:00
carry
d0aebd17fa refactor(global_var): 重构全局变量管理
- 移除了 _docs 全局变量
- 更新了 get_docs() 函数,使其在每次调用时重新扫描文档目录
- 优化了全局变量初始化逻辑
2025-04-15 15:25:44 +08:00
carry
d9abf08184 fix(frontend): 修复表格选择事件的行数据获取问题
- 在 prompt_manage_page 和 setting_page 中更新了 select_record 函数
- 使用 DataFrame.iloc 方法获取选中行的数据,并转换为列表
- 添加了将第一列数据转换为整数的逻辑
- 更新了表格选择事件的参数,增加了输入和输出参数
- 将 gradio 版本升级到 5.25.0
2025-04-15 15:10:15 +08:00
carry
a27a1ab079 refactor(frontend): 重构训练页面布局并优化用户界面
- 调整数据集下拉框布局位置
- 新增超参数输入组件
- 修改训练日志输出框标签为"训练状态"
- 添加 TensorBoard 可视化 iframe 显示框
2025-04-15 00:12:09 +08:00
carry
aa758e3c2a feat(train_page): 添加 TensorBoard 可视化
- 在训练页面添加 TensorBoard iframe 显示框
- 实现动态生成 TensorBoard iframe 功能
- 更新训练按钮点击事件,同时更新 TensorBoard iframe
2025-04-14 23:28:43 +08:00
carry
664944f0c5 feat(frontend): 优化 TensorBoard 端口占用问题
- 新增端口检测逻辑,动态分配可用端口
- 修改 TensorBoard 启动过程,使用动态分配的端口
- 添加 socket 模块,用于端口检测
2025-04-14 17:06:44 +08:00
carry
9298438f98 feat(train_page): 启动 TensorBoard 进程并确保训练结束后终止
- 在训练页面中添加 TensorBoard 进程启动代码
- 创建日志目录并启动 TensorBoard 子进程
- 在训练结束后终止 TensorBoard 进程
2025-04-14 17:00:33 +08:00
carry
4f7926aec6 feat(train_page): 实现训练目录自动递增功能
- 在 training 文件夹下创建递增的目录结构
- 确保 training 文件夹存在
- 扫描现有目录,生成下一个可用的目录编号
- 更新训练模型函数,使用新的训练目录
2025-04-14 16:46:29 +08:00
carry
148f4afb25 fix(main): 修复unsloth没有最先导入的问题,删除了重复的导入语句 2025-04-14 16:31:47 +08:00
carry
11a3039775 fix(train_page): 修正模型训练保存路径 2025-04-14 16:31:00 +08:00
carry
a4289815ba build: 添加 tensorboard 依赖
- 在 requirements.txt 中添加 tensorboard>=2.19.0
- 此改动增加了 tensorboard 作为项目的新依赖项
2025-04-14 16:30:39 +08:00
carry
088067d335 train: 更新模型训练功能和日志记录方式
- 修改训练目录结构,将检查点和日志分开保存
- 添加 TensorBoard 日志记录支持
- 移除自定义 LossCallback 类,简化训练流程
- 更新训练参数和回调机制,提高代码可读性
- 在 requirements.txt 中添加 tensorboardX 依赖
2025-04-14 16:19:37 +08:00
carry
9fb31c46c8 feat(train): 添加训练过程中的日志记录和 loss 可视化功能
- 新增 LossCallback 类,用于在训练过程中记录 loss 数据
- 在训练模型函数中添加回调,实现日志记录和 loss 可视化
- 优化训练过程中的输出信息,增加当前步数和 loss 值的打印
2025-04-14 15:18:14 +08:00
carry
4f09823123 refactor(tools): 优化 train_model 函数定义
- 添加类型注解,提高代码可读性和维护性
- 使用多行格式定义函数参数,提升代码格式美观
2025-04-14 14:28:36 +08:00
carry
1a2ca3e244 refactor(train): 重构训练功能并移至新模块
- 将训练逻辑从 train_page.py 移至 tools/model.py
- 新增 train_model 函数,包含完整的训练流程
- 更新 train_page.py 中的回调函数,使用新的训练函数
- 移除了 train_page.py 中未使用的导入
2025-04-14 14:17:04 +08:00
carry
bb1d8fbd38 feat(train_page): 添加训练 Loss 曲线显示功能
- 在训练页面添加了 Loss 曲线图表
- 实现了 GradioLossCallback 类用于记录训练过程中的 Loss 数据
- 修改了训练函数,通过回调函数收集 Loss 信息并更新图表
- 优化了训练函数的返回值结构,支持同时返回文本日志和 Loss 数据
2025-04-13 21:49:43 +08:00
carry
4558929c52 fix: 调整了import的顺序,让unsloth最先import以提高性能 2025-04-13 21:35:47 +08:00
carry
0722748997 feat(train_page): 添加 LoRA 秩动态输入功能
- 在训练页面新增 LoRA 秩输入框,使用户可以动态设置 LoRA 秩
- 更新训练模型函数,添加 LoRA 秩参数并将其用于模型配置
- 保留原有功能,仅增加 LoRA 秩相关配置
2025-04-13 21:12:02 +08:00
carry
e08f0059bb feat(train_page): 优化训练过程以专注于响应生成
- 引入 train_on_responses_only 函数,用于优化训练过程
- 设置 instruction_part 和 response_part 参数,以适应特定的对话格式
- 此修改旨在提高模型在生成响应方面的性能和效率
2025-04-13 21:05:14 +08:00
carry
6d1fecbdac build: 更新依赖版本并添加新依赖
- 将 unsloth 的最低版本要求从 2025.3.9 提升到 2025.3.19
- 新增 sqlmodel 依赖,版本不低于 0.0.24
- 新增 jinja2 依赖,版本不低于 3.1.0
2025-04-13 20:29:33 +08:00
carry
79d3eb153c refactor(train_page): 优化训练页面布局和功能
- 移除了 max_steps_input 组件,减少不必要的输入项
- 将 per_device_train_batch_size_input 和 epoch_input 的标签简化为 "batch size" 和 "epoch"
- 新增 save_steps_input 组件,用于设置保存步数
- 修改 train_model 函数,移除了 max_steps 参数
- 更新了 trainer.train() 方法的调用,设置 resume_from_checkpoint=False
2025-04-13 01:56:10 +08:00
carry
80dae7c6e2 fix(global_var):修复_workdir非全局变量的bug 2025-04-13 01:52:05 +08:00
carry
2d39b91764 feat(train_page): 添加模型训练超参数配置功能
- 新增学习率、批次大小、最大训练步数等超参数输入组件
- 实现超参数在训练过程中的动态应用
- 调整训练参数以适应不同硬件环境
- 优化训练过程,支持按步数保存模型
2025-04-13 01:04:27 +08:00
carry
5094febcb4 refactor(global_var): 重构全局变量管理并添加工作目录功能
- 添加 _workdir 全局变量以存储工作目录路径
- 在 init_global_var 函数中初始化 _workdir
- 新增 get_workdir 函数以获取工作目录路径
- 调整全局变量的定义和初始化顺序
2025-04-13 00:54:55 +08:00
carry
eeee68dbd1 chore: 更新 .gitignore 文件
- 在 .gitignore 中添加 test.py 文件,避免测试代码被版本控制
2025-04-12 18:42:36 +08:00
carry
539e14d39c feat(frontend): 完成了前端微调的代码逻辑 2025-04-12 18:42:22 +08:00
carry
9784f2aed3 fix(tools): 修正__init__.py使得model.py正确导入 2025-04-12 01:16:07 +08:00
carry
611904cef9 feat(frontend): 添加数据集选择功能到训练页面
- 在 train_page.py 中添加数据集选择下拉框
- 从全局变量中获取数据集列表并设置初始值
- 添加交互性和自定义值支持
2025-04-11 19:43:34 +08:00
carry
8a9a080745 refactor(tools): 移除未使用的导入语句
移除了 tools/model.py 文件中未使用的 get_chat_template 导入语句。这个修改提高了代码的可读性和维护性。
2025-04-11 19:43:19 +08:00
carry
a23ad88769 fix(frontend): 修复删除提示功能中的数据库连接错误
- 将 prompt_store 更改为 get_prompt_store(),以解决数据库连接未建立的问题
- 优化了删除提示功能的代码,提高了系统稳定性
2025-04-11 18:53:17 +08:00
carry
83427aaaba feat(frontend): 增加超参数设置并优化聊天页面布局
- 在聊天页面添加了超参数输入框,包括最大生成长度、温度、Top-p 采样和重复惩罚
- 优化了聊天框的布局,使用 gr.Row() 和 gr.Column() 实现了更合理的界面结构
- 更新了 bot 函数,支持根据用户输入的超参数进行文本生成
- 修复了一些代码格式问题,提高了代码的可读性
2025-04-11 18:48:13 +08:00
carry
61672021ef fix(frontend): 修复聊天页面并的流式回复
- 导入 Thread 和 TextIteratorStreamer 以支持流式生成
- 重新设计 user 和 bot 函数,优化对话历史处理
- 添加异常处理和错误信息显示
- 改进模型和分词器的加载逻辑
- 优化聊天页面布局和交互
2025-04-11 18:33:31 +08:00
carry
fb6157af05 feat(frontend): 初步实现聊天页面的智能回复功能 2025-04-11 18:08:38 +08:00
carry
f655936741 refactor(global_var): 重构全局变量初始化方法
- 新增 init_global_var 函数,用于统一初始化所有全局变量
- 修改 get_prompt_store、get_sql_engine、get_docs 和 get_datasets 函数,使用新的全局变量初始化逻辑
- 更新 main.py 中的代码,使用新的 init_global_var 函数替代原有的单独初始化方法
2025-04-11 18:08:16 +08:00
carry
ab7897351a fix(global_var): 修复全局变量多文件多副本的不统一问题 2025-04-11 18:04:42 +08:00
carry
216bfe39ae feat(tools): 添加格式化对话数据的函数
- 新增 formatting_prompts_func 函数,用于格式化对话数据
- 该函数将问题和答案组合成对话形式,并使用 tokenizer.apply_chat_template 进行格式化
- 更新 imports,添加了 unsloth.chat_templates 模块
2025-04-11 17:56:46 +08:00
carry
0fa2b51a79 refactor(frontend): 优化模型管理页面的交互和显示
- 将状态输出从 Textbox 改为 Label 组件,提高用户体验
- 添加 get_model_name 函数以获取模型名称,提高代码复用性
- 更新模型加载、卸载和保存后的状态显示,使信息更加准确
- 优化模型列表刷新功能,确保模型列表实时更新
2025-04-11 00:14:40 +08:00
carry
cbb3a09dd8 feat(tools): 添加模型名称获取函数
- 在 tools 目录下新增 model.py 文件
- 实现 get_model_name 函数,用于获取模型的名称
- 更新 tools/__init__.py,导入新的 get_model_name 函数
2025-04-10 22:05:04 +08:00
carry
2e552c186d refactor(frontend): 重构模型选择界面的变量命名
- 将模型选择的 Dropdown 组件从 dropdown 重命名为 model_select_dropdown,提高代码可读性
- 更新 load_button 和 refresh_button 的输出目标,以适应新的变量名
2025-04-10 21:19:58 +08:00
carry
1b3f546669 refactor(frontend): 重构前端页面并添加独立运行功能
- 在 chat_page 和 prompt_manage_page 中添加了独立运行的入口
- 引入 sys 和 pathlib 模块以支持路径操作
- 修改了模块导入方式,使其能够作为独立脚本运行
- 优化了代码结构,提高了可读性和可维护性
2025-04-10 21:18:05 +08:00
carry
402bc73dce feat(model_manage_page): 增加模型保存和刷新功能
- 新增保存模型功能,用户可以输入模型名称并保存当前加载的模型
- 添加刷新模型列表按钮,用户可以随时更新模型下拉菜单中的选项
- 优化页面布局,使按钮和输入框更加合理地排列
2025-04-10 20:18:03 +08:00
carry
bb5851f800 build: 添加 unsloth 依赖
- 在 requirements.txt 中添加 unsloth>=2025.3.9 依赖
2025-04-10 19:56:44 +08:00