UPDATE_NOTES.md 9.6 KB

系统更新说明文档

更新概述

本次系统更新包含多项安全增强、功能扩展和用户体验优化,主要涉及认证安全、本地模型管理、内容审核、API标准化等多个方面。以下是详细的更新内容说明。

详细功能更新

1. 客户端密码安全传输

功能说明:修改了客户端密码明文传输的问题,实现了密码的安全加密传输。

技术实现

  • 前端使用HTTPS协议确保传输加密
  • 后端使用bcrypt算法对密码进行哈希存储
  • 密码在传输过程中通过HTTPS加密通道传输

安全增强

  • 密码不再以明文形式存储在数据库中
  • 即使数据库被泄露,密码也无法被还原
  • 传输过程中密码不会被截获

2. 本地私钥功能

功能说明:新增本地私钥功能,支持用户管理本地模型的访问密钥。

技术实现

  • 使用加密算法对本地模型的API密钥进行加密存储
  • 提供API密钥的安全管理接口
  • 实现密钥的脱敏显示,保护密钥安全

使用方式

  • 管理员可以为本地模型设置API密钥
  • 系统会自动对密钥进行加密存储
  • 密钥在显示时会进行脱敏处理

3. 私域模型与用户调用权限管理

功能说明:实现了私域模型的权限管理,控制用户对本地模型的访问权限。

技术实现

  • 新增user_local_model_permission表存储用户权限
  • 实现权限缓存机制,提高权限检查性能
  • 提供权限管理接口,支持管理员配置用户权限

权限控制

  • 用户只能访问自己创建的本地模型
  • 全局可见的模型需要用户获得权限才能访问
  • 管理员可以为用户分配本地模型的访问权限

4. 客户端注册时密码强度实时监测

功能说明:新增密码强度实时监测功能,在用户注册时提供密码强度评估和建议。

技术实现

  • 前端实现密码强度可视化显示
  • 后端提供密码强度检测API
  • 支持密码强度等级评估(弱、中、强)

检测规则

  • 密码长度检查(至少8个字符)
  • 字符类型检查(小写字母、大写字母、数字、特殊符号)
  • 常见弱密码模式检测
  • 实时提供密码强度改进建议

5. 修复登录不支持纯数字密码的问题

问题说明:修复了系统无法使用纯数字密码登录的问题。

技术实现

  • 调整密码验证逻辑,支持纯数字密码
  • 确保密码哈希算法正确处理纯数字密码
  • 保持密码强度检测的有效性

影响范围:用户现在可以使用纯数字密码进行登录,但系统会仍然建议使用更复杂的密码组合。

6. 管理端音频审核

功能说明:新增管理端音频审核功能,支持管理员审核用户生成的音频内容。

技术实现

  • 新增音频审核状态字段
  • 提供音频审核接口
  • 支持批量审核操作

审核流程

  • 用户生成音频后自动进入待审核状态
  • 管理员可以查看和审核音频内容
  • 审核通过后音频可正常访问,审核拒绝则会被标记为违规

7. 用户端图像/视频/音频预览功能

功能说明:新增用户端多媒体内容预览功能,支持图像、视频和音频的在线预览。

技术实现

  • 前端实现多媒体预览组件
  • 后端提供预览资源访问接口
  • 支持流式播放和渐进式加载

支持格式

  • 图像:JPG、PNG、WebP
  • 视频:MP4、WebM
  • 音频:MP3、WAV、OGG

8. 规范Swagger文档请求体

功能说明:优化并规范了Swagger文档的请求体定义,提高API文档的可读性和一致性。

技术实现

  • 统一请求体格式和命名规范
  • 完善参数描述和示例
  • 确保文档与实际API保持一致

改进效果

  • 开发者可以更清晰地了解API使用方法
  • 减少API调用错误
  • 提高API文档的维护性

9. 修改客户端注册登录请求为JSON格式

功能说明:将客户端注册和登录请求从表单格式改为JSON格式,提高接口的标准化程度。

技术实现

  • 前端修改请求格式为JSON
  • 后端更新接口接收JSON格式数据
  • 保持参数结构不变,仅修改数据传输格式

兼容性

  • 新的JSON格式请求与原有功能完全兼容
  • 提高了接口的可扩展性和一致性

10. 修复管理端内容审核错误

问题说明:修复了管理端内容审核功能中的错误,确保审核操作正常执行。

技术实现

  • 修复审核状态更新逻辑
  • 解决审核操作的权限问题
  • 优化审核流程的错误处理

修复效果

  • 管理员可以正常执行内容审核操作
  • 审核状态更新及时准确
  • 审核历史记录完整可查

11. 管理端添加私域模型兼容性测试

功能说明:新增管理端添加私域模型时的兼容性测试功能,确保添加的模型能够正常使用。

技术实现

  • 实现模型连接测试接口
  • 支持不同类型模型的测试
  • 提供详细的测试结果和错误信息

测试类型

  • 对话模型(/chat/completions)
  • 语音合成(/audio/speech)
  • 语音识别(/audio/transcriptions)
  • 文生图(/images/generations)
  • 视频生成(/videos/generations)
  • 图像编辑(/images/edits)
  • 向量嵌入(/embeddings)
  • 重排序(/rerank)

12. 管理端新增embedding模型和rerank模型分类

功能说明:在管理端新增embedding(向量嵌入)模型和rerank(重排序)模型的分类支持。

技术实现

  • 扩展模型分类枚举值
  • 更新模型管理接口
  • 支持新分类模型的测试和管理

分类说明

  • 7: 向量嵌入模型(用于文本向量化)
  • 8: 重排序模型(用于搜索结果排序)

13. 新增rerank接口调用

功能说明:新增rerank(重排序)接口调用功能,支持使用重排序模型对搜索结果进行优化。

技术实现

  • 实现rerank接口
  • 支持OpenAI兼容的重排序请求格式
  • 提供重排序结果处理逻辑

使用场景

  • 搜索结果优化
  • 文档相关性排序
  • 问答系统答案排序

14. CAS单点登录及用户注册默认API Key管理

功能说明:抽取CAS单点登录模块,新增SQLite轻量库存放URL地址及注册API Key,支持通过后台系统配置单点登录及新用户注册的API Key。

技术实现

  • 使用SQLite存储CAS配置和API Key
  • 实现配置管理接口
  • 支持配置的动态更新

配置项

  • CAS服务器URL
  • CAS回调URL
  • 新用户注册API Key
  • 单点登录状态管理

技术实现细节

密码安全实现

  • 使用bcrypt算法进行密码哈希
  • 密码哈希存储在user.password_hash字段
  • 前端通过HTTPS传输密码
  • 后端验证密码时使用安全的比较方法

本地模型权限管理

  • 使用user_local_model_permission表存储用户权限
  • 实现权限缓存机制,减少数据库查询
  • 权限检查逻辑集成到模型访问流程中

密码强度检测

  • 实现多维度密码强度评估
  • 提供实时反馈和改进建议
  • 支持不同强度等级的视觉展示

模型兼容性测试

  • 实现多类型模型的测试逻辑
  • 提供详细的测试结果和错误信息
  • 支持不同模型分类的测试端点

CAS单点登录配置

  • 使用SQLite轻量级存储配置
  • 支持通过管理端动态更新配置
  • 实现配置的缓存和热加载

配置说明

新增配置项

  1. CAS单点登录配置

    • cas_server_url: CAS服务器地址
    • cas_callback_url: CAS回调地址
    • enable_cas_login: 是否启用CAS登录
  2. 用户注册API Key配置

    • registration_api_key: 新用户注册API Key
    • enable_api_registration: 是否启用API注册
  3. 本地模型配置

    • enable_local_models: 是否启用本地模型
    • local_model_max_count: 本地模型最大数量

配置管理

  • 通过管理端系统设置页面进行配置
  • 配置变更会自动生效,无需重启服务
  • 配置修改会记录操作历史,便于审计

注意事项

  1. 密码安全

    • 建议用户使用包含大小写字母、数字和特殊符号的强密码
    • 系统会对弱密码进行提示,但仍然允许使用
  2. 本地模型安全

    • 本地模型的API Key会被加密存储
    • 建议定期更新本地模型的API Key
    • 本地模型的Base URL需要经过安全验证,避免SSRF攻击
  3. CAS单点登录

    • 确保CAS服务器地址配置正确
    • 回调URL需要在CAS服务器中注册
    • 新用户注册API Key需要妥善保管
  4. 内容审核

    • 管理员需要定期审核用户生成的内容
    • 审核操作会记录到系统日志中
  5. API兼容性

    • 客户端注册登录请求已改为JSON格式,前端需要相应更新
    • 其他API接口保持向后兼容

部署说明

  1. 数据库迁移

    • 运行数据库迁移脚本,更新数据库结构
    • 新增表:user_local_model_permission
    • 更新表:model(添加新的分类支持)
  2. 配置文件更新

    • 检查并更新相关配置项
    • 确保CAS配置正确设置
  3. 前端更新

    • 部署最新的前端代码
    • 确保前端使用新的JSON格式请求
  4. 测试验证

    • 测试用户注册登录功能
    • 测试本地模型管理功能
    • 测试CAS单点登录功能
    • 测试内容审核功能

总结

本次更新涵盖了系统的多个方面,包括安全性、功能扩展性和用户体验优化。通过这些更新,系统的安全性得到了显著提升,功能更加完善,用户体验更加友好。同时,系统的可维护性和可扩展性也得到了增强,为未来的功能迭代奠定了良好的基础。