构建了从照片到药品档案的自动化处理流程,通过GLM多模态大模型实现药品信息的智能采集: 核心能力: - 创建任务追踪表 t_medication_recognition_tasks 存储识别任务状态 - 四阶段渐进式分析:基础识别→人群适配→成分解析→风险评估 - 提供三个REST端点支持任务创建、进度查询和结果确认 - 前端可通过轮询方式获取0-100%的实时进度反馈 - VIP用户免费使用,普通用户按次扣费 技术实现: - 利用GLM-4V-Plus模型处理多角度药品图像(正面+侧面+说明书) - 采用GLM-4-Flash模型进行文本深度分析 - 异步任务执行机制避免接口阻塞 - 完整的异常处理和任务失败恢复策略 - 新增AI_RECOGNITION.md文档详细说明集成方式 同步修复: - 修正会员用户AI配额扣减逻辑,避免不必要的次数消耗 - 优化APNs推送中无效设备令牌的检测和清理流程 - 将服药提醒的提前通知时间从15分钟缩短为5分钟
67 lines
2.3 KiB
TypeScript
67 lines
2.3 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { SequelizeModule } from '@nestjs/sequelize';
|
|
import { ScheduleModule } from '@nestjs/schedule';
|
|
import { ConfigModule } from '@nestjs/config';
|
|
|
|
// Models
|
|
import { Medication } from './models/medication.model';
|
|
import { MedicationRecord } from './models/medication-record.model';
|
|
import { MedicationRecognitionTask } from './models/medication-recognition-task.model';
|
|
|
|
// Controllers
|
|
import { MedicationsController } from './medications.controller';
|
|
import { MedicationRecordsController } from './medication-records.controller';
|
|
import { MedicationStatsController } from './medication-stats.controller';
|
|
|
|
// Services
|
|
import { MedicationsService } from './medications.service';
|
|
import { MedicationRecordsService } from './medication-records.service';
|
|
import { MedicationStatsService } from './medication-stats.service';
|
|
import { RecordGeneratorService } from './services/record-generator.service';
|
|
import { StatusUpdaterService } from './services/status-updater.service';
|
|
import { MedicationReminderService } from './services/medication-reminder.service';
|
|
import { MedicationAnalysisService } from './services/medication-analysis.service';
|
|
import { MedicationRecognitionService } from './services/medication-recognition.service';
|
|
|
|
// Import PushNotificationsModule for reminders
|
|
import { PushNotificationsModule } from '../push-notifications/push-notifications.module';
|
|
// Import UsersModule for authentication
|
|
import { UsersModule } from '../users/users.module';
|
|
|
|
/**
|
|
* 药物管理模块
|
|
*/
|
|
@Module({
|
|
imports: [
|
|
ConfigModule, // AI 配置
|
|
SequelizeModule.forFeature([
|
|
Medication,
|
|
MedicationRecord,
|
|
MedicationRecognitionTask,
|
|
]),
|
|
ScheduleModule.forRoot(), // 启用定时任务
|
|
PushNotificationsModule, // 推送通知功能
|
|
UsersModule, // 用户认证服务
|
|
],
|
|
controllers: [
|
|
MedicationsController,
|
|
MedicationRecordsController,
|
|
MedicationStatsController,
|
|
],
|
|
providers: [
|
|
MedicationsService,
|
|
MedicationRecordsService,
|
|
MedicationStatsService,
|
|
RecordGeneratorService,
|
|
StatusUpdaterService,
|
|
MedicationReminderService,
|
|
MedicationAnalysisService, // AI 分析服务
|
|
MedicationRecognitionService, // AI 识别服务
|
|
],
|
|
exports: [
|
|
MedicationsService,
|
|
MedicationRecordsService,
|
|
MedicationStatsService,
|
|
],
|
|
})
|
|
export class MedicationsModule {} |