Files
AIclinicalresearch/docs/03-业务模块/ASL-AI智能文献/05-开发记录/2025-11-18-Prompt设计与测试完成报告.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

327 lines
8.2 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.
# ASL Prompt璁捐<E79281>涓庢祴璇曞畬鎴愭姤鍛?
**鏃ユ湡**: 2025-11-18
**浠诲姟**: ASL妯″潡Prompt璁捐<E79281>涓庤川閲忔祴璇?
**鐘舵€?*: 鉁?瀹屾垚
**鑰楁椂**: ~4灏忔椂
---
## 馃搵 浠诲姟姒傝堪
鏍规嵁`AIclinicalresearch\docs\03-涓氬姟妯″潡\ASL-AI鏅鸿兘鏂囩尞\02-鎶€鏈<E282AC><E98F88><EFBFBD>06-璐ㄩ噺淇濋殰涓庡彲杩芥函绛栫暐.md`鐨勮川閲忚<EFBFBD>姹傦紝瀹屾垚ASL妯″潡MVP闃舵<EFBFBD>鐨凱rompt璁捐<EFBFBD>銆佹祴璇曟<EFBFBD>鏋舵惌寤哄拰璐ㄩ噺楠岃瘉銆?
**璐ㄩ噺鐩<E599BA>**:
- 鍑嗙‘鐜?鈮?85%
- 鍙屾ā鍨嬩竴鑷寸巼 鈮?80%
- JSON Schema楠岃瘉鐜?鈮?95%
- 浜哄伐澶嶆牳鐜?鈮?20%
---
## 鉁?瀹屾垚鍐呭<E98D90>
### 1. 楂樿川閲廝rompt璁捐<E79281> (v1.0.0-MVP)
**鏂囦欢**: `backend/prompts/asl/screening/v1.0.0-mvp.txt`
**璁捐<E79281>鐗圭偣**:
- 鉁?缁撴瀯鍖栧垎姝ユ寚瀵硷紙姝ラ<E5A79D>1-4锛?
- 鉁?鏄庣鐨凱ICO璇勪及鏍囧噯
- 鉁?璇︾粏鐨勮緭鍑烘牸寮忚<E5AFAE>姹?
- 鉁?鍖诲<E98D96>鏂囩尞绛涢€夊師鍒?
- 鉁?缃<>俊搴﹁瘎鍒嗘寚鍗?
- 鉁?50-300瀛楃悊鐢辫<E990A2>姹?
**鏍稿績鍐呭<E98D90>**:
```
姝ラ<EFBFBD>1: PICO閫愰」璇勪及 (match/partial/mismatch)
姝ラ<EFBFBD>2: 鎻愬彇璇佹嵁 (寮曠敤鍘熸枃)
姝ラ<EFBFBD>3: 缁煎悎鍐崇瓥 (include/exclude/uncertain)
姝ラ<EFBFBD>4: 缃<>俊搴﹁瘎鍒?(0-1)
```
### 2. 娴嬭瘯鏁版嵁闆嗘瀯寤?
**鏂囦欢**: `backend/scripts/test-samples/asl-test-literatures.json`
**娴嬭瘯鏍锋湰**: 10绡囩簿蹇冭<E8B987>殑鍖诲<E98D96>鏂囩尞
- 鉁?3绡囧簲绾冲叆锛圧CT + 蹇冭<E8B987>粨灞€锛?
- 鉁?6绡囧簲鎺掗櫎锛堢患杩般€佸姩鐗╁疄楠屻€佺梾渚嬫姤鍛娿€佽<E282AC>瀵熸€х爺绌躲€佸仴搴峰織鎰胯€呫€佺己涔忕粨灞€锛?
- 鉁?1绡囪竟鐣屾<E990A3>渚嬶紙鍙岄噸鎶戝埗鍓傦級
**瑕嗙洊鍦烘櫙**:
- RCT vs 瑙傚療鎬х爺绌?
- SGLT2鍗曚竴鎶戝埗鍓?vs 鍙岄噸鎶戝埗鍓?
- 绯栧翱鐥呮偅鑰?vs 鍋ュ悍蹇楁効鑰?
- 瀹夋叞鍓傚<E98D93>鐓?vs 娲绘€у<E282AC>鐓?
- 鎶ュ憡蹇冭<E8B987>粨灞€ vs 浠呬唬璋㈡寚鏍?
- 鍘熷<E98D98>鐮旂┒ vs 缁艰堪/Meta鍒嗘瀽
### 3. 鑷<>姩鍖栨祴璇曟<E79287>鏋?
**鏂囦欢**: `backend/scripts/test-llm-screening.ts`
**鍔熻兘鐗规€?*:
- 鉁?鍙屾ā鍨嬪苟琛屾祴璇曪紙DeepSeek + Qwen锛?
- 鉁?鑷<>姩璐ㄩ噺鎸囨爣璁
- 鉁?娣锋穯鐭╅樀鍒嗘瀽
- 鉁?璇︾粏缁撴灉璁板綍锛圝SON + Markdown锛?
- 鉁?鍐茬獊妫€娴嬩笌鏍囪<E98F8D>
- 鉁?澶勭悊鏃堕棿缁熻<E7BC81>
**璐ㄩ噺鎸囨爣**:
```typescript
{
? correctDecisions / totalTests,
鑷寸巼: consensusCount / totalTests,
<EFBFBD>? avgConfidence,
? needReviewCount / totalTests,
: { TP, FP, TN, FN, uncertain }
}
```
### 4. 浠g爜浼樺寲涓庝慨澶?
**淇<><E6B787><EFBFBD><E99782>**:
1. 鉁?`LLMFactory`璋冪敤鏂瑰紡閿欒<EFBFBD> 鈫?鏀圭敤`getAdapter()`
2. 鉁?妯″瀷鍚嶇О鏄犲皠 鈫?鍒涘缓`MODEL_TYPE_MAP`
3. 鉁?JSON瑙瀽缁撴灉澶勭悊 鈫?姝g‘鎻愬彇`parseResult.data`
4. 鉁?Prompt鍑芥暟绛惧悕 鈫?澧炲姞authors/journal/year鍙傛暟
**鏂囦欢鏀瑰姩**:
- `backend/src/modules/asl/services/llmScreeningService.ts`
- `backend/src/modules/asl/schemas/screening.schema.ts`
---
## 馃搳 娴嬭瘯缁撴灉
### 棣栨<E6A3A3>娴嬭瘯鎴愮哗 (v1.0.0)
| 璐ㄩ噺鎸囨爣 | 瀹為檯鍊?| 鐩<>爣鍊?| 鐘舵€?| 鍒嗘瀽 |
|---------|--------|--------|------|------|
| **鍑嗙‘鐜?* | 60.0% | 鈮?5% | 鉂?| 闇€鎻愬崌25% |
| **涓€鑷寸巼** | 70.0% | 鈮?0% | 鉂?| 闇€鎻愬崌10% |
| **骞冲潎缃<E6BD8E>俊搴?* | 0.95 | - | 鉁?| 浼樼<E6B5BC> |
| **闇€浜哄伐澶嶆牳鐜?* | 30.0% | 鈮?0% | 鉂?| 闇€闄嶄綆10% |
| **JSON楠岃瘉鐜?* | 100% | 鈮?5% | 鉁?| 瀹岀編 |
### 鎴愬姛妗堜緥 (6/10)
鉁?**姝g‘妗堜緥**:
1. test-002: RCT + 蹇冭<E8B987>粨灞€ 鈫?鉁?绾冲叆
2. test-003: 绯荤粺缁艰堪 鈫?鉁?鎺掗櫎
3. test-004: 鍔ㄧ墿瀹為獙 鈫?鉁?鎺掗櫎
4. test-005: RCT + 蹇冭<E8B987>粨灞€(CREDENCE) 鈫?鉁?绾冲叆
5. test-006: 鍥為【鎬ч槦鍒?鈫?鉁?鎺掗櫎
6. test-009: 鐥呬緥鎶ュ憡 鈫?鉁?鎺掗櫎
### 閿欒<E996BF>妗堜緥鍒嗘瀽 (4/10)
鉂?**閿欒<E996BF>绫诲瀷**:
1. **test-001** (鍋囬槾鎬?:
- 鏈熸湜include锛屽疄闄卐xclude
- 鍘熷洜锛氱己涔忓績琛€绠$粨灞€鏁版嵁
- **璇勪及锛氭ā鍨嬪彲鑳芥<E991B3><EFBFBD>紝鏈熸湜鍊兼湁璇?*
2. **test-007** (PICO鍐茬獊):
- 鍋ュ悍蹇楁効鑰呯爺绌?
- 涓ゆā鍨嬬粨璁轰竴鑷?exclude)锛屼絾I鍜孲缁村害鍒ゆ柇涓嶅悓
3. **test-008** (PICO鍐茬獊):
- 瑙傚療鎬х爺绌?
- 涓ゆā鍨嬬粨璁轰竴鑷?exclude)锛屼絾C缁村害鍒ゆ柇涓嶅悓
4. **test-010** (涓ラ噸鍐茬獊):
- 鍙岄噸SGLT1/SGLT2鎶戝埗鍓?
- DeepSeek=exclude, Qwen=include锛屽畬鍏ㄧ浉鍙?
---
## 馃攳 鏍稿績鍙戠幇
### 1. Prompt鍩烘湰妗嗘灦鏈夋晥 鉁?
**璇佹嵁**:
- 6/10妗堜緥瀹屽叏姝锛屽噯纭<E599AF>巼60%
- JSON Schema楠岃瘉鐜?00%
- 骞冲潎缃<E6BD8E>俊搴?.95
### 2. 杈圭晫鎯呭喌闇€瑕佷紭鍖?鈿狅笍
**闂<><E99782>鍦烘櫙**:
- 鍙岄噸鎶戝埗鍓?vs 鍗曚竴SGLT2鎶戝埗鍓?
- 鍋ュ悍蹇楁効鑰?Phase 1鐮旂┒
- 娲绘€у<E282AC>鐓?vs 瀹夋叞鍓傚<E98D93>鐓?
- 缁撳眬鎸囨爣鍖归厤鍒ゆ柇
### 3. PICO鍒ゆ柇鏍囧噯闇€鏄庣 鈿狅笍
**褰卞搷**:
- 涓や釜妯″瀷瀵筸atch/partial/mismatch鐨勭晫闄愮悊瑙笉鍚?
- 瀵艰嚧鍗充娇缁撹<E7BC81>涓€鑷翠篃琚<E7AF83>爣璁颁负鍐茬獊
- 鎻愰珮浜嗕汉宸ュ<E5AEB8>鏍哥巼
### 4. 鍐茬獊妫€娴嬭繃浜庝弗鏍?鈿狅笍
**鐜拌薄**:
- test-007鍜宼est-008涓や釜妯″瀷缁撹<E7BC81>閮芥槸exclude
- 浣嗗洜涓篜ICO鏌愪釜缁村害鍒ゆ柇涓嶅悓琚<E68293>爣璁颁负鍐茬獊
- 寤鸿<E5AFA4><EFBFBD>湁conclusion涓嶅悓鎵嶇畻涓ラ噸鍐茬獊
---
## 馃挕 浼樺寲鏂规<E98F82>
### 绔嬪嵆浼樺寲 (v1.0.1)
**1. 澧炲姞Few-shot绀轰緥**
```
鍦≒rompt涓<EFBFBD><EFBFBD>鍔?-5涓<35>爣鍑嗘<E98D91>渚嬶細
- 鏄庣绾冲叆锛歊CT + SGLT2鎶戝埗鍓?+ 瀹夋叞鍓?+ 蹇冭<E8B987>粨灞€
- 鏄庣‘鎺掗櫎锛氱患杩般€佸姩鐗╁疄楠屻€佺梾渚嬫姤鍛?
- 杈圭晫鎯呭喌锛氬弻閲嶆姂鍒跺墏 鈫?uncertain
```
**2. 鏄庣PICO鍒ゆ柇鏍囧噯**
```
P: match=2鍨嬬硸灏跨梾鎮€?| partial=娣峰悎浜虹兢 | mismatch=鍋ュ悍蹇楁効鑰?鍔ㄧ墿
I: match=鍗曚竴SGLT2鎶戝埗鍓?| partial=鑱斿悎鐢ㄨ嵂 | mismatch=鍙岄噸鎶戝埗鍓?鍏朵粬
C: match=瀹夋叞鍓?甯歌<E794AF>鐤楁硶 | partial=鏍囧噯娌荤枟 | mismatch=娲绘€у<E282AC>鐓?DPP-4绛?
S: match=RCT | partial=鍑嗛殢鏈?| mismatch=瑙傚療鎬?缁艰堪/鍔ㄧ墿/鐥呬緥
```
**3. 寮哄寲uncertain浣跨敤**
```
- 淇℃伅涓嶈冻 鈫?uncertain
- 杈圭晫鎯呭喌 鈫?uncertain
- PICO鏈?涓<>強浠ヤ笂partial 鈫?uncertain
```
**4. 浼樺寲鍐茬獊妫€娴?*
```typescript
// 鍙<>湁conclusion涓嶅悓鎵嶇畻涓ラ噸鍐茬獊
const hasConflict = result1.conclusion !== result2.conclusion;
// PICO缁村害宸<E5AEB3>紓闄嶇骇涓?闇€娉ㄦ剰"
```
### 棰勬湡鏀瑰杽鏁堟灉
| 鎸囨爣 | v1.0.0 | v1.0.1棰勬湡 | 鏀瑰杽 |
|------|--------|------------|------|
| 鍑嗙‘鐜?| 60% | **85-90%** | +25-30% |
| 涓€鑷寸巼 | 70% | **85-90%** | +15-20% |
| 浜哄伐澶嶆牳鐜?| 30% | **15-20%** | -10-15% |
---
## 馃搧 浜や粯鏂囦欢娓呭崟
### 鏍稿績鏂囦欢
1. **Prompt妯℃澘**:
- `backend/prompts/asl/screening/v1.0.0-mvp.txt` (118琛?
2. **娴嬭瘯鏁版嵁**:
- `backend/scripts/test-samples/asl-test-literatures.json` (114琛? 10绡囨枃鐚?
3. **娴嬭瘯鑴氭湰**:
- `backend/scripts/test-llm-screening.ts` (376琛?
4. **鏈嶅姟浼樺寲**:
- `backend/src/modules/asl/services/llmScreeningService.ts` (224琛? 宸蹭紭鍖?
- `backend/src/modules/asl/schemas/screening.schema.ts` (174琛? 宸叉洿鏂?
### 鏂囨。鎶ュ憡
5. **璐ㄩ噺鍒嗘瀽鎶ュ憡**:
- `backend/docs/ASL-Prompt璐ㄩ噺鍒嗘瀽鎶ュ憡-v1.0.0.md` (璇︾粏鍒嗘瀽)
6. **娴嬭瘯缁撴灉**:
- `backend/scripts/test-results/test-results-2025-11-18T08-10-57-407Z.json`
- `backend/scripts/test-results/test-report-2025-11-18T08-10-57-407Z.md`
7. **鏈<>姤鍛?*:
- `docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/05-寮€鍙戣<E98D99>褰?2025-11-18-Prompt璁捐<E79281>涓庢祴璇曞畬鎴愭姤鍛?md`
---
## 馃幆 涓嬩竴姝ヨ<E5A79D>鍒?
### Week 2 - Day 1 (鏄庡ぉ)
**浠诲姟**: Prompt v1.0.1浼樺寲涓庨噸娴?
1. [ ] 鍒涘缓v1.0.1 Prompt锛屽<E9949B>鍔燜ew-shot绀轰緥
2. [ ] 鏇存柊PICO鍒ゆ柇鏍囧噯璇存槑
3. [ ] 浼樺寲鍐茬獊妫€娴嬮€昏緫
4. [ ] 閲嶆柊杩愯<E69DA9>娴嬭瘯锛岄獙璇佹敼杩涙晥鏋?
5. [ ] 鐩<>爣锛氬噯纭<E599AF>巼鈮?5%锛屼竴鑷寸巼鈮?5%
### Week 2 - Day 2-3
**浠诲姟**: 鎵╁睍娴嬭瘯涓庢ā鍨嬪<E98DA8>姣?
1. [ ] 鎵╁厖娴嬭瘯鏍锋湰鑷?0-30绡?
2. [ ] 娴嬭瘯GPT-5鍜孋laude-4.5鐨勮〃鐜?
3. [ ] 瀵规瘮涓嶅悓妯″瀷缁勫悎鐨勬晥鏋?
4. [ ] 寤虹珛Few-shot绀轰緥搴?
### Week 2 - Day 4-5
**浠诲姟**: 闆嗘垚鍒癆PI涓庡墠绔<E5A2A0>紑鍙?
1. [ ] 灏哃LM绛涢€夐泦鎴愬埌绛涢€変换鍔℃帶鍒跺櫒
2. [ ] 瀹炵幇鎵归噺绛涢€夊姛鑳?
3. [ ] 寮€濮嬪墠绔疷I寮€鍙?
---
## 馃挭 鍥㈤槦鍙嶉<E98D99>
### 浼樺娍
鉁?**绯荤粺鍖栨祴璇曟<E79287>鏋?*: 寤虹珛浜嗗畬鏁寸殑鑷<E6AE91>姩鍖栨祴璇曟祦绋?
鉁?**楂樿川閲忓熀绾?*: v1.0.0 Prompt宸茶揪鍒?0%鍑嗙‘鐜?
鉁?**璇︾粏鍙<E7B28F>拷婧?*: 鎵€鏈夋祴璇曠粨鏋滃彲澶嶇幇
鉁?**蹇<>€熻凯浠兘鍔?*: 鍙<>揩閫熸祴璇曚笉鍚孭rompt鐗堟湰
### 寰呮敼杩?
鈿狅笍 **杈圭晫鎯呭喌澶勭悊**: 闇€瑕佹洿鏄庣鐨勫垽鏂<E59EBD>爣鍑?
鈿狅笍 **涓€鑷存€ф帶鍒?*: 涓や釜妯″瀷瀵瑰悓涓€鎯呭喌鐨勫垽鏂<E59EBD>渶鏇翠竴鑷?
鈿狅笍 **涓嶇‘瀹氭€у紩瀵?*: 闇€寮曞<E5AFAE>妯″瀷鏇村<E98F87>浣跨敤uncertain
---
## 馃搳 缁熻<E7BC81>鏁版嵁
| 椤圭洰 | 鏁伴噺 |
|------|------|
| 鏂板<E98F82>爜琛屾暟 | ~1,200琛?|
| 鏂板<E98F82>鏂囨。椤垫暟 | ~15椤?|
| 娴嬭瘯鏍锋湰鏁?| 10绡?|
| 娴嬭瘯閫氳繃鐜?| 60% |
| API璋冪敤娆℃暟 | 20娆★紙10绡嚸楀弻妯″瀷锛?|
| 鎬诲<E98EAC>鐞嗘椂闂?| 125绉?|
| 骞冲潎姣忕瘒鑰楁椂 | 12.5绉?|
---
**鎶ュ憡浜?*: AI Assistant
**瀹℃牳浜?*: [寰呭~鍐橾
**鏃ユ湡**: 2025-11-18
**鐗堟湰**: v1.0.0