- 优化内容排名系统
- 更新内容排名提示词,调整评分权重
- 在用户提示中添加图片URL日志记录
- 改进ID解析机制,提升内容排名结果的一致性
- 增强微信工作流程
- 添加内容过滤功能
- 实现动态文章数量配置
- 增加调试日志记录
- 优化内容处理的错误处理机制
- 改进文章模板渲染系统
- 新增
processArticleContent
方法,支持段落间自动插入图片 - 更新基础模板渲染器,支持数据预处理
- 优化文章模板,移除默认文本缩进
- 重命名
ArticleTemplateRenderer
为WeixinArticleTemplateRenderer
- 新增
- 微信图片处理优化
- 实现
uploadContentImage
方法,支持微信图片上传 - 重构
WeixinImageProcessor
,改进图片处理方法
- 实现
- 增加媒体内容支持
- 添加Media和Size接口定义
- 实现推文媒体内容提取
- 支持引用推文的内容和媒体提取
- 性能优化
- 将推文获取限制从10条增加到20条
- 改进错误日志记录
- 优化配置刷新机制
- 新增文章数量环境变量配置
- 在.env.example中添加ARTICLE_NUM配置项
- 更新README.md文档,添加相关配置说明
- 升级axios至1.8.2版本
- 更新npm源配置,优化包管理
- 移除husky包依赖
- 重构模板类型定义
- 将
template.type.ts
重命名为article.type.ts
- 新增
GeneratedTemplate
和WeixinTemplate
接口 - 更新相关文件的导入路径
- 将
- 更新环境变量配置说明
- 完善README文档
-
重构LLM工厂模式,提升代码复用性和可维护性
- 实现统一的LLM提供者接口,支持多种AI服务商
- 优化模型切换机制,支持动态指定模型名称
- 增强错误处理和重试机制
-
增强模型配置灵活性
- 多模型配置支持:可在配置中为同一提供商定义多个可用模型
- 使用竖线分隔多个模型名称,例如:
DEEPSEEK_MODEL="deepseek-chat|deepseek-reasoner"
- 默认使用列表中的第一个模型
- 使用竖线分隔多个模型名称,例如:
- 指定特定模型支持:可在使用LLM提供商时指定特定模型
- 使用格式:
提供商:模型名称
,例如:DEEPSEEK:deepseek-reasoner
- 适用于所有支持指定模型的配置项
- 使用格式:
- 多模型配置支持:可在配置中为同一提供商定义多个可用模型
-
LLM工厂类技术改进
- 重构getLLMProvider方法,支持解析
PROVIDER:model
格式的配置 - 优化提供商缓存机制,使用
PROVIDER:model
作为缓存键 - 添加配置字符串解析方法
- 重构getLLMProvider方法,支持解析
-
OpenAI兼容LLM类增强
- 添加多模型支持和管理
- 新增模型选择和查询方法:
setModel(model: string)
:设置当前使用的模型getModel()
:获取当前使用的模型getAvailableModels()
:获取所有可用模型列表
- 支持在请求时通过options指定模型
-
优化AISummarizer模块
- 重构摘要生成接口,支持自定义语言和长度
- 增加JSON格式响应支持,提升数据处理效率
- 完善错误处理机制,提供更详细的错误信息
-
改进ContentRanker模块
- 优化内容排名算法,提升准确性
- 支持自定义排名规则和权重
- 增加批量处理能力
- 封装RetryUtil工具类
- 实现统一的重试机制,支持自定义重试策略
- 添加指数退避算法,优化重试间隔
- 提供详细的重试日志,便于问题排查
- 重构环境变量配置
- 优化配置项结构,提升可维护性
- 支持多环境配置,便于开发和部署
- 完善配置文档,提供详细的配置说明
- 优化项目目录结构,提升代码组织性
- 更新依赖包版本,修复潜在安全问题
- 完善错误处理机制,提供更友好的错误提示
- 增加单元测试覆盖率,提升代码质量
- 更新环境变量配置文档
- 完善API接口文档
- 添加开发指南和最佳实践
- 升级sharp至0.33.5
- 升级mysql2至3.12.0
- 升级typeorm至0.3.20
- 升级其他依赖包到最新稳定版本