Files
AIclinicalresearch/docs/03-业务模块/ASL-AI智能文献/05-开发记录/2025-11-21-Week4完成报告.md
HaHafeng 1b53ab9d52 feat(aia): Complete AIA V2.0 with universal streaming capabilities
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%)
2026-01-14 19:15:01 +08:00

756 lines
22 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Week 4 撘<><E69298><EFBFBD><E7A983>鞉𥁒<E99E89>𠺪<EFBFBD>蝏𤘪<E89D8F>撅閧內銝𤾸紡<F0A4BEB8><EFBFBD><E7AE8F>?
> **摰峕<E691B0><E5B395><EFBFBD>嚗?* 2025-11-21
> **撘<><E69298>穃𪂹<E7A983><F0AA82B9><EFBFBD>** 1憭抬<E686AD>摰鮋<E691B0>3撠𤩺𧒄嚗?
> **撘<><E69298>睲犖<E79DB2><EFBFBD>** AI Assistant
> **<2A><EFBFBD><E59786><EFBFBD>嚗?* <20>?鈭穃<E988AD><E7A983><EFBFBD><EFBFBD>?
---
## <20><><>
<EFBFBD>祆𥁒<EFBFBD>𡃏扇敶?Week 4 <20><EFBFBD><EFBFBD><E69298>𤑳<EFBFBD>摰峕<E691B0><E5B395><EFBFBD><EFBFBD><EFBFBD><E59A97><EFBFBD><EFBFBD><E99C88>蝷箝<E89DB7><E7AE9D>RISMA<4D>㘾膄<E398BE><E88684><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𨅯<EFBFBD>銵典<E98AB5>Excel撖澆枂<E6BE86><EFBFBD><E8A098><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E58CA7>賭艇<E8B3AD><EFBFBD>敺芯<E695BA><E88AAF><EFBFBD><EFBFBD><E69298>𤏸<EFBFBD><F0A48FB8><EFBFBD><EFBFBD>?
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**嚗?
- <20>?<3F>𡒊垢蝏蠘恣API嚗<49><E59A97><EFBFBD><EFBFBD>嚗朞<E59A97><E69C9E><EFBFBD>䰻霂<E99C82>
- <20>?<3F><EFBFBD>蝏𤘪<E89D8F>憿菟𢒰嚗<F0A292B0><EFBFBD><E6AFBD>䲮獢<E4B2AE><E78DA2>
- <20>?Excel撖澆枂嚗<E69E82><EFBFBD><E5A69F><EFBFBD><EFBFBD>嚗?
- <20>?憿菟𢒰撖潸⏛隡睃<E99AA1>
- <20>?敹恍<E695B9><E6818D><EFBFBD>霂訫極<E8A8AB>?
---
## <20>㴓 銝<><E98A9D><EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD><F0A382BC><EFBFBD><E8B3A3>?
### 1.1 <20>𡒊垢蝏蠘恣API <20>?
**<EFBFBD><EFBFBD>辣**嚗䫤backend/src/modules/asl/controllers/screeningController.ts`
**<2A><EFBFBD>API**嚗?
```
GET /api/v1/asl/projects/:projectId/statistics
```
**<2A><EFBFBD>**嚗?
- <20>?雿輻鍂Prisma<6D>𡁜<EFBFBD><F0A1819C>亥砭嚗?銝芸僎銵峕䰻霂<E99C82>
- <20>?蝏蠘恣<E8A098>餅㺭<E9A485><E3BAAD>歇蝥喳<E89DA5><E596B3><EFBFBD><EFBFBD>㘾膄<E398BE><E88684><EFBFBD>憭齿瓲<E9BDBF><E793B2><EFBFBD><EFBFBD><E89D92><EFBFBD>歇憭齿瓲
- <20>?<3F><><EFBFBD><EFBFBD>㘾膄<E398BE><EFBFBD><EFBFBD><E59A97>AI<41>斗鱏銝剜<E98A9D><E5899C><EFBFBD>
- <20>?霈∠<E99C88><E288A0><EFBFBD><EFBFBD><EFBFBD>瘥?
- <20>?鈭穃<E988AD><E7A983><EFBFBD><EFBFBD><EFBFBD>𡒊垢<F0A1928A>𡁜<EFBFBD><EFBFBD><E59A97>撠𤑳<E692A0>蝏靝<E89D8F>颲?
**<2A><EFBFBD>**嚗?
- <20>亥砭<E4BAA5>園𡢿嚗?500ms嚗?99蝭<39><E89DAD><EFBFBD><EFBFBD>
- <20>唳旿<E594B3>𧶏<EFBFBD>隞穽B蝥折<E89DA5><E68A98>袁B蝥?
**<2A>喲睸隞<E79DB8><E99A9E>**嚗?
```typescript
// 潃?鈭穃<E988AD><E7A983><EFBFBD><EFBFBD>雿輻鍂Prisma<6D>𡁜<EFBFBD><F0A1819C>亥砭嚗<E7A0AD>僎銵峕<E98AB5>銵䕘<E98AB5>
const [total, includedCount, excludedCount, pendingCount, conflictCount, reviewedCount] =
await Promise.all([
prisma.aslScreeningResult.count({ where: { projectId } }),
prisma.aslScreeningResult.count({ where: { projectId, finalDecision: 'include' } }),
prisma.aslScreeningResult.count({ where: { projectId, finalDecision: 'exclude' } }),
prisma.aslScreeningResult.count({ where: { projectId, finalDecision: null } }),
prisma.aslScreeningResult.count({ where: { projectId, conflictStatus: 'conflict', finalDecision: null } }),
prisma.aslScreeningResult.count({ where: { projectId, NOT: { finalDecision: null } } }),
]);
```
---
### 1.2 Excel撖澆枂撌亙<E6928C> <20>?
**<2A><>辣**嚗䫤frontend-v2/src/modules/asl/utils/excelExport.ts`
**<EFBFBD><EFBFBD>**嚗?
- <20>?<3F>滨垢<E6BBA8><E59EA2><EFBFBD>Excel嚗<6C><EFBFBD><E5A69F><EFBFBD><EFBFBD>嚗?
- <20>?瘛瑕<E7989B><E79195><EFBFBD>嚗𡁜<E59A97><F0A1819C>隹I<E99AB9><EFBFBD><E5969F>䔶犖撌亙<E6928C>蝑?
- <20>?摰峕㟲靽⊥<E99DBD>嚗𡁜<E59A97><F0A1819C><EFBFBD><E680A5>侨ICOS<4F>斗鱏<E69697><EFBFBD><E8ABB9>?
- <20>?銝支葵撖澆枂<E6BE86>賣㺭嚗?
- `exportScreeningResults()` - 撖澆枂蝑偦<E89D91><EFBFBD><E58EA9>?
- `exportStatisticsSummary()` - 撖澆枂蝏蠘恣<E8A098><EFBFBD>
**Excel<65><EFBFBD><E39B96><EFBFBD><EFBFBD><EFBFBD>?0<><EFBFBD>**嚗?
```
<EFBFBD><EFBFBD>靽⊥<EFBFBD>嚗?<3F><EFBFBD>嚗?
- 摨誩噡<E8AAA9><E599A1><EFBFBD>憸塩<E686B8><E5A1A9><EFBFBD><EFBFBD><E996AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𨳍<EFBFBD><F0A8B38D>僑隞賬<E99A9E><E8B3AC>MID<49><44>OI
AI<EFBFBD><EFBFBD>嚗?<3F><EFBFBD>嚗?
- AI<41><EFBFBD><E6A2AF><EFBFBD>I<EFBFBD>臬炏銝<E7828F><E98A9D>?
DeepSeek摰峕㟲<EFBFBD><EFBFBD><EFBFBD>嚗?1<><EFBFBD>嚗?
- <20><EFBFBD><E5969F><EFBFBD>蔭靽<E288AA><E6BCB2>/I/C/S<>斗鱏<E69697><E9B18F>/I/C/S霂<53><EFBFBD><E697BF><EFBFBD><EFBFBD><EFBFBD><E696A4>?
Qwen摰峕㟲<EFBFBD><EFBFBD><EFBFBD>嚗?1<><EFBFBD>嚗?
- <20><EFBFBD><E5969F><EFBFBD>蔭靽<E288AA><E6BCB2>/I/C/S<>斗鱏<E69697><E9B18F>/I/C/S霂<53><EFBFBD><E697BF><EFBFBD><EFBFBD><EFBFBD><E696A4>?
鈭箏極<EFBFBD><EFBFBD>嚗?<3F><EFBFBD>嚗?
- 鈭箏極<E7AE8F><EFBFBD><E5969F><EFBFBD>犖撌交<E6928C><E4BAA4><EFBFBD><E69687>𨬭<EFBFBD><F0A8ACAD><EFBFBD><EFBFBD>訾犖<E8A8BE><E78A96><EFBFBD><EFBFBD>豢𧒄<E8B1A2>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><EFBFBD>嚗?
- <20><EFBFBD><E59786><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𠶖<EFBFBD>?
```
**鈭穃<E988AD><E7A983><EFBFBD>霂?*嚗?
- <20>?摰<><E691B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E886A5><EFBFBD>銝剔<E98A9D><E58994>?
- <20>?<3F><EFBFBD>蝡舀<E89DA1>隞嗆<E99A9E>雿?
- <20>?<3F>𤪻SS摮睃<E691AE>嚗㇈VP<56>嗆挾嚗?
- <20>?蝚血<E89D9A>鈭穃<E988AD><E7A983><EFBFBD><E7AC94>?
---
### 1.3 <20><EFBFBD>蝏𤘪<E89D8F>憿菟𢒰 <20>?
**<EFBFBD><EFBFBD>辣**嚗䫤frontend-v2/src/modules/asl/pages/ScreeningResults.tsx`
**<2A><EFBFBD><E79285>**嚗?
#### 璅<E79285>1嚗𡁶<E59A97>霈⊥<E99C88><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>?[<5B>餅㺭 199] [撌脩熙<E884A9>?85] [撌脫<E6928C><E884AB>?90] [敺<><E695BA><EFBFBD>?24] <20>?
<EFBFBD>? 42.7% 45.2% 12.1% <20>?
<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>?
```
#### 璅<E79285>2嚗𡁜<E59A97>憭齿瓲<E9BDBF>鞟內
```
<EFBFBD>𩤃<EFBFBD> 餈䀹<E9A488>24蝭<34><E89DAD><EFBFBD><EFBFBD><E6A180>冽芋<E586BD>见ế<E8A781><EFBFBD><EFBFBD><E89D92>撱箄悅<E7AE84><EFBFBD>"摰⊥瓲撌乩<E6928C><E4B9A9>?餈𥡝<E9A488>鈭箏極憭齿瓲
[<5B><EFBFBD>憭齿瓲] <20>厰僼
```
#### 璅<E79285>3嚗䥪RISMA<4D>㘾膄<E398BE><EFBFBD>蝏蠘恣
```
<EFBFBD>㘾膄<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗㇊RISMA嚗?
<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>
P銝滚龪<EFBFBD><EFBFBD>鈭箇黎嚗? <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 40蝭?(44%)
I銝滚龪<EFBFBD><EFBFBD>撟脤<EFBFBD>嚗? <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 25蝭?(28%)
S銝滚龪<EFBFBD><EFBFBD><EFBFBD>𠉛弦霈曇恣嚗?<3F><><EFBFBD> 15蝭?(17%)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>? 10蝭?(11%)
```
#### 璅<E79285>4嚗𡁶<E59A97><F0A181B6>𨅯<EFBFBD>銵剁<E98AB5>瘛瑕<E7989B><E79195><EFBFBD>嚗争<E59A97>
**銵冽聢<E586BD>𡑒挽霈?*嚗?
| <20><EFBFBD> | 摰賢漲 | 霂湔<E99C82> |
|------|------|------|
| 摨誩噡 | 60px | <20><EFBFBD>撌虫儒 |
| <20><><EFBFBD><E8AE83><EFBFBD> | 350px | <20><EFBFBD><E88890><EFBFBD><EFBFBD><EFBFBD>𤐄摰𡁜椰靘?|
| AI<41><EFBFBD> | 120px | <20>曄內<E69B84>峕芋<E5B395>𧢲糓<F0A7A2B2><EFBFBD><E899AB>?|
| <20>㘾膄<E398BE><EFBFBD> | 180px | <20><EFBFBD><E7AE84>曄內嚗<E585A7><EFBFBD>交遬蝷?-"嚗?|
| 鈭箏極<E7AE8F><EFBFBD> | 120px | <20><><EFBFBD>函蕃AI<41><EFBFBD>AI銝<49><E98A9D>?|
| <20><EFBFBD>?| 120px | 4蝘滨𠶖<E6BBA8><F0A0B696><EFBFBD>蝑?|
| <20><EFBFBD> | 80px | <20><EFBFBD><E7AE8F>喃儒 |
**AI<41><EFBFBD><E6A2AF>?*嚗?
```
<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>?<3F>?<3F>㘾膄 <20>?
<EFBFBD>?(DS<44>?QW<51>? <20>?
<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>?<3F>𩤃<EFBFBD> <20><EFBFBD> <20>?
<EFBFBD>?DS:蝥喳<E89DA5> <20>?
<EFBFBD>?QW:<3A>㘾膄 <20>?
<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>?
```
**鈭箏極<E7AE8F><EFBFBD><E5969F>?*嚗?
```
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<EFBFBD>?<3F><EFBFBD><E88AB8>?<3F>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
撌脣<EFBFBD><EFBFBD>?銝垾I銝<49><E98A9D><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>?<3F>?蝥喳<E89DA5> <20>?
<EFBFBD>?(銝垾I銝<49><E98A9D>? <20>?
<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>?<3F>函蕃AI嚗?
<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>?<3F>?蝥喳<E89DA5> <20>?
<EFBFBD>?(<28>函蕃AI) <20>? <20>?璈躰𠧧<E8BAB0><F0A0A7A7>
<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>?
```
**<2A><EFBFBD><E59786><EFBFBD>**嚗?蝘滨𠶖<E6BBA8><F0A0B696><EFBFBD>嚗?
- <20>?撌脣<E6928C><E884A3>?銝垾I銝<49><E98A9D><EFBFBD>蝏輯𠧧嚗?
- <20><> 撌脣<E6928C><E884A3>?<3F>函蕃AI嚗<49><E59A97><EFBFBD><EFBFBD>
- <20>𩤃<EFBFBD><><E695BA><EFBFBD>?<3F><EFBFBD><EFBFBD><E89D92><EFBFBD>𠧧嚗?
- 漎?敺<><E695BA><EFBFBD>?AI銝<49><E98A9D><EFBFBD><E6B99B>啗𠧧嚗?
**撅訫<E69285>銵?*嚗?
```
<EFBFBD>孵稬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>曄內嚗?
<EFBFBD>𢞖<EFBFBD> DeepSeek<65><6B><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD> Qwen<65><6E><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<EFBFBD>?<3F><> DeepSeek-V3 <20>?<3F>?<3F><> Qwen-Max <20>?
<EFBFBD>?<3F><EFBFBD>嚗𡁏<E59A97><F0A1818F><EFBFBD>95%嚗? <20>?<3F>?<3F><EFBFBD>嚗𡁏<E59A97><F0A1818F><EFBFBD>90%嚗? <20>?
<EFBFBD>?P: <20>𦯀<EFBFBD><F0A6AF80><EFBFBD> - "撟渲蝠鈭? <20>?<3F>?P: <20>𦯀<EFBFBD><F0A6AF80><EFBFBD> - "撟湧<E6929F>" <20>?
<EFBFBD>?I: <20>枏龪<E69E8F>? <20>?<3F>?I: <20>枏龪<E69E8F>? <20>?
<EFBFBD>?C: <20>枏龪<E69E8F>? <20>?<3F>?C: <20>枏龪<E69E8F>? <20>?
<EFBFBD>?S: <20>枏龪<E69E8F>? <20>?<3F>?S: <20>枏龪<E69E8F>? <20>?
<EFBFBD>?<3F><>眏嚗帋犖蝢文僑樴<E58391><E6A8B4>蝚? <20>?<3F>?<3F><>眏嚗帋犖蝢支<E89DA2>蝚? <20>?
<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>?<3F><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> 蝥喳<E89DA5> [<5B>函蕃AI撱箄悅]
<EFBFBD>㘾膄<EFBFBD><EFBFBD>嚗?
憭齿瓲鈭綽<EFBFBD>撘惩龫<EFBFBD>?| <20>園𡢿嚗?025-11-21 14:00
```
#### 璅<E79285>5嚗𡁏鸌<F0A1818F>𤩺<EFBFBD>雿?
- <20>?Checkbox憭𡁻<E686AD>?
- <20>?撖澆枂蝏蠘恣<E8A098><EFBFBD>
- <20>?撖澆枂<E6BE86><EFBFBD>蝏𤘪<E89D8F><EFBFBD><E59A97><EFBFBD>䕡ab嚗?
- <20>?撖澆枂<E6BE86>劐葉憿?
---
### 1.4 憿菟𢒰撖潸⏛隡睃<E99AA1> <20>?
**摰⊥瓲撌乩<E6928C><E4B9A9>?*嚗?
- <20>?瘛餃<E7989B>"<22><EFBFBD>蝏𤘪<E89D8F>蝏蠘恣"<22>厰僼嚗<E583BC><E59A97><EFBFBD><EFBFBD><E58CA7>𣂼<EFBFBD><F0A382BC>曄內嚗?
- <20>?<3F><EFBFBD>URL<52><4C>㺭隡𣳇<E99AA1>𥙑rojectId
**撌虫儒撖潸⏛**嚗?
- <20>?撌脣<E6928C><E884A3>?<3F><EFBFBD>蝏𤘪<E89D8F>"<22>暹𦻖
**頝唾蓮<E594BE><EFBFBD>**嚗?
```
霈曄蔭銝𤾸鍳<EFBFBD>?<3F>?摰⊥瓲撌乩<E6928C><E4B9A9>?<3F>?<3F><EFBFBD>蝏𤘪<E89D8F>
<20>? <20>? <20>?
銝𠹺<E98A9D>Excel <20>鞉辺憭齿瓲 <20><EFBFBD>撖澆枂
[<5B><EFBFBD>蝏蠘恣] <20>?蝏蠘恣<E8A098><E681A3><EFBFBD>
```
---
### 1.5 敹恍<E695B9><E6818D><EFBFBD>霂訫極<E8A8AB>?<3F>?
**<2A><>辣**嚗䫤backend/scripts/get-test-projects.mjs`
**<EFBFBD><EFBFBD>**嚗?
- <20>?<3F>堒枂<E5A092>唳旿摨㮖葉<E3AE96><E89189><EFBFBD>厰★<E58EB0>?
- <20>?<3F>曄內<E69B84><E585A7><EFBFBD><EFBFBD>蝑偦<E89D91><EFBFBD><E58EA9>𨀣㺭
- <20>?<3F>芸𢆡<E88AB8><EFBFBD><E588BB>㗇㺭<E39787><EFBFBD>憿寧𤌍
- <20>?<3F><><EFBFBD><EFBFBD>舐凒<E88890>亥挪<E4BAA5><EFBFBD>瘚贝<E7989A>URL
**雿輻鍂<E8BCBB><EFBFBD>**嚗?
```bash
cd backend
node scripts/get-test-projects.mjs
```
---
## <20>?鈭䎚<E988AD><E48E9A>挽霈<E99C88>蝑?
### 2.1 瘛瑕<E7989B><E79195><EFBFBD>霈曇恣
**<EFBFBD><EFBFBD><EFBFBD>箸艶**嚗?
```
<EFBFBD>?<3F><>䲮獢<E4B2AE>䔮憸矋<E686B8>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝑? 蝥喳<E89DA5> <20>?
<EFBFBD>㘾膄<EFBFBD><EFBFBD>: P銝滚龪<E6BB9A><EFBFBD>鈭箇黎嚗争<E59A97> <20>?<3F><EFBFBD><E9A489>𤤿㦛嚗?
```
**閫<><E996AB><EFBFBD><EFBFBD> - 瘛瑕<E7989B><E79195><EFBFBD>**嚗?
1. **<EFBFBD>𡒊<EFBFBD><EFBFBD>AI<EFBFBD><EFBFBD><EFBFBD>䔶犖撌亙<EFBFBD>蝑?*
- AI<41><EFBFBD><E6A2AF><EFBFBD><E6A2B9>曄內<E69B84>峕芋<E5B395>𧢲糓<F0A7A2B2><EFBFBD><E899AB>?
- 鈭箏極<E7AE8F><EFBFBD><E5969F><EFBFBD><E6A2B9>曄內鈭箏極憭齿瓲蝏𤘪<E89D8F>
2. **<EFBFBD><EFBFBD><EFBFBD>㘾膄<EFBFBD><EFBFBD><EFBFBD>曄內**
- <20><><EFBFBD><E89D8F>蝑?蝥喳<E89DA5> <20>?<3F>曄內"-"
- <20><><EFBFBD><E89D8F>蝑?<3F>㘾膄 <20>?<3F>曄內<E69B84><EFBFBD><EFBFBD>犖撌乩<E6928C><E4B9A9><EFBFBD><EFBFBD>
- <20><EFBFBD><E88AB8>?<3F>?<3F>曄內AI<41>𣂼<EFBFBD><F0A382BC><EFBFBD><EFBFBD><EFBFBD>?
3. **<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>瘜?*
- 撌脣<E6928C><E884A3>?銝垾I銝<49><E98A9D>?
- 撌脣<E6928C><E884A3>?<3F>函蕃AI嚗<49><E59A97><EFBFBD><EFBFBD>鈭殷<E988AD>
-<><E695BA><EFBFBD>?<3F><EFBFBD>蝒?
-<><E695BA><EFBFBD>?AI銝<49><E98A9D>?
4. **撅訫<E69285>銵峕遬蝷箏<E89DB7><E7AE8F>港縑<E6B8AF>?*
- DeepSeek<65>熑wen<65><6E>祕蝏<E7A595>ế<EFBFBD>?
- PICOS霂<53>
- 鈭箏極憭齿瓲霂行<E99C82>
---
### 2.2 鈭穃<E988AD><E7A983><EFBFBD><EFBFBD><E6B2B2><EFBFBD>霂?
<EFBFBD><EFBFBD>[鈭穃<E988AD><E7A983><EFBFBD><E7AC94>𤏸<EFBFBD><F0A48FB8><EFBFBD>(../../../04-撘<><E69298>𤏸<EFBFBD><F0A48FB8>?08-鈭穃<E988AD><E7A983><EFBFBD><E7AC94>𤏸<EFBFBD><F0A48FB8>?md)璉<><E79289><EFBFBD>
| 璉<><E79289>仿★ | 閬<><E996AC> | 摰䂿緵 | <20><EFBFBD>?|
|--------|------|------|------|
| **<EFBFBD>唳旿摨栞<EFBFBD><EFBFBD>?* | 雿輻鍂<E8BCBB><EFBFBD>`prisma` | <20>?雿輻鍂<E8BCBB><EFBFBD>摰硺<E691B0> | <20>?|
| **蝏蠘恣霈∠<E99C88>** | <20>𡒊垢<F0A1928A>𡁜<EFBFBD> | <20>?Prisma<6D>𡁜<EFBFBD><F0A1819C>亥砭 | <20>?|
| **<EFBFBD><EFBFBD>辣摮睃<EFBFBD>** | <20>䭾𧋦<E4ADBE>啗氜<E59597>?| <20>?Excel<65>滨垢<E6BBA8><E59EA2><EFBFBD> | <20>?|
| **<EFBFBD><EFBFBD>颲枏枂** | 雿輻鍂`logger` | <20>?雿輻鍂logger.info | <20>?|
| **<EFBFBD>躰秤憭<EFBFBD><EFBFBD>** | 蝏煺<E89D8F><EFBFBD><E686AD> | <20>?try-catch + logger | <20>?|
| **<EFBFBD><EFBFBD>隡睃<EFBFBD>** | 撟嗉<E6929F><E59789>亥砭 | <20>?Promise.all | <20>?|
**蝏栞捏**嚗尠<E59A97><><E691B0>蝚血<E89D9A>鈭穃<E988AD><E7A983><EFBFBD><E7AC94>𤏸<EFBFBD><F0A48FB8>?
---
## <20><> 銝剹<E98A9D><E589B9><EFBFBD><EFBFBD>賣⏛<E8B3A3>曇秩<E69B87>?
### 3.1 蝏蠘恣璁<E681A3><E79281>
```
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<EFBFBD>?<3F>餅㺭 <20>?<3F>?撌脩熙<E884A9><EFBFBD> <20>?撌脫<E6928C><E884AB><EFBFBD> <20>?敺<><E695BA><EFBFBD><EFBFBD>
<EFBFBD>? 199 <20>?<3F>? 85 <20>?<3F>? 90 <20>?<3F>? 24 <20>?
<EFBFBD>? 蝭? <20>?<3F>?42.7% <20>?<3F>?45.2% <20>?<3F>?12.1% <20>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<20>嗡葉 24 蝭<><E89DAD><EFBFBD><EFBFBD> <20>𩤃<EFBFBD>
```
### 3.2 PRISMA<4D>㘾膄<E398BE><E88684><EFBFBD>
```
<EFBFBD>㘾膄<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗㇊RISMA嚗?
<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>
P銝滚龪<EFBFBD><EFBFBD>鈭箇黎嚗? <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 40蝭?(44%)
I銝滚龪<EFBFBD><EFBFBD>撟脤<EFBFBD>嚗? <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 25蝭?(28%)
S銝滚龪<EFBFBD><EFBFBD><EFBFBD>𠉛弦霈曇恣嚗?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 15蝭?(17%)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> 10蝭?(11%)
```
### 3.3 蝏𤘪<E89D8F><F0A498AA>𡑒”嚗<E2809D><EFBFBD><E6AFBD>䲮獢<E4B2AE><E78DA2>
```
摨誩噡 | <20><><EFBFBD> | AI<41><EFBFBD> | <20>㘾膄<E398BE><EFBFBD> | 鈭箏極<E7AE8F><EFBFBD> | <20><EFBFBD>?
-----|------|------------|--------------|-----------|------------------
1 | xxx | <20><EFBFBD><E59F88>? | P銝滚龪<E6BB9A>? | <20><><EFBFBD>? | <20><>撌脣<E6928C><E884A3>?<3F>函蕃AI
(DS<44>𡥼W<F0A1A5BC>? (<28>函蕃AI)
-----|------|------------|--------------|-----------|------------------
2 | xxx | <20>𩤃<EFBFBD><F0A9A483><EFBFBD> | P銝滚龪<E6BB9A>? | <20><EFBFBD><E88AB8>? | <20>𩤃<EFBFBD><EFBFBD><E695BA><EFBFBD>?<3F><EFBFBD>蝒?
DS:蝥喳<E89DA5>
QW:<3A>㘾膄
-----|------|------------|--------------|-----------|------------------
3 | xxx | <20><><EFBFBD>? | - | <20><><EFBFBD>? | <20><>歇憭齿瓲-銝垾I銝<49><E98A9D>?
(DS<44>𡥼W<F0A1A5BC>? (銝垾I銝<49><E98A9D>?
```
**撅訫<E69285>銵𣬚內靘?*嚗?
```
<EFBFBD><EFBFBD> Efficacy and safety of argatroban...
<EFBFBD>𢞖<EFBFBD> DeepSeek-V3 <20><><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>?<3F>𢞖<EFBFBD> Qwen-Max <20><><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>?<3F><EFBFBD>嚗𡁏<E59A97><F0A1818F><EFBFBD>95%嚗? <20>?<3F>?<3F><EFBFBD>嚗𡁏<E59A97><F0A1818F><EFBFBD>90%嚗? <20>?
<EFBFBD>?P<>斗鱏嚗尠<E59A97>銝滚龪<E6BB9A>? <20>?<3F>?P<>斗鱏嚗尠<E59A97>銝滚龪<E6BB9A>? <20>?
<EFBFBD>? 霂<>旿嚗?撟渲蝠<E6B8B2>亙熒<E4BA99>𡑒<EFBFBD><F0A19192>? <20>?<3F>? 霂<>旿嚗?撟湧<E6929F><45撗? <20>?
<EFBFBD>?I<>斗鱏嚗尠<E59A97><E5B0A0><EFBFBD> <20>?<3F>?I<>斗鱏嚗尠<E59A97><E5B0A0><EFBFBD> <20>?
<EFBFBD>?C<>斗鱏嚗尠<E59A97><E5B0A0><EFBFBD> <20>?<3F>?C<>斗鱏嚗尠<E59A97><E5B0A0><EFBFBD> <20>?
<EFBFBD>?S<>斗鱏嚗尠<E59A97><E5B0A0><EFBFBD> <20>?<3F>?S<>斗鱏嚗尠<E59A97><E5B0A0><EFBFBD> <20>?
<EFBFBD>?<3F><>眏嚗𡁶<E59A97>蝛嗅笆鞊∩<E99E8A>蝚血<E89D9A>鈭箇黎<E7AE87><E9BB8E><EFBFBD> <20>?<3F>?<3F><>眏嚗帋犖蝢文僑樴<E58391><E6A8B4>蝚? <20>?
<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>?<3F><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> 蝥喳<E89DA5> [<5B>函蕃AI撱箄悅]
憭齿瓲鈭綽<EFBFBD>撘惩龫<EFBFBD>?| <20>園𡢿嚗?025-11-21 14:00
```
---
## <20><20><EFBFBD><E49C98><EFBFBD><EFBFBD><EFBFBD><E887AC><EFBFBD><E59581>?
### 4.1 <20>𡒊垢蝏蠘恣API摰䂿緵
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**嚗?
```typescript
// 1. 撟嗉<E6929F><E59789>𡁜<EFBFBD><F0A1819C>亥砭嚗<E7A0AD><E59A97><EFBFBD>隡睃<E99AA1>嚗?
const [total, included, excluded, pending, conflict, reviewed] =
await Promise.all([...6ount<EFBFBD>]);
// 2. <20>亥砭<E4BAA5>㘾膄蝏𤘪<E89D8F><EFBFBD>鍂鈭𤾸<E988AD><F0A4BEB8>𣂼<EFBFBD><F0A382BC>𩤃<EFBFBD>
const excludedResults = await prisma.aslScreeningResult.findMany({
where: {
projectId,
OR: [
{ finalDecision: 'exclude' },
{ finalDecision: null, dsConclusion: 'exclude' }
]
},
select: { exclusionReason, dsPJudgment, dsIJudgment, dsCJudgment, dsSJudgment }
});
// 3. <20><><EFBFBD><EFBFBD>㘾膄<E398BE><EFBFBD>
const exclusionReasons = {};
excludedResults.forEach(result => {
const reason = result.exclusionReason || extractAutoReason(result);
exclusionReasons[reason] = (exclusionReasons[reason] || 0) + 1;
});
// 4. 餈𥪜<E9A488>蝏蠘恣<E8A098>唳旿嚗<E697BF><E59A97><EFBFBD>怎蓡<E6808E><E893A1><EFBFBD>嚗?
return {
total, included, excluded, pending, conflict, reviewed,
exclusionReasons,
includedRate: ((included / total) * 100).toFixed(1),
excludedRate: ((excluded / total) * 100).toFixed(1),
pendingRate: ((pending / total) * 100).toFixed(1),
};
```
**颲<>𨭌<EFBFBD>賣㺭**嚗?
```typescript
function extractAutoReason(result): string {
if (result.dsPJudgment === 'mismatch') return 'P銝滚龪<E6BB9A><EFBFBD>鈭箇黎嚗?;
if (result.dsIJudgment === 'mismatch') return 'I銝滚龪<EFBFBD><EFBFBD><EFBFBD>?;
if (result.dsCJudgment === 'mismatch') return 'C銝滚龪<E6BB9A><EFBFBD>撖寧<E69296>嚗?;
if (result.dsSJudgment === 'mismatch') return 'S銝滚龪<EFBFBD><EFBFBD><EFBFBD>𠉛?;
return '<27><EFBFBD><E597A1><EFBFBD>';
}
```
---
### 4.2 <20>滨垢瘛瑕<E7989B><E79195><EFBFBD>摰䂿緵
**AI<41><EFBFBD><E6A2AF>?*嚗?
```typescript
render: (_, record) => {
const isAIConsistent = record.dsConclusion === record.qwenConclusion;
if (isAIConsistent) {
return (
<div>
<ConclusionTag conclusion={record.dsConclusion} />
<div className="text-xs">(DS<EFBFBD>?QW<EFBFBD>?</div>
</div>
);
} else {
return (
<Tag color="warning"><EFBFBD><EFBFBD></Tag>
<div>DS:{dsDecision} / QW:{qwDecision}</div>
);
}
}
```
**<EFBFBD>㘾膄<EFBFBD><EFBFBD><EFBFBD>?*嚗<><EFBFBD>賣遬蝷綽<E89DB7>嚗?
```typescript
render: (_, record) => {
// <20><><EFBFBD><E89D8F>蝑吔<E89D91>鈭箏極隡睃<E99AA1><EFBFBD><EFBFBD>禑I嚗?
const finalDec = record.finalDecision || record.dsConclusion;
// 蝥喳<E89DA5><E596B3><EFBFBD><E59798>曄內<E69B84>㘾膄<E398BE><EFBFBD>
if (finalDec === 'include') {
return <span style={{ color: '#999' }}>-</span>;
}
// <20>㘾膄<E398BE>蹱遬蝷箏<E89DB7><E7AE8F>𩤃<EFBFBD>鈭箏極隡睃<E99AA1>嚗?
const reason = record.exclusionReason || extractAutoReason(record);
return <Tooltip title={reason}>{reason}</Tooltip>;
}
```
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**嚗?蝘滨𠶖<E6BBA8><F0A0B696><EFBFBD>嚗?
```typescript
render: (_, record) => {
if (record.finalDecision) {
const isOverride = record.dsConclusion !== record.finalDecision ||
record.qwenConclusion !== record.finalDecision;
if (isOverride) {
return <Tag color="orange"><EFBFBD><EFBFBD>?<EFBFBD>AI</Tag>;
} else {
return <Tag color="success"><EFBFBD><EFBFBD>?I銝<EFBFBD><EFBFBD>?/Tag>;
}
} else {
const isAIConsistent = record.dsConclusion === record.qwenConclusion;
if (isAIConsistent) {
return <Tag color="default"><EFBFBD><EFBFBD><EFBFBD>?AI銝<EFBFBD><EFBFBD>?/Tag>;
} else {
return <Tag color="warning"><EFBFBD><EFBFBD><EFBFBD>?<EFBFBD><EFBFBD>?/Tag>;
}
}
}
```
---
### 4.3 Excel撖澆枂摰䂿緵嚗<E7B7B5><EFBFBD><E6AFBD>䲮獢<E4B2AE><E78DA2>
**撖澆枂<E6BE86>唳旿蝏𤘪<E89D8F>**嚗?
```typescript
{
// <20><EFBFBD>靽⊥<E99DBD>
'摨誩噡': 1,
'<27><><EFBFBD><E8AE83><EFBFBD>': '...',
'<27><EFBFBD>': '...',
// ...
// 潃?瘛瑕<E7989B><E79195><EFBFBD>嚗鋫I<E98BAB><EFBFBD>
'AI<41><EFBFBD>': '<27>㘾膄(銝<><E98A9D>?' | '<27><EFBFBD>(DS:蝥喳<E89DA5>, QW:<3A>㘾膄)',
'AI<41>臬炏銝<E7828F><E98A9D>?: '<EFBFBD>? | '<27>?,
// DeepSeek摰峕㟲<E5B395><E39FB2><EFBFBD>
'DeepSeek<EFBFBD><EFBFBD>': '<EFBFBD>' | '<EFBFBD>',
'DeepSeek蝵桐縑摨?: '95%',
'DeepSeek-P<>斗鱏': '<27><EFBFBD>' | '銝滚龪<E6BB9A>? | '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'DeepSeek-P霂<EFBFBD>': '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?,
'DeepSeek-I<>斗鱏': '<27><EFBFBD>',
'DeepSeek-I霂<49>旿': 'argatroban瘝餌<E7989D>',
// ... C/S<>𣬚<EFBFBD>
'DeepSeek<65>㘾膄<E398BE><E88684>眏': '...',
// Qwen摰峕㟲<E5B395><E39FB2><EFBFBD><EFBFBD><E59A97>銝𠺪<E98A9D>
// ...
// 潃?瘛瑕<E7989B><E79195><EFBFBD>嚗帋犖撌亙<E6928C>蝑?
'鈭箏極<E7AE8F><EFBFBD>': '蝥喳<E89DA5>' | '<27>㘾膄' | '<27><EFBFBD><E88AB8>?,
'<EFBFBD><EFBFBD><EFBFBD>': '...',
'齿?: '撘惩龫<E683A9>?,
'齿<EFBFBD>𡢿': '2025-11-21 14:00',
// 潃?瘛瑕<E7989B><E79195><EFBFBD>嚗𡁶𠶖<F0A181B6>?
'<EFBFBD><EFBFBD>?: '撌脣<E6928C><E884A3>?<3F>函蕃AI' | '撌脣<E6928C><E884A3>?銝垾I銝<49><E98A9D>? | '<EFBFBD><EFBFBD><EFBFBD>?<EFBFBD><EFBFBD>? | '敺<><E695BA><EFBFBD>?AI銝<49><E98A9D>?,
'<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?: '<27><EFBFBD>' | '<EFBFBD><EFBFBD>?,
}
```
**銝<><EFBFBD><E98AB5><EFBFBD><EFBFBD><E680A5>劐縑<E58A90>?*嚗?
- <20>?<3F><EFBFBD>40<34>?
- <20>?<3F><><EFBFBD>峕芋<E5B395><EFBFBD><E8A781>游ế<E6B8B8>?
- <20>?<3F><><EFBFBD><E98984><EFBFBD>侨ICOS霂<53>
- <20>?<3F><>鉄鈭箏極憭齿瓲霂行<E99C82>
- <20>?<3F>堒捐<E5A092>芸𢆡靚<F0A286A1>
---
## <20>妒 鈭𢛵<E988AD><F0A29BB5><EFBFBD>霂閙<E99C82><E99699>?
### 5.1 敹恍<E695B9><E6818D><EFBFBD>霂閙<E99C82>蝔?
#### Step 1: <20><EFBFBD>瘚贝<E7989A>憿寧𤌍ID
```bash
cd backend
node scripts/get-test-projects.mjs
```
颲枏枂蝷箔<EFBFBD>嚗?
```
<EFBFBD><20><EFBFBD>瘚贝<E7989A>憿寧𤌍嚗<F0A48C8D><E59A97>蝑偦<E89D91><EFBFBD><E58EA9><EFBFBD>嚗?
憿寧𤌍ID: 55941145-bba0-4b15-bda4-f0a398d78208
<20><><EFBFBD>? 7
蝑偦<E89D91><EFBFBD><E58EA9>𨀣㺭: 7
```
#### Step 2: 霈輸䔮摰⊥瓲撌乩<E6928C><E4B9A9>?
```
http://localhost:3000/literature/screening/title/workbench?projectId=55941145-bba0-4b15-bda4-f0a398d78208
```
#### Step 3: <20>孵稬"<22><EFBFBD>蝏𤘪<E89D8F>蝏蠘恣"
<EFBFBD>券△<EFBFBD>𢰧銝𡃏<EFBFBD><EFBFBD><EFBFBD><EFBFBD>厰僼嚗𣬚<EFBFBD><EFBFBD>餉歲頧?
#### Step 4: <20>𣇉凒<F0A38789>亥挪<E4BAA5><EFBFBD><E6A183>𣈯△
```
http://localhost:3000/literature/screening/title/results?projectId=55941145-bba0-4b15-bda4-f0a398d78208
```
---
### 5.2 <20><EFBFBD>瘚贝<E7989A><EFBFBD><E79A9C>
#### 蝏蠘恣璁<E681A3><E79281> <20>?
- [ ] <20>餅㺭<E9A485>臬炏甇<E7828F>嚗?
- [ ] 撌脩熙<E884A9>交㺭<E4BAA4><EFBFBD><E8AAA9><EFBFBD>瘥娍糓<E5A88D>行迤蝖殷<E89D96>
- [ ] 撌脫<E6928C><E884AB>斗㺭<E69697><EFBFBD><E8AAA9><EFBFBD>瘥娍糓<E5A88D>行迤蝖殷<E89D96>
- [ ]<><E695BA><EFBFBD>豢㺭<E8B1A2>𤩺糓<F0A4A9BA>行迤蝖殷<E89D96>
- [ ] <20><EFBFBD><E884A9>鞟內<E99E9F>臬炏<E887AC>曄內嚗<E585A7><E59A97><EFBFBD><EFBFBD><EFBFBD>𧒄嚗㚁<E59A97>
#### PRISMA<4D>㘾膄<E398BE><E88684><EFBFBD> <20>?
- [ ] <20>㘾膄<E398BE><EFBFBD><E7AC94>臬炏甇<E7828F><EFBFBD><EFBC86>掩嚗?
- [ ] <20><EFBFBD>蝏蠘恣<E8A098>臬炏<E887AC><E7828F>嚗?
- [ ] <20><EFBFBD>瘥磰恣蝞埈糓<E59F88>行迤蝖殷<E89D96>
- [ ] <20>梁𠶖<E6A281>暹糓<E69AB9><EFBFBD>瘥𥪯<E798A5><F0A5AAAF>曄內嚗?
#### 蝏𤘪<E89D8F><F0A498AA>𡑒” <20>?
- [ ] Tab<61><62><EFBFBD>臬炏甇<E7828F>虜嚗?
- [ ] Tab<61><EFBFBD>蝏蠘恣<E8A098>臬炏甇<E7828F>嚗?
- [ ] 銵冽聢<E586BD>唳旿<E594B3>臬炏甇<E7828F>嚗?
- [ ] AI<41><EFBFBD><E6A2AF>埈遬蝷箸糓<E7AEB8><EFBFBD><E8A18C><EFBFBD>
- [ ] 鈭箏極<E7AE8F><EFBFBD><E5969F>埈糓<E59F88>血躹<E8A180>?<3F>函蕃AI"<22>?銝垾I銝<49><E98A9D>?嚗?
- [ ] <20>㘾膄<E398BE><EFBFBD><E7AC94><EFBFBD><E9A489>臬炏甇<E7828F><EFBC86><EFBFBD><EFBFBD><E4B9A9>曄內<E69B84><EFBFBD>嚗㚁<E59A97>
- [ ] <20><EFBFBD><E59786><EFBFBD>蝑暹糓<E69AB9><EFBFBD>蝖殷<E89D96>
#### 撅訫<E69285>銵?<3F>?
- [ ] <20>孵稬<E5ADB5><E7A8AC><EFBFBD><E8AE83><EFBFBD><EFBFBD>賢炏撅訫<E69285>嚗?
- [ ] DeepSeek<65>斗鱏<E69697>臬炏摰峕㟲嚗?
- [ ] Qwen<65>斗鱏<E69697>臬炏摰峕㟲嚗?
- [ ] 鈭箏極憭齿瓲靽⊥<E99DBD><E28AA5>臬炏<E887AC>曄內嚗?
#### Excel撖澆枂 <20>?
- [ ] "撖澆枂蝏蠘恣<E8A098><EFBFBD>"<22>臬炏甇<E7828F>虜嚗?
- [ ] "撖澆枂<E6BE86><EFBFBD>蝏𤘪<E89D8F>"<22>臬炏甇<E7828F>虜嚗?
- [ ] "撖澆枂<E6BE86>劐葉憿?<3F>臬炏甇<E7828F>虜嚗?
- [ ] Excel<65><6C>鉄40<34>𦯀縑<F0A6AF80>舀糓<E88880><EFBFBD><E8A180><EFBFBD>
- [ ] Excel<65><EFBFBD><E6BE86>臬炏閫<E7828F><E996AB>嚗?
#### 憿菟𢒰撖潸⏛ <20>?
- [ ] 摰⊥瓲撌乩<E6928C><E4B9A9><EFBFBD>"<22><EFBFBD>蝏𤘪<E89D8F>蝏蠘恣"<22>厰僼<E58EB0>臬炏<E887AC>曄內嚗?
- [ ] <20>孵稬<E5ADB5>厰僼<E58EB0>賢炏甇<E7828F>頝唾蓮嚗?
- [ ] URL<52><4C>㺭projectId<49>臬炏甇<E7828F>隡𣳇<E99AA1>𡜐<EFBFBD>
---
## <20><> <20><EFBFBD><E58786><EFBFBD><EFBFBD>瘚贝<E7989A>蝏𤘪<E89D8F>
### 瘚贝<E7989A><E8B49D><EFBFBD>
- <20>𡒊垢嚗鐭ode.js + Fastify + Prisma
- <20>滨垢嚗鑹eact + Ant Design
- <20>唳旿摨橒<E691A8>PostgreSQL嚗Òsl_schema嚗?
### 瘚贝<E7989A><E8B49D>唳旿
| 瘚贝<E7989A>憿?| <20>唳旿<E594B3>?| <20><EFBFBD><E689AF><EFBFBD><EFBFBD> | 蝏𤘪<E89D8F> |
|--------|--------|---------|------|
| 蝏蠘恣API | 199蝭?| <500ms | <20>?200ms |
| 蝏𤘪<E89D8F><F0A498AA>𡑒” | 20<32>?憿?| <200ms | <20>?150ms |
| Excel撖澆枂嚗<E69E82><E59A97>蝡荔<E89DA1>| 199蝭?| <3蝘?| <20>?1.5蝘?|
| Excel撖澆枂嚗<E69E82><E59A97>蝡荔<E89DA1>| 999蝭?| <5蝘?| <20><EFBFBD> <20><EFBFBD>霂?|
### <20><EFBFBD>蝏栞捏
- <20>?蝏蠘恣API<50><EFBFBD>敹恍<E695B9><E6818D><EFBFBD><500ms嚗?
- <20>?Excel<65>滨垢撖澆枂瘚<E69E82><E7989A>嚗?1000<30>∠漲2蝘𡜐<E89D98>
- <20>𩤃<EFBFBD> 憭扳㺭<E689B3><EFBFBD>嚗?5000<30><EFBFBD><E288B4><EFBFBD><EFBFBD><E996AC>蝡臬紡<E887AC><EFBFBD><E7B6BD><EFBFBD><EFBFBD><EFBFBD>箏𦛚嚗?
---
## <20>㴓 銝<><E98A9D><EFBFBD>歇閫<E6AD87><E996AB><EFBFBD><EFBFBD>䔮憸?
### <20><EFBFBD>1嚗𡁻<E59A97><EFBFBD><E9A489>𤤿㦛 <20>?
**<2A><EFBFBD>**嚗𡁏<E59A97><EFBFBD><E89D8F>蝑?蝥喳<E89DA5>"嚗䔶<E59A97><E494B6>曄內"<22>㘾膄<E398BE><EFBFBD>"
**閫<><E996AB><EFBFBD><EFBFBD>**嚗?
- <20>𡒊<F0A1928A><EFBFBD>AI<41><EFBFBD><E5969F>䔶犖撌亙<E6928C>蝑?
- <20>㘾膄<E398BE><EFBFBD><EFBFBD>銁"<22>㘾膄"<22><EFBFBD><E5969F>嗆遬蝷?
- 鈭箏極<E7AE8F>函蕃AI<41><EFBFBD>璆𡁏<E79286>瘜?
---
### <20><EFBFBD>2嚗帋縑<E5B88B><EFBFBD><EFBFBD><20>?
**<2A><EFBFBD>**嚗𡁏<E59A97>瘜訫躹<E8A8AB><E8BAB9>I<EFBFBD><EFBFBD>餈䀹糓鈭箏極<E7AE8F><EFBFBD>
**閫<><E996AB><EFBFBD><EFBFBD>**嚗?
- AI<41><EFBFBD><E6A2AF><EFBFBD><E6A2B9>曄內<E69B84>峕芋<E5B395>见ế<E8A781>?
- 鈭箏極<E7AE8F><EFBFBD><E5969F><EFBFBD><E6A2B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>綫蝧翠I/銝垾I銝<49><E98A9D><EFBFBD>
- <20><EFBFBD><E59786><EFBFBD>嚗?蝘滨𠶖<E6BBA8><F0A0B696><EFBFBD><EFBFBD><EFBFBD>瘜?
---
### <20><EFBFBD>3嚗鍃xcel靽⊥<E99DBD>銝滚<E98A9D> <20>?
**<2A><EFBFBD>**嚗鍃xcel撖澆枂蝻箏<E89DBB>摰峕㟲靽⊥<E99DBD>
**閫<><E996AB><EFBFBD><EFBFBD>**嚗?
- <20><EFBFBD>銝?0<>?
- <20><><EFBFBD>峕芋<E5B395><EFBFBD><E8A781>游ế<E6B8B8><EFBFBD><EFBFBD>
- <20><>鉄鈭箏極憭齿瓲霂行<E99C82>
-<>銵峕遬蝷箏<E89DB7><E7AE8F>其縑<E585B6>?
---
### <20><EFBFBD>4嚗𡁜翰<F0A1819C><E7BFB0><EFBFBD>霂訫𤌴<E8A8AB>?<3F>?
**<2A><EFBFBD>**嚗𡁏<E59A97>甈⊥<E79488>霂閖<E99C82><E99696><EFBFBD><EFBFBD><E996AC><EFBFBD><EFBFBD>隡𪊲xcel
**閫<><E996AB><EFBFBD><EFBFBD>**嚗?
- <20>𥕦遣敹恍<E695B9><E6818D><EFBFBD>霂閗<E99C82><E99697>穿<EFBFBD>`get-test-projects.mjs`嚗?
- <20><EFBFBD>URL<52><4C>㺭隡𣳇<E99AA1>𥙑rojectId
-<><E98A9D><EFBFBD><E6A183><EFBFBD>霂駦RL
---
## <20><> <20><EFBFBD><E68092><EFBFBD><E8AAA8><EFBFBD><EFBFBD>渲扇敶?
### <20><EFBFBD><E595A3><EFBFBD>辣嚗?銝迎<E98A9D>
1. `frontend-v2/src/modules/asl/utils/excelExport.ts` - 235銵?
2. `backend/scripts/get-test-projects.mjs` - 85銵?
### 靽格㺿<E6A0BC><E3BABF>辣嚗?銝迎<E98A9D>
1. `backend/src/modules/asl/controllers/screeningController.ts` - <20><EFBFBD>119銵?
2. `backend/src/modules/asl/routes/index.ts` - <20><EFBFBD>3銵?
3. `frontend-v2/src/modules/asl/api/index.ts` - 靽格㺿1銵?
4. `frontend-v2/src/modules/asl/types/index.ts` - 靽格㺿11銵?
5. `frontend-v2/src/modules/asl/pages/ScreeningResults.tsx` - 721銵䕘<E98AB5><EFBFBD><E691B0><EFBFBD><EFBFBD>嚗?
6. `frontend-v2/src/modules/asl/pages/ScreeningWorkbench.tsx` - 靽格㺿10銵?
### <20>餉恣
- **<2A><EFBFBD><EFBFBD><E99A9E>**嚗𡁶漲1065銵?
- **靽格㺿隞<E3BABF><E99A9E>**嚗𡁶漲25銵?
- **<2A>𣳇膄隞<E88684><E99A9E>**嚗𡁶漲245銵䕘<E98AB5><E49598><EFBFBD>ScreeningResults嚗?
- **<2A><>憓硺誨<E7A1BA>?*嚗𡁶漲820銵?
---
## <20>?銋腈<E98A8B><E88588><EFBFBD><EFBFBD><EFBFBD><E59786>?
### <20><EFBFBD>摰峕㟲<E5B395>?
- [<5B><> 蝏蠘恣璁<E681A3><E79281><EFBFBD><EFBFBD><EFBFBD><EFBFBD>曄內
- [<5B><> PRISMA<4D>㘾膄蝏蠘恣<E8A098><E681A3>
- [<5B><><><E695BA><EFBFBD><EFBFBD>蝷粹<E89DB7><E7B2B9>?
- [<5B><> Tab<61><62>揢甇<E68FA2>
- [<5B><> 銵冽聢<E586BD>唳旿甇<E697BF><EFBC86><EFBFBD><E6AFBD>䲮獢<E4B2AE><E78DA2>
- [<5B><> AI<41><EFBFBD><E6A2AF>䔶犖撌亙<E6928C>蝑𡝗<E89D91>蝖桀躹<E6A180>?
- [<5B><> <20>㘾膄<E398BE><EFBFBD><E7AC94><EFBFBD><EFBFBD>
- [<5B><> 撅訫<E69285>銵峕遬蝷箏<E89DB7><E7AE8F>?
- [<5B><> Excel撖澆枂<E6BE86><EFBFBD><EFBFBD>虜嚗?蝘齿䲮撘𧶏<E69298>
- [<5B><> 憿菟𢒰撖潸⏛瘚<E28F9B><E7989A>
### 鈭穃<E988AD><E7A983><EFBFBD><E7BDB8>?
- [<5B><> <20>𡒊垢雿輻鍂<E8BCBB><EFBFBD>`prisma`摰硺<EFBFBD>
- [<5B><> 蝏蠘恣雿輻鍂<E8BCBB>𡁜<EFBFBD><F0A1819C>亥砭嚗<E7A0AD><E59A97><EFBFBD><EFBFBD><E4BA99>𧶏<EFBFBD>
- [<5B><> Excel<65>滨垢<E6BBA8><E59EA2><EFBFBD><EFBFBD><EFBFBD><E5A69F><EFBFBD><EFBFBD>嚗?
- [<5B><> 雿輻鍂`logger`霈啣<EFBFBD><EFBFBD><EFBFBD>
- [<5B><> 蝏煺<E89D8F><E785BA>躰秤憭<E7A7A4><E686AD>
### <20><EFBFBD>雿㯄<E99BBF>
- [<5B><> <20>𣳇<EFBFBD><EFBFBD><E9A489>𤤿㦛
- [<5B><> 靽⊥<E99DBD><EFBFBD><EFBFBD>𤘪<EFBFBD>
- [<5B><> 敹恍<E695B9><E6818D><EFBFBD>霂閙䲮靘?
- [<5B><> 撖澆枂<E6BE86><EFBFBD>摰峕㟲
---
## <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>獢?
- [Week 4撘<34><E69298>𤏸恣<F0A48FB8>哋(../04-撘<><E69298>𤏸恣<F0A48FB8>?04-Week4-蝏𤘪<E89D8F>撅閧內銝𤾸紡<F0A4BEB8><EFBFBD><E7AE8F>𤏸恣<F0A48FB8>?md) - 霈曇恣<E69B87><EFBFBD>
- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>箏𦛚皜<EFBFBD><EFBFBD>](../06-<2D><><EFBFBD><EFBFBD>箏𦛚/<2F><><EFBFBD><EFBFBD>箏𦛚皜<F0A69B9A><E79A9C>.md) - Excel<65>𡒊垢撖澆枂<E6BE86><EFBFBD>
- [鈭穃<E988AD><E7A983><EFBFBD><E7AC94>𤏸<EFBFBD><F0A48FB8><EFBFBD>(../../../04-撘<><E69298>𤏸<EFBFBD><F0A48FB8>?08-鈭穃<E988AD><E7A983><EFBFBD><E7AC94>𤏸<EFBFBD><F0A48FB8>?md) - <20><EFBFBD><EFBFBD><E996AB>
- [隞餃𦛚<EFBFBD><EFBFBD>](../04-撘<><E69298>𤏸恣<F0A48FB8>?03-隞餃𦛚<E9A483><F0A69B9A>圾.md) - Week 4隞餃𦛚皜<F0A69B9A><E79A9C>
---
## <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>甇?
### 蝡见朖<E8A781><EFBFBD>
1. <20>?摰峕㟲瘚<E39FB2><E7989A>瘚贝<E7989A>
2. <20>?瘚贝<E7989A><E8B49D><EFBFBD><EFBFBD>匧紡<E58CA7><EFBFBD><E7AE8F>?
3. <20>?撉諹<E69289>瘛瑕<E7989B><E79195><EFBFBD><E5AF9E>臬炏閫<E7828F><E996AB><EFBFBD><EFBFBD><E9A489>𤤿㦛
### <20><><EFBFBD><EFBFBD>箏𦛚
1. <20><EFBFBD> 敶𤘪㺭<F0A498AA><EFBFBD>>5000<30>⊥𧒄嚗<F0A79284><E59A97><EFBFBD><EFBFBD><EFBCB7>𡒊垢撖澆枂+OSS
2. <20><EFBFBD> 瘛餃<E7989B><E9A483><EFBFBD>蝏蠘恣<E8A098>曇”嚗<E2809D><EFBFBD><EFBFBD><E695B4><EFBFBD><EFBFBD>踹㦛嚗?
3. <20><EFBFBD> <20><EFBFBD><E88880><EFBFBD>銋匧紡<E58CA7><EFBFBD>畾?
### 韐券<E99F90>隡睃<E99AA1>
1. <20><EFBFBD> Prompt隡睃<E99AA1><EFBFBD><E59A97>蝖桃<E89D96>60%<25>?5%嚗?
2. <20><EFBFBD> 撟嗅<E6929F><EFBFBD><E686AD>隡睃<E99AA1><EFBFBD><E59A97><EFBFBD><E689AF>𣂼<EFBFBD>3<EFBFBD><EFBFBD>
---
**撘<><E69298><EFBFBD><E7A983>鞉𧒄<E99E89>?*嚗?025-11-21
**摰鮋<E691B0><E9AE8B>埈𧒄**嚗?撠𤩺𧒄
**隞<><E99A9E>韐券<E99F90>**嚗尠<E59A97> <20>猂inter<65>躰秤
**鈭穃<E988AD><E7A983><EFBFBD>霂?*嚗尠<E59A97> <20><EFBFBD>
**<EFBFBD><EFBFBD>?*嚗尠<E59A97> 撌脣<E6928C><E884A3><EFBFBD><E7909C><EFBFBD><E888AA><EFBFBD>霂?