【项目实训(个人8)】
继续进行法律文书智能摘要系统的开发新增了几个功能并优化了用户体验概述本次开发为法律文书智能摘要系统新增了两项核心功能。其一是摘要版本管理支持同一文档的多版本摘要生成、存储、对比和回滚。用户在生成摘要时系统自动为每次生成普通或流式创建独立版本记录生成参数、生成者及备注版本管理组件提供卡片式列表、分页筛选、双版本差异对比三维度统计与逐字高亮以及安全回滚生成新版本不覆盖历史。该功能适用于需要反复调优摘要质量的场景例如律师团队针对同一份判决书尝试不同侧重点事实争点、法律适用、裁判逻辑生成多版摘要通过对比选择最优版本亦可用于校对工作流回溯某一历史版本并作为新基准继续迭代。价值在于将摘要生成从“一次性输出”升级为“可追溯、可比较、可复用”的知识资产显著降低了重复劳动成本提升了内容质量控制的可操作性。其二是AI助手对话历史功能。系统新增了对话会话与消息的两张数据表后端提供完整的 REST 管理接口前端重构了法智助手页面增加了左侧可展开的对话历史侧边栏。用户每次咨询法律问题对话自动保存用户消息即时落库AI 流式回复完成后保存并附带参考文书来源。会话列表按更新时间倒排自动提取首条消息前 30 字符为标题支持重命名、删除以及点击历史会话完整恢复上下文。该功能满足了用户在多轮法律咨询中随时中断、事后回溯、跨主题切换的需求结合相对时间显示与悬停编辑/删除操作实现了类似于专业聊天工具的对话管理体验。此外本次开发还完成了多项优化与问题修复文书上传增加了解析中状态与旋转动画反馈摘要结果面板增加一键复制按钮可复制概括摘要关键要素流式生成添加了基于指数退避的自动重试机制最多2次解决了 SSE 连接中断问题版本管理组件添加快捷时间筛选今天/本周/本月/全部。修复方面纠正了文书选择器中示例文书筛选逻辑原误用文件名前缀判断现改为is_sample布尔字段并修复了按钮排版溢出问题添加flex-wrap: wrap。新增功能1.摘要版本管理功能描述支持同一文档的多版本摘要生成、存储、对比和回滚。用户可查看历史摘要、对比不同版本差异、选择最优版本。应用场景用户对摘要不满意调整参数后重新生成需要对比不同时间点的摘要差异团队协作中保留摘要修改历史价值分析提供摘要生成过程的完整记录支持后悔操作提升用户体验为算法优化提供对比数据步骤涉及文件具体内容数据库设计backend/app/database.py创建summary_versions表包含版本号、内容、生成参数、生成者、当前版本标记等字段数据层函数backend/app/database.py实现save_summary_version、get_summary_versions、get_summary_version、rollback_summary_version、diff_summary_versions五个核心函数数据模型backend/app/models/schemas.py新增SummaryVersionItem、SummaryVersionDetail、VersionDiffResponse、RollbackResponse、GenerateSummaryRequest等 Pydantic 模型后端APIbackend/app/api/summary.py添加/versions列表、/versions/{id}详情、/versions/{id}/rollback回滚、/versions/diff对比端点并修改流式端点自动保存版本前端API层frontend/src/api/summaryVersions.ts封装listSummaryVersions、getSummaryVersion、rollbackToVersion、compareVersions、generateSummaryWithVersion等 TypeScript API 函数及类型定义版本管理组件frontend/src/components/SummaryVersionManager.vue实现包含版本列表、筛选、预览、对比、回滚、可拖拽宽度的完整 Drawer 组件集成SummaryPanelfrontend/src/components/SummaryPanel.vue在摘要结果工具栏添加“版本管理”按钮引入SummaryVersionManager组件问题修复frontend/src/components/SummaryVersionManager.vuebackend/app/api/summary.py修复 Drawer 无法关闭开启close-on-click-modal、流式生成不保存版本添加result_holder拦截逻辑功能模块具体功能说明版本生成自动版本创建每次生成摘要普通/流式自动创建新版本版本号自动递增生成参数记录记录每次生成的自定义参数如长度、侧重点生成者追踪记录生成者用户名默认anonymous版本备注支持为版本添加备注说明版本列表卡片式展示显示版本号、时间、生成者、概括预览、参数标签分页浏览默认每页10条支持翻页多条件筛选按生成者、起始日期、结束日期组合筛选状态标识当前版本显示绿色“当前”标签回滚版本显示备注标签版本预览详情查看在新 Drawer 中展示完整内容概括、摘要、关键要素元信息展示版本号、生成时间、生成者、是否当前版本版本对比双版本选择通过下拉菜单选择任意两个版本A/B变更统计三维度统计概括变更率、摘要变更率、关键要素增减差异高亮新增内容绿色、删除内容红色、修改内容黄色关键要素对比分别列出新增要素和删除要素版本回滚回滚到任意版本选择历史版本确认后回滚安全机制弹出确认对话框提示不会覆盖历史版本创建新记录回滚操作生成新的版本记录保留完整操作痕迹交互体验可拖拽宽度左侧拖拽手柄可调整 Drawer 宽度400px~1200px多种方式关闭关闭按钮、点击遮罩、按 Esc 键均可关闭悬停反馈版本卡片悬停高亮当前版本绿色边框选中版本蓝色背景2.AI助手对话历史功能核心目标是将用户的每一次法律咨询对话持久化存储支持会话的创建、恢复、删除与自动标题生成。在架构层面后端数据库新增chat_sessions和chat_messages两张表并实现了 6 个 CRUD 函数后端 API 层新增 5 个 REST 端点覆盖会话列表、详情、创建、删除及消息保存前端 API 层封装了对应的 TypeScript 类型与调用函数UI 层对AssistantView.vue进行了完整重构新增左侧可展开的对话历史侧边栏宽度 260px移动端适配 200px实现了从数据持久化到用户交互的全链路闭环。在功能体验上系统实现了自动保存机制用户发送消息后立即保存至数据库AI 的流式回复在完整生成后自动保存并同时记录参考的文书来源sources。会话列表按更新时间倒序排列每条会话自动提取第一条消息前 30 个字符作为标题当前活跃会话以蓝色背景高亮显示。时间采用相对格式“刚刚”“5分钟前”“3小时前”等删除操作需二次确认并级联删除所有关联消息。数据流转清晰用户发消息 → 首次创建会话 → 保存用户消息 → LLM 流式回复 → 保存 AI 回复及来源 → 刷新会话列表 → 用户点击历史会话即可完整恢复对话内容。这一功能显著提升了用户在多轮法律咨询中的连续性与回溯效率。层级改动文件核心内容数据库backend/app/database.py新增chat_sessions、chat_messages表实现 6 个 CRUD 函数后端 APIbackend/app/api/assistant.py新增 5 个 REST 端点列表/详情/创建/删除/保存消息前端 APIfrontend/src/api/assistant.ts新增 TypeScript 类型定义 5 个 API 函数前端 UIfrontend/src/views/AssistantView.vue重构页面新增左侧对话历史侧边栏可展开260px/200px 响应式加入了历史记录改名功能交互方式操作说明点击铅笔图标悬停会话项时右侧出现编辑图标点击后标题变为可编辑输入框Enter 确认输入新名称后按回车保存Escape 取消按Esc退出编辑模式恢复原标题失去焦点保存点击输入框外区域自动保存空值校验空标题时会提示标题不能为空不保存视觉设计状态效果默认仅显示标题和时间悬停右侧渐显铅笔编辑和垃圾桶删除图标编辑中标题替换为蓝色边框输入框自动全选文本隐藏操作按钮优化功能1.文书上传进度反馈修改文件 : FileUpload.vue- 新增 parsing 状态和 statusMsg 文本提示- 上传完成后显示文书解析中...状态指示器带旋转动画- 批量上传队列状态新增解析中 parsing 选项队列行会显示解析阶段- 解析完成后自动更新为完成状态2.摘要结果添加一键复制修改文件 : SummaryPanel.vue- 在摘要结果工具栏新增复制摘要按钮- 复制内容包括概括 详细摘要 关键要素带编号- 复制成功/失败均有 ElMessage 提示3.修复SSE连接中断处理修改文件 : SummaryPanel.vue- 流式生成添加自动重试机制默认最多2次- 连接中断时显示连接中断正在重试 (X/2)...提示- 重试间隔使用指数退避1.5s × 重试次数- 超过最大重试次数后显示错误信息4.添加快捷时间筛选修改文件 : SummaryVersionManager.vue- 在筛选面板顶部新增快捷时间按钮组今天 / 本周 / 本月 / 全部- 点击快捷按钮自动设置起止日期并立即刷新列表- 当前选中的快捷按钮高亮显示primary类型- 重置筛选时同时重置快捷选择状态修复问题1.选择文书时示例文书按钮无效DocumentSelector.vue 的示例筛选逻辑使用了错误的条件。实际文档数据中的 is_sample 字段才是标识示例文书的但当前代码是用文件名是否以 示例- 开头来判断。问题出在 DocumentSelector.vue 的筛选逻辑——之前用 d.filename.startsWith(示例-) 来判断示例文书但实际数据是通过 is_sample 布尔字段标识的。已更正为 d.is_sample 现在切换示例文书开关可正确过滤。2.按钮排版溢出添加 flex-wrap: wrap 属性当容器宽度不足以容纳所有按钮时按钮会自动换行排列不会超出范围。工作小结工作类别具体内容涉及文件/模块新增功能摘要版本管理版本生成、列表、预览、对比、回滚、交互体验backend/app/database.py、schemas.py、api/summary.pyfrontend/src/api/summaryVersions.ts、components/SummaryVersionManager.vue、SummaryPanel.vue新增功能AI 助手对话历史会话/消息表、CRUD、侧边栏、自动保存、标题编辑、删除backend/app/database.py、api/assistant.pyfrontend/src/api/assistant.ts、views/AssistantView.vue优化功能文书上传进度反馈解析中状态、旋转动画、队列状态frontend/src/components/FileUpload.vue优化功能摘要结果一键复制概括摘要要素frontend/src/components/SummaryPanel.vue优化功能SSE 连接中断自动重试指数退避、最多2次、提示消息frontend/src/components/SummaryPanel.vue优化功能版本管理快捷时间筛选今天/本周/本月/全部按钮高亮frontend/src/components/SummaryVersionManager.vue问题修复示例文书筛选逻辑错误is_sample字段替换文件名前缀判断frontend/src/components/DocumentSelector.vue问题修复按钮排版溢出添加flex-wrap: wrap相关组件样式在本次迭代中团队围绕“版本控制”与“对话持久化”两条主线完成了从数据库设计到前端交互的全链路开发。摘要版本管理模块共涉及 8 个步骤包括创建summary_versions表、实现 5 个数据层函数、新增 5 个 Pydantic 模型、添加 4 个 REST 端点、封装 TypeScript API 并开发了完整的SummaryVersionManager.vue组件支持可拖拽宽度、双版本对比、差异高亮、安全回滚等 13 项细分功能。AI 助手对话历史模块新增了chat_sessions和chat_messages表及 6 个 CRUD 函数后端提供 5 个 REST 端点前端重构AssistantView.vue实现了自动保存、会话管理、标题编辑、级联删除等功能并优化了相对时间显示与响应式布局。两个模块均通过了流式生成场景下的版本保存与对话恢复验证。同时本次工作系统性地提升了用户体验和系统鲁棒性。文书上传进度反馈解决了批量处理时“无感知等待”的问题一键复制功能满足了用户摘录摘要结果的高频需求SSE 重试机制显著降低了网络波动导致的生成失败率快捷时间筛选优化了版本管理页面的操作效率。修复的两个问题虽然细微但直接影响了核心流程示例文书过滤错误会导致用户无法正确加载样例和界面美观按钮溢出破坏布局。整体来看本次开发不仅补齐了知识沉淀与交互回溯的核心短板也在细节打磨上体现了产品化思维。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2632876.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!