feat(asl): Add DeepSearch smart literature retrieval MVP
Features: - Integrate unifuncs DeepSearch API (OpenAI compatible protocol) - SSE real-time streaming for AI thinking process display - Natural language input, auto-generate PubMed search strategy - Extract and display PubMed literature links - Database storage for task records (asl_research_tasks) Backend: - researchService.ts - Core business logic with SSE streaming - researchController.ts - SSE stream endpoint - researchWorker.ts - Async task worker (backup mode) - schema.prisma - AslResearchTask model Frontend: - ResearchSearch.tsx - Search page with unified content stream - ResearchSearch.css - Styling (unifuncs-inspired simple design) - ASLLayout.tsx - Enable menu item - api/index.ts - Add research API functions API Endpoints: - POST /api/v1/asl/research/stream - SSE streaming search - POST /api/v1/asl/research/tasks - Async task creation - GET /api/v1/asl/research/tasks/:taskId/status - Task status Documentation: - Development record for DeepSearch integration - Update ASL module status (v1.5) - Update system status (v3.7) Known limitations: - SSE mode, task interrupts when leaving page - Cost ~0.3 RMB per search (unifuncs API)
This commit is contained in:
@@ -21,6 +21,7 @@ import { authRoutes, registerAuthPlugin } from './common/auth/index.js';
|
||||
import { promptRoutes } from './common/prompt/index.js';
|
||||
import { registerTestRoutes } from './test-platform-api.js';
|
||||
import { registerScreeningWorkers } from './modules/asl/services/screeningWorker.js';
|
||||
import { registerResearchWorker } from './modules/asl/workers/researchWorker.js';
|
||||
import { registerExtractionWorkers } from './modules/dc/tool-b/workers/extractionWorker.js';
|
||||
import { registerParseExcelWorker } from './modules/dc/tool-c/workers/parseExcelWorker.js';
|
||||
import { registerReviewWorker } from './modules/rvw/workers/reviewWorker.js';
|
||||
@@ -206,6 +207,10 @@ const start = async () => {
|
||||
registerScreeningWorkers();
|
||||
logger.info('✅ ASL screening workers registered');
|
||||
|
||||
// 注册ASL智能文献检索Worker
|
||||
registerResearchWorker();
|
||||
logger.info('✅ ASL research worker registered');
|
||||
|
||||
// 注册DC提取Workers
|
||||
registerExtractionWorkers();
|
||||
logger.info('✅ DC extraction workers registered');
|
||||
|
||||
Reference in New Issue
Block a user