Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
21 KiB
銝衤<EFBFBD><EFBFBD>嗆挾銵<EFBFBD>𢆡霈∪<EFBFBD> V2.0 - 璅∪<E79285><E288AA>𡝗沲<F0A19D97><E6B2B2><EFBFBD><EFBFBD>?
*霈∪<EFBFBD><EFBFBD>冽<EFBFBD>嚗? 2025-11-07 <20>?2025-12-13嚗?<3F>剁<EFBFBD>
*<EFBFBD>詨<EFBFBD><EFBFBD>格<EFBFBD>嚗? 撱箇<E692B1><E7AE87>舐𡠺蝡钅<E89DA1>蝵脩<E89DB5>璅∪<E79285><E288AA>𡝗沲<F0A19D97>?+ 摰峕<E691B0>ASL<53>詨<EFBFBD><E8A9A8>蠘<EFBFBD>
*<EFBFBD>嗅<EFBFBD><EFBFBD>園𡢿嚗? 2025-11-07
*<EFBFBD><EFBFBD>𧋦嚗? V2.0嚗<EFBFBD>沲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
<EFBFBD>㴓 <20>条裦靚<E8A3A6>㟲霂湔<E99C82>
銝箔<EFBFBD>銋<EFBFBD><EFBFBD>靚<EFBFBD>㟲嚗?
<EFBFBD>蠘恣<EFBFBD>𡜐<EFBFBD>V1.0嚗㚁<EFBFBD> 敹恍<E695B9>笔鍳<E7AC94>杗SL撘<4C><E69298>𡢅<EFBFBD><F0A1A285><EFBFBD><EFBFBD>Schema<6D>𠉛氖
<EFBFBD>啗恣<EFBFBD>𡜐<EFBFBD>V2.0嚗㚁<EFBFBD> <20><><EFBFBD>憟賣沲<E8B3A3><E6B2B2>抅蝖<E68A85>嚗<EFBFBD><E59A97>撘<EFBFBD><E69298>睲<EFBFBD><E79DB2>∪<EFBFBD><E288AA>?
<EFBFBD>詨<EFBFBD><EFBFBD>睃<EFBFBD>
| 憿寧𤌍 | V1.0 | V2.0 | <EFBFBD>笔<EFBFBD> |
|---|---|---|---|
| Schema<EFBFBD>𠉛氖 | <EFBFBD>?<3F><><EFBFBD> | <EFBFBD>?敹<><E695B9> | <EFBFBD>祉<EFBFBD><EFBFBD>函蔡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>? |
| 璅∪<EFBFBD><EFBFBD>祉<EFBFBD><EFBFBD>? | <EFBFBD><EFBFBD> 霈∪<E99C88>銝? | 潃?<3F><>擃䀝<E69383><E4809D><EFBFBD>漣 | 90%<25>祉<EFBFBD><E7A589>函蔡<E587BD><E894A1>瘙? |
| 撘<EFBFBD><EFBFBD>煾<EFBFBD><EFBFBD>? | ASL<EFBFBD>閙芋<EFBFBD>? | ASL+DC+RVW銝㗇芋<E39787>? | 蝏煺<EFBFBD><EFBFBD>嗆<EFBFBD><EFBFBD><EFBFBD><EFBFBD> |
| <EFBFBD>園𡢿<EFBFBD><EFBFBD><EFBFBD> | 1<EFBFBD>典抅蝖<EFBFBD>+3<>典<EFBFBD><E585B8>? | 2<EFBFBD>典抅蝖<EFBFBD>+3<>典<EFBFBD><E585B8>? | <EFBFBD>嗆<EFBFBD><EFBFBD>訫<EFBFBD>憓𧼮<EFBFBD> |
<EFBFBD><EFBFBD> <20>港<EFBFBD>閫<EFBFBD><E996AB> - 鈭𥪜𪂹鈭娪𧫴畾?
Week 1-2嚗<32>沲<EFBFBD><E6B2B2>抅蝖<E68A85>嚗? Week 3-4嚗<34>瓲敹<E793B2><E695B9><EFBFBD>踝<EFBFBD> Week 5嚗<35><E59A97>霂蓥<E99C82><E893A5>吔<EFBFBD>
Schema<6D>𠉛氖+璅∪<E79285><E288AA>𡝗沲<F0A19D97>? <20>? ASL<53><4C><EFBFBD><EFBFBD>䁅<EFBFBD><E48185>萘<EFBFBD>+<2B>冽<EFBFBD>憭滨<E686AD> <20>? 憭𡁏芋<F0A1818F>𡑒<EFBFBD>靚?瘚贝<E7989A>
| <EFBFBD>嗆挾 | <EFBFBD>園𡢿 | <EFBFBD>詨<EFBFBD>隞餃𦛚 | 鈭支<EFBFBD><EFBFBD>鞉<EFBFBD> | 隡睃<EFBFBD>蝥? |
|---|---|---|---|---|
| <EFBFBD>嗆挾1 | Week 1 | Schema<EFBFBD>𠉛氖<EFBFBD>寞<EFBFBD> | 8銝杵chema霈曇恣+餈<>宏霈∪<E99C88> | P0 潃鐥<E6BD83>潃? |
| <EFBFBD>嗆挾2 | Week 2 | 璅∪<EFBFBD><EFBFBD>𡝗沲<EFBFBD><EFBFBD><EFBFBD><EFBFBD>? | 隞<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<2B>祉<EFBFBD><E7A589>函蔡<E587BD>賢<EFBFBD> | P0 潃鐥<E6BD83>潃? |
| <EFBFBD>嗆挾3 | Week 3 | ASL<EFBFBD><EFBFBD><EFBFBD><EFBFBD>䁅<EFBFBD><EFBFBD>萘<EFBFBD> | <EFBFBD>峕芋<EFBFBD>讠<EFBFBD><EFBFBD>匧<EFBFBD><EFBFBD>? | P0 潃鐥<E6BD83> |
| <EFBFBD>嗆挾4 | Week 4 | ASL<EFBFBD>冽<EFBFBD>憭滨<EFBFBD> | PDF<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蠘<EFBFBD> | P0 潃鐥<E6BD83> |
| <EFBFBD>嗆挾5 | Week 5 | 憭𡁏芋<EFBFBD>𡑒<EFBFBD>靚<EFBFBD><EFBFBD>霂? | 銝㗇芋<EFBFBD>堒<EFBFBD><EFBFBD><EFBFBD>極雿? | P1 潃? |
<EFBFBD><EFBFBD>儭?<3F>詨<EFBFBD><E8A9A8>嗆<EFBFBD>霈曇恣
銝匧之<EFBFBD>祉<EFBFBD>璅∪<EFBFBD>
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<0A>? 鈭𤑳垢蝏煺<E89D8F>撟喳蝱 <20>?
<0A>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>?
<0A>? <20>? ASL <20>? <20>? DC <20>? <20>? RVW <20>? <20>?
<0A>? <20><>I<EFBFBD>箄<EFBFBD><E7AE84><EFBFBD>讃<EFBFBD>? <20>?<3F>唳旿皜<E697BF><E79A9C> <20>? <20>?摰∠阮蝟餌<E89D9F> <20>? <20>?
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>?
<0A>? <20>? <20>? <20>? <20>?
<0A>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>?
<0A>? <20><>sl_schema<6D>? <20><>c_schema <20>? <20><>vw_schema<6D>? <20>?
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>?
<0A>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<20>?
瘥譍葵璅∪<E79285><E288AA>賢虾隞亦𡠺蝡钅<E89DA1>蝵?90%
璅∪<EFBFBD><EFBFBD>祉<EFBFBD><EFBFBD>扯挽霈∪<EFBFBD><EFBFBD>?
<EFBFBD>祉<EFBFBD><EFBFBD><EFBFBD><EFBFBD>90%嚗㚁<E59A97>
- <EFBFBD>?<3F>祉<EFBFBD><E7A589><EFBFBD>㺭<EFBFBD>桀<EFBFBD>Schema
- <EFBFBD>?<3F>祉<EFBFBD><E7A589><EFBFBD>PI頝舐眏嚗?api/asl/, /api/dc/, /api/rvw/*嚗?
- <EFBFBD>?<3F>祉<EFBFBD><E7A589><EFBFBD><EFBFBD>蝡舫△<E888AB>?
- <EFBFBD>?<3F>祉<EFBFBD><E7A589><EFBFBD><EFBFBD>蝵脣<E89DB5>
- <EFBFBD>?<3F>祉<EFBFBD><E7A589><EFBFBD><EFBFBD>蝵格<E89DB5>隞?
<EFBFBD>曹澈<EFBFBD><EFBFBD><EFBFBD>10%嚗㚁<E59A97>
- <EFBFBD><EFBFBD> <20>冽<EFBFBD>霈方<E99C88>嚗īlatform_schema.users嚗?
- <EFBFBD><EFBFBD> LLM蝵穃<E89DB5>嚗Ếommon撅<6E><E69285>
- <EFBFBD><EFBFBD> <20>箇<EFBFBD>UI蝏<49>辣
- <EFBFBD><EFBFBD> <20>函蔡<E587BD>箇<EFBFBD>霈暹鴌
<EFBFBD><EFBFBD> <20>嗆挾1嚗锭chema<6D>𠉛氖<F0A0899B>寞<EFBFBD>嚗Áeek 1嚗?
*<EFBFBD>園𡢿嚗? 2025-11-07 <20>?2025-11-13嚗?憭抬<E686AD>
*<EFBFBD>格<EFBFBD>嚗? 摰峕<E691B0>8銝杵chema霈曇恣<E69B87>峕㺭<E5B395>桀<EFBFBD>餈<EFBFBD>宏
<EFBFBD>詨<EFBFBD><EFBFBD>格<EFBFBD>
銝箔<EFBFBD>銋<EFBFBD><EFBFBD><EFBFBD>狸eek 1<><31><EFBFBD>銝凋<E98A9D><E5878B>㵪<EFBFBD>
- Schema<EFBFBD>𠉛氖<EFBFBD>舐𡠺蝡钅<EFBFBD>蝵脩<EFBFBD><EFBFBD>齿<EFBFBD><EFBFBD>∩辣
- 敶勗<EFBFBD><EFBFBD>𡒊賒<EFBFBD><EFBFBD><EFBFBD>劐誨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>唳旿霈輸䔮<EFBFBD>孵<EFBFBD>
- 頞𦠜𡟺<EFBFBD>𡄯<EFBFBD><EFBFBD>𡒊賒<EFBFBD>孵𢆡<EFBFBD>鞉𧋦頞𠹺<EFBFBD>
- 銝箔<EFBFBD>憭扳芋<EFBFBD>梹<EFBFBD>ASL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW嚗匧遣蝡𧢲<EFBFBD><EFBFBD>啗器<EFBFBD>?
Day 1-2嚗锭chema霈曇恣
8銝杵chema<EFBFBD>鍦<EFBFBD><EFBFBD>寞<EFBFBD>
| Schema<EFBFBD>滨妍 | <EFBFBD>券<EFBFBD>? | <EFBFBD>詨<EFBFBD>銵? | 隡睃<EFBFBD>蝥? |
|---|---|---|---|
| platform_schema | 撟喳蝱<EFBFBD>箇<EFBFBD> | users, roles, permissions | P0 潃? |
| aia_schema | AI<EFBFBD>桃<EFBFBD> | projects, conversations, messages | P1 |
| asl_schema | AI<EFBFBD>箄<EFBFBD><EFBFBD><EFBFBD>讃 | literature_projects, literature_items, screening_results | P0 潃鐥<E6BD83>潃? |
| dc_schema | <EFBFBD>唳旿皜<EFBFBD><EFBFBD> | cleaning_projects, datasets, cleaning_rules | P0 潃鐥<E6BD83> |
| rvw_schema | 摰∠阮蝟餌<EFBFBD> | manuscripts, reviews,霂<>摯<EFBFBD><E691AF><EFBFBD> | P0 潃鐥<E6BD83> |
| pkb_schema | <EFBFBD>亥<EFBFBD>摨? | knowledge_bases, documents | P1 |
| admin_schema | 餈鞱𨯫蝞∠<EFBFBD> | system_logs, statistics | P2 |
| common_schema | <EFBFBD>𡁶鍂<EFBFBD>唳旿 | llm_usage, feature_flags | P1 |
<EFBFBD>滨<EFBFBD><EFBFBD>單釣銝匧之璅∪<EFBFBD>
*ASL嚗㇁I<EFBFBD>箄<EFBFBD><EFBFBD><EFBFBD>讃嚗农chema嚗?
-- asl_schema
CREATE SCHEMA asl_schema;
-- <20><>讃憿寧𤌍銵?
CREATE TABLE asl_schema.literature_projects (
id UUID PRIMARY KEY,
user_id UUID REFERENCES platform_schema.users(id),
name VARCHAR(200) NOT NULL,
description TEXT,
status VARCHAR(50),
created_at TIMESTAMP,
updated_at TIMESTAMP
);
-- PICO<43>滨蔭銵?
CREATE TABLE asl_schema.pico_configs (
id UUID PRIMARY KEY,
project_id UUID REFERENCES asl_schema.literature_projects(id) ON DELETE CASCADE,
population TEXT NOT NULL,
intervention TEXT NOT NULL,
comparison TEXT NOT NULL,
outcome TEXT NOT NULL,
study_design TEXT NOT NULL
);
-- <20><>讃<EFBFBD>∠𤌍銵?
CREATE TABLE asl_schema.literature_items (
id UUID PRIMARY KEY,
project_id UUID REFERENCES asl_schema.literature_projects(id) ON DELETE CASCADE,
title TEXT NOT NULL,
abstract TEXT,
authors TEXT,
journal VARCHAR(200),
year INTEGER,
doi VARCHAR(200),
-- 蝑偦<E89D91>厩<EFBFBD><E58EA9>?
screening_status VARCHAR(50) DEFAULT 'pending',
final_decision VARCHAR(50),
ai_model1_decision VARCHAR(50),
ai_model2_decision VARCHAR(50),
ai_reason TEXT,
-- <20>冽<EFBFBD>
fulltext_path TEXT,
fulltext_extracted TEXT,
created_at TIMESTAMP,
updated_at TIMESTAMP
);
*DC嚗<EFBFBD>㺭<EFBFBD>格<EFBFBD>瘣梹<EFBFBD>Schema嚗?
-- dc_schema
CREATE SCHEMA dc_schema;
CREATE TABLE dc_schema.cleaning_projects (
id UUID PRIMARY KEY,
user_id UUID REFERENCES platform_schema.users(id),
name VARCHAR(200) NOT NULL,
dataset_type VARCHAR(100),
status VARCHAR(50),
created_at TIMESTAMP
);
CREATE TABLE dc_schema.datasets (
id UUID PRIMARY KEY,
project_id UUID REFERENCES dc_schema.cleaning_projects(id) ON DELETE CASCADE,
file_name VARCHAR(500),
file_path TEXT,
row_count INTEGER,
column_count INTEGER,
created_at TIMESTAMP
);
CREATE TABLE dc_schema.cleaning_rules (
id UUID PRIMARY KEY,
project_id UUID REFERENCES dc_schema.cleaning_projects(id) ON DELETE CASCADE,
rule_type VARCHAR(100),
rule_config JSONB,
apply_order INTEGER
);
*RVW嚗<EFBFBD>恣蝔輻頂蝏<EFBFBD><EFBFBD>Schema嚗?
-- rvw_schema
CREATE SCHEMA rvw_schema;
CREATE TABLE rvw_schema.manuscripts (
id UUID PRIMARY KEY,
user_id UUID REFERENCES platform_schema.users(id),
title TEXT NOT NULL,
abstract TEXT,
fulltext_path TEXT,
journal_target VARCHAR(200),
status VARCHAR(50),
created_at TIMESTAMP
);
CREATE TABLE rvw_schema.reviews (
id UUID PRIMARY KEY,
manuscript_id UUID REFERENCES rvw_schema.manuscripts(id) ON DELETE CASCADE,
review_type VARCHAR(100), -- methodology, journal_requirements
score DECIMAL(5,2),
comments TEXT,
suggestions TEXT,
created_at TIMESTAMP
);
CREATE TABLE rvw_schema.evaluation_criteria (
id UUID PRIMARY KEY,
type VARCHAR(100), -- methodology, journal
criteria_name VARCHAR(200),
criteria_content TEXT
);
Day 1隞餃𦛚皜<F0A69B9A><E79A9C>
- 蝏睃<EFBFBD>摰峕㟲<EFBFBD><EFBFBD>chema<EFBFBD>喟頂<EFBFBD>?
- 霈曇恣8銝杵chema<EFBFBD><EFBFBD>”蝏𤘪<EFBFBD>
- <EFBFBD>滨<EFBFBD>嚗朞祕蝏<EFBFBD>挽霈,SL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW銝劐葵Schema
- 霈曇恣頝沒chema<EFBFBD><EFBFBD><EFBFBD><EFBFBD>桀<EFBFBD><EFBFBD>刻<EFBFBD><EFBFBD>?
- 蝻硋<EFBFBD>Schema霈曇恣<EFBFBD><EFBFBD>﹝
*颲枏枂<EFBFBD><EFBFBD>﹝嚗?
09-<2D>嗆<EFBFBD>摰墧鴌/01-Schema<6D>𠉛氖霂衣<E99C82>霈曇恣.md
Day 2嚗𡁏㺭<F0A1818F>株<EFBFBD>蝘餉恣<E9A489>?
<EFBFBD>唳<EFBFBD>銵典<EFBFBD>蝐鳴<EFBFBD>
| <EFBFBD>唳<EFBFBD>銵? | 餈<EFBFBD>宏<EFBFBD>? | 隡睃<EFBFBD>蝥? |
|---|---|---|
| users, roles | platform_schema | P0 |
| projects, conversations, messages | aia_schema | P1 |
| knowledge_bases, documents | pkb_schema | P1 |
| 嚗<EFBFBD>鰵撱綽<EFBFBD>literature_* | asl_schema | P0 |
| 嚗<EFBFBD>鰵撱綽<EFBFBD>cleaning_* | dc_schema | P0 |
| 嚗<EFBFBD>鰵撱綽<EFBFBD>manuscripts, reviews | rvw_schema | P0 |
*餈<EFBFBD>宏蝑𣇉裦嚗?
-
*<EFBFBD>嗆挾<EFBFBD>扯<EFBFBD>蝘?
- Phase 1嚗𡁜<E59A97>撱箸<E692B1><E7AEB8>农chema嚗?<3F><><EFBFBD>嚗?
- Phase 2嚗朞<E59A97>蝘裴latform<72>詨<EFBFBD>銵剁<E98AB5>30<33><30><EFBFBD>嚗?
- Phase 3嚗朞<E59A97>蝘翠IA<49>釶KB銵剁<E98AB5>1撠𤩺𧒄嚗?
- Phase 4嚗𡁜<E59A97>撱態SL/DC/RVW<56>啗”嚗?0<><30><EFBFBD>嚗?
-
*<EFBFBD>嗅<EFBFBD><EFBFBD>箄<EFBFBD>蝘?
- 雿輻鍂<EFBFBD>唳旿摨栞<EFBFBD><EFBFBD>曆<EFBFBD>銝箄<EFBFBD>皜?
- <EFBFBD>鞉郊<EFBFBD><EFBFBD>揢摨𠉛鍂隞<EFBFBD><EFBFBD>
- 靽萘<EFBFBD><EFBFBD>扯”雿靝蛹憭<EFBFBD>遢
*Day 2隞餃𦛚皜<F0A69B9A><E79A9C>嚗?
- 蝻硋<EFBFBD>SQL餈<EFBFBD>宏<EFBFBD>𡁏𧋦
- 霈曇恣<EFBFBD>唳旿撉諹<EFBFBD><EFBFBD>寞<EFBFBD>
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>墧<EFBFBD><EFBFBD>寞<EFBFBD>
- <EFBFBD>冽<EFBFBD>霂閧㴓憓<EFBFBD><EFBFBD>霂?
*颲枏枂<EFBFBD><EFBFBD>﹝嚗?
09-<2D>嗆<EFBFBD>摰墧鴌/02-<2D>唳旿摨栞<E691A8>蝘餉恣<E9A489>?md09-<2D>嗆<EFBFBD>摰墧鴌/migration-scripts/
Day 3-4嚗𡁏<E59A97>銵玺chema餈<61>宏
Day 3嚗𡁏<E59A97>霂閧㴓憓<E3B493><E68693>蝘?
*銝𠰴<EFBFBD>嚗𡁜<EFBFBD>憭<EFBFBD>極雿?
- 憭<EFBFBD>遢瘚贝<EFBFBD><EFBFBD>唳旿摨?
- <EFBFBD>𥕦遣8銝杵chema
- 餈鞱<EFBFBD>餈<EFBFBD>宏<EFBFBD>𡁏𧋦嚗㇊latform + AIA + PKB嚗?
銝见<EFBFBD>嚗𡁻<EFBFBD>霂<EFBFBD><EFBFBD>瘚贝<EFBFBD>
- <EFBFBD>唳旿摰峕㟲<EFBFBD>折<EFBFBD>霂?
- <EFBFBD>唳<EFBFBD><EFBFBD>蠘<EFBFBD>瘚贝<EFBFBD>嚗㇁I<EFBFBD>桃<EFBFBD><EFBFBD><EFBFBD>䰻霂<EFBFBD><EFBFBD>嚗?
- 靽桀<EFBFBD><EFBFBD>𤑳緵<EFBFBD><EFBFBD>䔮憸?
Day 4嚗𡁶<E59A97>鈭抒㴓憓<E3B493><E68693>蝘?+ <20>訕chema<6D>𥕦遣
*銝𠰴<EFBFBD>嚗𡁶<EFBFBD>鈭抒㴓憓<EFBFBD><EFBFBD>蝘?
- 憭<EFBFBD>遢<EFBFBD>煺漣<EFBFBD>唳旿摨?
- <EFBFBD>扯<EFBFBD>Schema餈<EFBFBD>宏
- <EFBFBD>唳旿撉諹<EFBFBD>
銝见<EFBFBD>嚗𡁜<EFBFBD>撱態SL/DC/RVW Schema
- <EFBFBD>𥕦遣asl_schema<EFBFBD>𦠜<EFBFBD><EFBFBD>㕑”
- <EFBFBD>𥕦遣dc_schema<EFBFBD>𦠜<EFBFBD><EFBFBD>㕑”
- <EFBFBD>𥕦遣rvw_schema<EFBFBD>𦠜<EFBFBD><EFBFBD>㕑”
- <EFBFBD>𥕦遣敹<EFBFBD><EFBFBD><EFBFBD><EFBFBD>揣撘?
*撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?
- 8銝杵chema<EFBFBD>券<EFBFBD><EFBFBD>𥕦遣摰峕<EFBFBD>
- <EFBFBD>唳<EFBFBD><EFBFBD>蠘<EFBFBD>甇<EFBFBD>虜餈鞱<EFBFBD>
- 銝匧之璅∪<EFBFBD>Schema<EFBFBD><EFBFBD><EFBFBD>撠梁貌
Day 5嚗䥪risma Schema<6D>湔鰵
*<EFBFBD>詨<EFBFBD>隞餃𦛚嚗?
- <EFBFBD>湔鰵Prisma Schema<6D>滨蔭嚗<E894AD>𣈲<EFBFBD><F0A388B2><EFBFBD>Schema嚗?
- 銝態SL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW<EFBFBD>𥕦遣Prisma璅∪<EFBFBD>
- <EFBFBD><EFBFBD><EFBFBD>Prisma Client
- <EFBFBD>湔鰵<EFBFBD>唳<EFBFBD>隞<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㺭<EFBFBD>桀<EFBFBD><EFBFBD>亥砭
*Prisma憭锭chema<EFBFBD>滨蔭蝷箔<EFBFBD>嚗?
// schema.prisma
generator client {
provider = "prisma-client-js"
previewFeatures = ["multiSchema"]
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
schemas = ["platform_schema", "aia_schema", "asl_schema", "dc_schema", "rvw_schema", "pkb_schema", "admin_schema", "common_schema"]
}
// Platform Schema
model User {
id String @id @default(uuid())
email String @unique
password String
role String
createdAt DateTime @default(now())
@@map("users")
@@schema("platform_schema")
}
// ASL Schema
model LiteratureProject {
id String @id @default(uuid())
userId String
name String
description String?
status String @default("active")
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
picoConfig PICOConfig?
items LiteratureItem[]
@@map("literature_projects")
@@schema("asl_schema")
}
model PICOConfig {
id String @id @default(uuid())
projectId String @unique
population String
intervention String
comparison String
outcome String
studyDesign String
project LiteratureProject @relation(fields: [projectId], references: [id], onDelete: Cascade)
@@map("pico_configs")
@@schema("asl_schema")
}
// ... <20>嗡<EFBFBD>璅∪<E79285>
*撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?
- Prisma Schema<6D>舀<EFBFBD>8銝杵chema
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>lient<EFBFBD>臭誑甇<EFBFBD>&霈輸䔮<EFBFBD><EFBFBD><EFBFBD>农chema
- 蝐餃<EFBFBD>摰帋<EFBFBD>摰峕㟲
Week 1 <20>餌<EFBFBD>
*鈭支<EFBFBD><EFBFBD>鞉<EFBFBD>嚗?
- <EFBFBD>?8銝杵chema霈曇恣摰峕<E691B0>
- <EFBFBD>?<3F>唳旿摨栞<E691A8>蝘餃<E89D98><E9A483>?
- <EFBFBD>?Prisma Schema<6D>湔鰵摰峕<E691B0>
- <EFBFBD>?ASL<53><4C>C<EFBFBD><43>VW銝匧之璅∪<E79285><E288AA>唳旿摨枏停蝏?
*撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?
- <EFBFBD><EFBFBD><EFBFBD>厩緵<EFBFBD>匧<EFBFBD><EFBFBD>賣迤撣貉<EFBFBD>銵?
- <EFBFBD>唳旿摨枏<EFBFBD><EFBFBD>湔<EFBFBD>?00%
- Prisma Client甇<74>虜撌乩<E6928C>
- 銝匧之璅∪<EFBFBD><EFBFBD>臭誑撘<EFBFBD>憪见<EFBFBD><EFBFBD>?
<EFBFBD>圲 <20>嗆挾2嚗𡁏芋<F0A1818F>堒<EFBFBD><E5A092>嗆<EFBFBD>摰墧鴌嚗Áeek 2嚗?
*<EFBFBD>園𡢿嚗? 2025-11-14 <20>?2025-11-20嚗?憭抬<E686AD>
*<EFBFBD>格<EFBFBD>嚗? 撱箇<E692B1>皜<EFBFBD>苊<EFBFBD><E88B8A>誨<EFBFBD><E8AAA8><EFBFBD>撅?+ 摰䂿緵璅∪<E79285><E288AA>祉<EFBFBD><E7A589>函蔡<E587BD>賢<EFBFBD>
<EFBFBD>詨<EFBFBD><EFBFBD>格<EFBFBD>
*撱箇<EFBFBD>銝匧<EFBFBD><EFBFBD>嗆<EFBFBD> + 璅∪<E79285><E288AA>祉<EFBFBD><E7A589>?
backend/
<0A>鎿<EFBFBD><E98EBF><EFBFBD> platform/ # 撟喳蝱<E596B3>箇<EFBFBD>撅?
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> auth/ # 霈方<E99C88><E696B9><EFBFBD><EFBFBD>嚗<EFBFBD><E59A97>鈭恬<E988AD>
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> permission/ # <20><><EFBFBD>蝞∠<E89D9E>
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> storage/ # 摮睃<E691AE><E79D83>滚𦛚
<0A>?
<0A>鎿<EFBFBD><E98EBF><EFBFBD> common/ # <20>𡁶鍂<F0A181B6>賢<EFBFBD>撅?
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> llm/ # LLM蝵穃<E89DB5> 潃?<3F>詨<EFBFBD>
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> document/ # <20><>﹝憭<EFB99D><E686AD>
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> utils/ # 撌亙<E6928C><E4BA99>賣㺭
<0A>?
<0A>鎿<EFBFBD><E98EBF><EFBFBD> modules/ # 銝𡁜𦛚璅∪<E79285>撅<EFBFBD><E69285><EFBFBD>祉<EFBFBD>嚗?
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> asl/ # AI<41>箄<EFBFBD><E7AE84><EFBFBD>讃 潃鐥<E6BD83>潃?
<0A>? <20>? <20>鎿<EFBFBD><E98EBF><EFBFBD> api/
<0A>? <20>? <20>鎿<EFBFBD><E98EBF><EFBFBD> services/
<0A>? <20>? <20>鎿<EFBFBD><E98EBF><EFBFBD> types/
<0A>? <20>? <20>婙<EFBFBD><E5A999><EFBFBD> standalone.config.ts # <20>祉<EFBFBD><E7A589>函蔡<E587BD>滨蔭
<0A>? <20>?
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> dc/ # <20>唳旿皜<E697BF><E79A9C> 潃鐥<E6BD83>
<0A>? <20>? <20>婙<EFBFBD><E5A999><EFBFBD> standalone.config.ts
<0A>? <20>?
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> rvw/ # 摰∠阮蝟餌<E89D9F> 潃鐥<E6BD83>
<0A>? <20>? <20>婙<EFBFBD><E5A999><EFBFBD> standalone.config.ts
<0A>? <20>?
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> aia/ # AI<41>桃<EFBFBD>
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> pkb/ # <20>亥<EFBFBD>摨?
<0A>?
<0A>婙<EFBFBD><E5A999><EFBFBD> shared/ # <20>曹澈隞<E6BE88><E99A9E>
<20>鎿<EFBFBD><E98EBF><EFBFBD> types/
<20>婙<EFBFBD><E5A999><EFBFBD> interfaces/
Day 1-2嚗帋誨<E5B88B><E8AAA8><EFBFBD><EFBFBD>?+ LLM蝵穃<E89DB5>
Day 1嚗𡁶𤌍敶閖<E695B6><E99696>?
*隞餃𦛚嚗?
- <EFBFBD>𥕦遣銝匧<EFBFBD><EFBFBD>桀<EFBFBD>蝏𤘪<EFBFBD>
- 餈<EFBFBD>宏<EFBFBD>唳<EFBFBD>隞<EFBFBD><EFBFBD><EFBFBD>啣笆摨𠉛𤌍敶?
- 銝態SL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW<EFBFBD>𥕦遣璅∪<EFBFBD>撉冽沲
- <EFBFBD>湔鰵import頝臬<EFBFBD>
*ASL璅∪<EFBFBD><EFBFBD>桀<EFBFBD>蝏𤘪<EFBFBD>嚗?
modules/asl/
<0A>鎿<EFBFBD><E98EBF><EFBFBD> api/
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> projects.ts # 憿寧𤌍蝞∠<E89D9E>API
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> screening.ts # 蝑偦<E89D91>𡅅PI
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> exports.ts # 撖澆枂API
<0A>鎿<EFBFBD><E98EBF><EFBFBD> services/
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> project.service.ts
<0A>? <20>鎿<EFBFBD><E98EBF><EFBFBD> screening.service.ts
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> llm.service.ts # 撠<><E692A0>LLM蝵穃<E89DB5>靚<EFBFBD>鍂
<0A>鎿<EFBFBD><E98EBF><EFBFBD> types/
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> index.ts
<0A>鎿<EFBFBD><E98EBF><EFBFBD> config/
<0A>? <20>婙<EFBFBD><E5A999><EFBFBD> standalone.config.ts # <20>祉<EFBFBD><E7A589>函蔡<E587BD>滨蔭
<0A>婙<EFBFBD><E5A999><EFBFBD> index.ts # 璅∪<E79285><E288AA>亙藁
Day 2嚗匁LM蝵穃<E89DB5>摰䂿緵 潃?<3F>詨<EFBFBD>
*銝箔<EFBFBD>銋𡿨LM蝵穃<EFBFBD>憒<EFBFBD>迨<EFBFBD>滩<EFBFBD>嚗?
- ASL<EFBFBD><EFBFBD><EFBFBD>憸䀹<EFBFBD>閬<EFBFBD><EFBFBD>蝑𥕦<EFBFBD><EFBFBD>其<EFBFBD>韏硋<EFBFBD>
- DC<EFBFBD><EFBFBD>惣<EFBFBD>賣<EFBFBD>瘣堒遣霈桅<EFBFBD>閬<EFBFBD><EFBFBD>
- RVW<EFBFBD><EFBFBD>恣蝔輯<EFBFBD>隡圈<EFBFBD>閬<EFBFBD><EFBFBD>
- 蝏煺<EFBFBD>蝞∠<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𡅅I靚<EFBFBD>鍂
*摰䂿緵隞餃𦛚嚗?
- 摰䂿緵BaseLLMAdapter<EFBFBD>質情蝐?
- 摰䂿緵DeepSeekAdapter
- 摰䂿緵QwenAdapter
- 摰䂿緵LLMGateway銝餅<EFBFBD><EFBFBD>?
- Feature Flag<61><67><EFBFBD>
- <EFBFBD>漤<EFBFBD>璉<EFBFBD><EFBFBD>?
*<EFBFBD>詨<EFBFBD>隞<EFBFBD><EFBFBD>嚗?
// common/llm/LLMGateway.ts
export class LLMGateway {
async call(
userId: string,
model: string,
messages: Message[],
options?: LLMOptions
): Promise<LLMResponse> {
// 1. Feature Flag璉<67><E79289>?
// 2. <20>漤<EFBFBD>璉<EFBFBD><E79289>?
// 3. 靚<>鍂<EFBFBD><E98D82><EFBFBD><EFBFBD>?
// 4. 霈啣<E99C88>雿輻鍂<E8BCBB>?
}
}
*撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?
- <EFBFBD>臭誑靚<EFBFBD>鍂DeepSeek<EFBFBD>熑wen3
- Feature Flag甇<67>虜撌乩<E6928C>
- <EFBFBD>漤<EFBFBD>璉<EFBFBD><EFBFBD>交迤撣?
Day 3-5嚗𡁏芋<F0A1818F>㛖𡠺蝡钅<E89DA1>蝵脰<E89DB5><E884B0>?
Day 3嚗𡁶𡠺蝡钅<E89DA1>蝵脤<E89DB5>蝵?
銝箸<EFBFBD>銝芣芋<EFBFBD>堒<EFBFBD>撱箇𡠺蝡钅<EFBFBD>蝵殷<EFBFBD>
// modules/asl/config/standalone.config.ts
export const ASLStandaloneConfig = {
moduleName: 'ASL',
moduleId: 'asl',
version: '1.0.0',
// <20>祉<EFBFBD><E7A589>函蔡璅∪<E79285>
standalone: {
enabled: process.env.ASL_STANDALONE === 'true',
port: process.env.ASL_PORT || 3001,
apiPrefix: '/api/asl',
},
// 靘肽<E99D98><E882BD><EFBFBD><EFBFBD>鈭急<E988AD><E680A5>?
dependencies: {
auth: {
required: true,
endpoint: process.env.AUTH_SERVICE_URL || 'http://localhost:3000/api/auth',
},
llm: {
required: true,
endpoint: process.env.LLM_SERVICE_URL || 'http://localhost:3000/api/llm',
},
},
// <20>唳旿摨㯄<E691A8>蝵?
database: {
schema: 'asl_schema',
url: process.env.ASL_DATABASE_URL || process.env.DATABASE_URL,
},
};
*隞餃𦛚皜<EFBFBD><EFBFBD>嚗?
- 銝態SL<EFBFBD>𥕦遣standalone.config.ts
- 銝慣C<EFBFBD>𥕦遣standalone.config.ts
- 銝摧VW<EFBFBD>𥕦遣standalone.config.ts
- <EFBFBD>𥕦遣璅∪<EFBFBD><EFBFBD>臬𢆡<EFBFBD>𡁏𧋦
Day 4嚗鋫PI頝舐眏<E88890>𠉛氖
*蝏煺<EFBFBD>API頝舐眏閫<EFBFBD><EFBFBD>嚗?
/api/asl/* - AI<41>箄<EFBFBD><E7AE84><EFBFBD>讃
/api/dc/* - <20>唳旿皜<E697BF><E79A9C>
/api/rvw/* - 摰∠阮蝟餌<E89D9F>
/api/aia/* - AI<41>桃<EFBFBD>
/api/pkb/* - <20>亥<EFBFBD>摨?
*隞餃𦛚嚗?
- <EFBFBD>齿<EFBFBD>API頝舐眏嚗峕<EFBFBD>璅∪<EFBFBD><EFBFBD>鍦<EFBFBD>
- 摰䂿緵頝舐眏蝥批<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鞉<EFBFBD><EFBFBD>?
- 銝箸<EFBFBD>銝芣芋<EFBFBD>堒<EFBFBD>撱箇𡠺蝡讠<EFBFBD>API<EFBFBD><EFBFBD>﹝
Day 5嚗鋽ocker<65>?+ <20>祉<EFBFBD><E7A589>函蔡瘚贝<E7989A>
*銝箸<EFBFBD>銝芣芋<EFBFBD>堒<EFBFBD>撱慣ockerfile嚗?
# modules/asl/Dockerfile
FROM node:18-alpine
WORKDIR /app
# <20>芸<EFBFBD><E88AB8>詛SL璅∪<E79285><E288AA><EFBFBD>閬<EFBFBD><E996AC><EFBFBD><EFBFBD>辣
COPY package*.json ./
COPY tsconfig.json ./
COPY platform/ ./platform/
COPY common/ ./common/
COPY modules/asl/ ./modules/asl/
COPY shared/ ./shared/
RUN npm install
RUN npm run build
ENV ASL_STANDALONE=true
ENV ASL_PORT=3001
EXPOSE 3001
CMD ["node", "dist/modules/asl/index.js"]
*隞餃𦛚嚗?
- 銝態SL<EFBFBD>𥕦遣Dockerfile
- 銝慣C<EFBFBD>𥕦遣Dockerfile
- 銝摧VW<EFBFBD>𥕦遣Dockerfile
- <EFBFBD>𥕦遣docker-compose<73>滨蔭
- 瘚贝<EFBFBD><EFBFBD>祉<EFBFBD><EFBFBD>函蔡
*docker-compose.yml蝷箔<E89DB7>嚗?
version: '3.8'
services:
# 蝏煺<E89D8F><E785BA>函蔡璅∪<E79285>
platform:
build: .
ports:
- "3000:3000"
environment:
- DATABASE_URL=postgresql://...
# <20>祉<EFBFBD><E7A589>函蔡璅∪<E79285>
asl-standalone:
build:
context: .
dockerfile: modules/asl/Dockerfile
ports:
- "3001:3001"
environment:
- ASL_STANDALONE=true
- ASL_DATABASE_URL=postgresql://...
- AUTH_SERVICE_URL=http://platform:3000/api/auth
Week 2 <20>餌<EFBFBD>
*鈭支<EFBFBD><EFBFBD>鞉<EFBFBD>嚗?
- <EFBFBD>?銝匧<E98A9D>隞<EFBFBD><E99A9E><EFBFBD>嗆<EFBFBD>撱箇<E692B1>摰峕<E691B0>
- <EFBFBD>?LLM蝵穃<E89DB5>摰䂿緵摰峕<E691B0>
- <EFBFBD>?ASL<53><4C>C<EFBFBD><43>VW銝㗇芋<E39787>埈𣈲<E59F88><F0A388B2>𡠺蝡钅<E89DA1>蝵?
- <EFBFBD>?Docker<65>硋<EFBFBD><E7A18B>?
*撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?
- 隞<EFBFBD><EFBFBD>蝏𤘪<EFBFBD>皜<EFBFBD>苊嚗䔶<EFBFBD>韏硋<EFBFBD>蝟餅迤蝖?
- LLM蝵穃<EFBFBD><EFBFBD>臭誑甇<EFBFBD>虜靚<EFBFBD>鍂
- 銝匧之璅∪<EFBFBD><EFBFBD>臭誑<EFBFBD>祉<EFBFBD><EFBFBD>臬𢆡<EFBFBD>諹<EFBFBD>銵?
- Docker<EFBFBD>𨅯<EFBFBD><EFBFBD>臭誑甇<EFBFBD>虜<EFBFBD><EFBFBD>遣
<EFBFBD>㴓 <20>嗆挾3-4嚗鋫SL<53>詨<EFBFBD><E8A9A8>蠘<EFBFBD>撘<EFBFBD><E69298>𡢅<EFBFBD>Week 3-4嚗?
*<EFBFBD>園𡢿嚗? 2025-11-21 <20>?2025-12-04嚗?<3F>剁<EFBFBD>
*<EFBFBD>格<EFBFBD>嚗? 摰峕<E691B0>ASL<53><4C><EFBFBD><EFBFBD>䁅<EFBFBD><E48185>萘<EFBFBD> + <20>冽<EFBFBD>憭滨<E686AD>
霂衣<EFBFBD><EFBFBD><EFBFBD>捆<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>霈∪<EFBFBD>嚗峕瓲敹<EFBFBD>遙<EFBFBD>∴<EFBFBD>
- Week 3嚗𡁻★<F0A181BB>桃恣<E6A183>?+ CSV撖澆<E69296> + <20><><EFBFBD><EFBFBD>䁅<EFBFBD><E48185>萘<EFBFBD>
- Week 4嚗𡁜<E59A97><F0A1819C><EFBFBD><EFBFBD>蝑?+ PDF憭<46><E686AD>
<EFBFBD><EFBFBD> <20>嗆挾5嚗𡁜<E59A97>璅∪<E79285><E288AA>磰<EFBFBD>嚗Áeek 5嚗?
*<EFBFBD>園𡢿嚗? 2025-12-05 <20>?2025-12-13嚗?憭抬<E686AD>
*<EFBFBD>格<EFBFBD>嚗? 撉諹<E69289>銝匧之璅∪<E79285><E288AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>極雿𡏭<E99BBF><F0A18FAD>?
<EFBFBD>詨<EFBFBD>瘚贝<EFBFBD><EFBFBD>箸艶
<EFBFBD>箸艶1嚗𡁶鍂<EFBFBD>瑁楊璅∪<EFBFBD>雿輻鍂
- <EFBFBD>冽<EFBFBD><EFBFBD>餃<EFBFBD> <20>?雿輻鍂ASL蝑偦<E89D91>㗇<EFBFBD><E39787>?<3F>?雿輻鍂DC皜<43><E79A9C><EFBFBD>唳旿 <20>?雿輻鍂RVW摰∠阮
*<EFBFBD>箸艶2嚗𡁏㺭<EFBFBD>桀<EFBFBD>鈭急<EFBFBD>霂?
- ASL蝑偦<EFBFBD>匧枂<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>?撖澆枂<E6BE86>蚤C餈𥡝<E9A488><F0A5A19D>唳旿<E594B3>𣂼<EFBFBD>
- DC皜<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㺭<EFBFBD>?<3F>?<3F>其<EFBFBD>RVW<56><57>阮隞嗅<E99A9E>憭?
*<EFBFBD>箸艶3嚗𡁶𡠺蝡钅<EFBFBD>蝵脫<EFBFBD>霂?
- ASL<EFBFBD>祉<EFBFBD><EFBFBD>函蔡 <20>?靚<>鍂撟喳蝱霈方<E99C88><E696B9>滚𦛚 <20>?甇<>虜撌乩<E6928C>
- DC<EFBFBD>祉<EFBFBD><EFBFBD>函蔡 <20>?靚<>鍂LLM蝵穃<E89DB5> <20>?甇<>虜撌乩<E6928C>
*隞餃𦛚皜<EFBFBD><EFBFBD>嚗?
- 蝡臬<EFBFBD>蝡舀<EFBFBD>霂?
- <EFBFBD>扯<EFBFBD>瘚贝<EFBFBD>
- <EFBFBD>祉<EFBFBD><EFBFBD>函蔡撉諹<EFBFBD>
- <EFBFBD><EFBFBD>﹝摰<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD> <20>喲睸<E596B2>喟<EFBFBD>霈啣<E99C88>
<EFBFBD>喟<EFBFBD>001嚗锭chema<EFBFBD>𠉛氖敹<EFBFBD>◆<EFBFBD>扯<EFBFBD> <20>?
*<EFBFBD>喟<EFBFBD>嚗? Week 1敹<31>◆摰峕<E691B0>Schema<6D>𠉛氖
*<EFBFBD><EFBFBD>眏嚗?
- <EFBFBD>祉<EFBFBD><EFBFBD>函蔡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>鞉辺隞?
- 璅∪<EFBFBD>颲寧<EFBFBD>皜<EFBFBD>苊
- <EFBFBD>唳旿摨梶漣<EFBFBD>怎<EFBFBD><EFBFBD>𠉛氖
- <EFBFBD>舀<EFBFBD><EFBFBD>芣䔉<EFBFBD>祉<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
*敶勗<EFBFBD>嚗? Week 1<>券<EFBFBD><E588B8>其<EFBFBD><E585B6>嗆<EFBFBD><E59786>寥<EFBFBD>?
<EFBFBD>喟<EFBFBD>002嚗帋<EFBFBD>憭扳芋<EFBFBD>𦯀<EFBFBD><EFBFBD>?<3F>?
*<EFBFBD>喟<EFBFBD>嚗? <20>滨<EFBFBD><E6BBA8>訫<EFBFBD>ASL<53><4C>C<EFBFBD><43>VW銝匧之璅∪<E79285>
*<EFBFBD><EFBFBD>眏嚗?
- 90%<25>祉<EFBFBD><E7A589>函蔡<E587BD><E894A1>瘙?
- <EFBFBD>詨<EFBFBD>撌桀<EFBFBD><EFBFBD>碶漣<EFBFBD>?
- 蝏煺<EFBFBD><EFBFBD>嗆<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
隡睃<EFBFBD>蝥改<EFBFBD> ASL > DC = RVW
<EFBFBD>喟<EFBFBD>003嚗匁LM蝵穃<EFBFBD>Week 2摰䂿緵 <20>?
*<EFBFBD>喟<EFBFBD>嚗? LLM蝵穃<E89DB5><E7A983>汾eek 2摰䂿緵嚗䔶<E59A97><E494B6>狸eek 1
*<EFBFBD><EFBFBD>眏嚗?
- Week 1銝𤘪釣Schema<6D>𠉛氖
- LLM蝵穃<EFBFBD><EFBFBD><EFBFBD>閬<EFBFBD>chema摰峕<EFBFBD><EFBFBD>擧<EFBFBD><EFBFBD>賣迤蝖桅<EFBFBD>蝵?
- Week 2<>匧<EFBFBD>頞單𧒄<E596AE>游<EFBFBD><E6B8B8>?
<EFBFBD><EFBFBD> 餈𥕦漲頝蠘葵
<EFBFBD>喲睸<EFBFBD><EFBFBD><EFBFBD>
| <EFBFBD><EFBFBD><EFBFBD> | <EFBFBD>格<EFBFBD> | Week 1 | Week 2 | Week 3-4 | Week 5 |
|---|---|---|---|---|---|
| Schema<EFBFBD>𠉛氖 | 100% | 100% | - | - | - |
| 璅∪<EFBFBD><EFBFBD>𡝗沲<EFBFBD>? | 100% | 0% | 100% | - | - |
| LLM蝵穃<EFBFBD> | 100% | 0% | 100% | - | - |
| ASL<EFBFBD>蠘<EFBFBD> | 100% | 0% | 0% | 100% | - |
| <EFBFBD>祉<EFBFBD><EFBFBD>函蔡 | 100% | 0% | 80% | 80% | 100% |
<EFBFBD>㴓 <20>𣂼<EFBFBD><F0A382BC><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>舀<EFBFBD><EFBFBD>?
- 8銝杵chema<EFBFBD>券<EFBFBD><EFBFBD>𥕦遣撟嗆迤撣詨極雿?
- 銝匧之璅∪<EFBFBD>嚗㇁SL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW嚗匧虾隞亦𡠺蝡钅<EFBFBD>蝵?
- LLM蝵穃<EFBFBD>蝔喳<EFBFBD><EFBFBD>舫<EFBFBD>
- ASL<EFBFBD>詨<EFBFBD><EFBFBD>蠘<EFBFBD>摰峕㟲
- 璅∪<EFBFBD><EFBFBD>游虾隞亙<EFBFBD><EFBFBD><EFBFBD>極雿?
銝𡁜𦛚<EFBFBD><EFBFBD><EFBFBD>
- ASL<EFBFBD>臭誑摰峕<EFBFBD><EFBFBD><EFBFBD>讃蝑偦<EFBFBD>匧<EFBFBD>瘚<EFBFBD><EFBFBD>
- 蝑偦<EFBFBD>匧<EFBFBD>蝖桃<EFBFBD> > 85%
- <EFBFBD>舀<EFBFBD><EFBFBD>祉<EFBFBD><EFBFBD>函蔡撟嗅笆憭㚚<EFBFBD><EFBFBD>?
- <EFBFBD>冽<EFBFBD>雿㯄<EFBFBD>瘚<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD> 憌𡡞埯蝞∠<E89D9E>
憌𡡞埯1嚗锭chema餈<EFBFBD>宏憭齿<EFBFBD>摨阡<EFBFBD>
*憌𡡞埯蝑厩漣嚗? 擃? *蝻栞圾<EFBFBD>芣鴌嚗?
- <EFBFBD>冽<EFBFBD>霂閧㴓憓<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>霂?
- <EFBFBD><EFBFBD><EFBFBD>摰<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>皛𡁏䲮獢?
- <EFBFBD><EFBFBD>𧫴畾菔<EFBFBD>蝘鳴<EFBFBD><EFBFBD>滢<EFBFBD>憌𡡞埯
憌𡡞埯2嚗𡁏芋<EFBFBD>㛖𡠺蝡钅<EFBFBD>蝵脰<EFBFBD>霂訫𤌴<EFBFBD>?
*憌𡡞埯蝑厩漣嚗? 銝? *蝻栞圾<EFBFBD>芣鴌嚗?
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>啁<EFBFBD>銝<EFBFBD><EFBFBD>函蔡嚗<EFBFBD><EFBFBD>摰䂿緵<EFBFBD>祉<EFBFBD><EFBFBD>函蔡
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𠯫敹堒<EFBFBD><EFBFBD>烐綉
- 霂衣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵脫<EFBFBD>獢?
憌𡡞埯3嚗𡁏𧒄<EFBFBD>游辣<EFBFBD>踹<EFBFBD>5<EFBFBD>?
*憌𡡞埯蝑厩漣嚗? 銝? *蝻栞圾<EFBFBD>芣鴌嚗?
- <EFBFBD>嗆<EFBFBD><EFBFBD>訫<EFBFBD><EFBFBD>臬<EFBFBD>閬<EFBFBD><EFBFBD>
- <EFBFBD>踵<EFBFBD><EFBFBD>亦<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>園𡢿
- Week 3-4<>臭誑撟嗉<E6929F>憭帋犖撘<E78A96><E69298>?
<EFBFBD><EFBFBD> <20>詨<EFBFBD><E8A9A8><EFBFBD>﹝
- [<5B>𣬚<EFBFBD>蝣? - <20>嗆<EFBFBD><E59786>寥<EFBFBD>髗(./02-<2D>𣬚<EFBFBD>蝣𤏸<E89DA3><F0A48FB8>?04-<2D>𣬚<EFBFBD>蝣?-<2D>嗆<EFBFBD><E59786>寥<EFBFBD>?md)
- Schema<EFBFBD>𠉛氖<EFBFBD>寞<EFBFBD>
- 璅∪<EFBFBD><EFBFBD>祉<EFBFBD><EFBFBD>函蔡<EFBFBD>寞<EFBFBD>
- ASL敹恍<EFBFBD>煺<EFBFBD>銝𧢲<EFBFBD>
<EFBFBD>嗅<EFBFBD>鈭綽<EFBFBD> AI<41>拇<EFBFBD>
摰⊥瓲鈭綽<EFBFBD> 敺<>恣<EFBFBD>?
<EFBFBD>孵<EFBFBD>鈭綽<EFBFBD> 敺<>鸌<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD>擧凒<EFBFBD>堆<EFBFBD> 2025-11-07
*<EFBFBD><EFBFBD>𧋦嚗? V2.0