feat(ai): 支持多语言AI分析响应并优化药品识别流程

- 饮食分析与药品分析服务新增多语言支持(zh-CN/en-US),根据用户偏好动态调整 Prompt 和返回信息
- 重构药品识别流程,利用 GLM-4.5v 模型将多阶段分析合并为单次全量分析,提升响应速度
- 增加用户语言获取逻辑,并在异步任务状态更新中支持本地化文案
- 移除废弃的药品分析 V1 接口,升级底层模型配置
This commit is contained in:
richarjiang
2025-11-28 16:02:16 +08:00
parent 43f378d44d
commit ff2dfd5bb3
10 changed files with 335 additions and 396 deletions

View File

@@ -197,6 +197,22 @@ export class UsersService {
}
}
async getUserLanguage(userId: string): Promise<string> {
try {
const user = await this.userModel.findOne({ where: { id: userId } });
if (!user) {
this.logger.warn(`getUserLanguage: ${userId} not found, default zh-CN`);
return 'zh-CN';
}
return user.language || 'zh-CN';
} catch (error) {
this.logger.error(`getUserLanguage error: ${error instanceof Error ? error.message : String(error)}`);
return 'zh-CN';
}
}
// 扣减用户免费次数
async deductUserUsageCount(userId: string, count: number = 1): Promise<void> {
try {