platform-assistant/apps/api/src/lead/lead.module.ts
Sisyphus eb15849168 feat: 询价标题AI压缩 + 采集器品类化 + 询价搜索与品类多选框
- TitleCompressorService: 发布前超长标题(>50字)调 MiniMax 压缩(保留公司名+物料+采购类型), JSON结构化输出对抗推理模型思考噪音, 失败硬截断兜底
- publishToDirev 集成标题压缩, 保留原50字预校验作为防御
- crawler resolveKeywords: 采集器配置优先按关联品类展开关键词库, 中电建每关键词独立状态文件
- InquiryPage: 新增关键词搜索(fSearch → GET /api/leads?search=)
- RuleCenterPage: 采集器配置由 keywords 改为品类多选框(categories JSON数组)
2026-09-30 09:34:58 +08:00

19 lines
888 B
TypeScript

import { Module } from '@nestjs/common'
import { PrismaModule } from '../prisma/prisma.module'
import { IntegrationModule } from '../integration/integration.module'
import { CrawlerModule } from '../crawler/crawler.module'
import { ProductCategoryModule } from '../product-category/product-category.module'
import { LeadService } from './lead.service'
import { MaterialExtractorService } from './material-extractor.service'
import { TitleCompressorService } from './title-compressor.service'
import { LeadController } from './lead.controller'
import { LeadNotesController } from './lead-notes.controller'
@Module({
imports: [PrismaModule, IntegrationModule, CrawlerModule, ProductCategoryModule],
controllers: [LeadController, LeadNotesController],
providers: [LeadService, MaterialExtractorService, TitleCompressorService],
exports: [LeadService],
})
export class LeadModule {}