Files
AIclinicalresearch/docs/08-项目管理/03-每周计划/2025-11-18-AI助手工作交接.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

560 lines
15 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.
# AI鍔╂墜宸ヤ綔浜ゆ帴鏂囨。
> **浜ゆ帴鏃ユ湡锛?* 2025-11-18
> **鍓嶄换AI锛?* Claude (Session 2025-11-17~11-18)
> **鍚庝换AI锛?* 寰呮帴鎵?
> **椤圭洰鐘舵€侊細** 骞冲彴鍩虹<E98DA9>璁炬柦瀹屾垚锛孉SL妯″潡寮€鍙戝氨缁?
> **浜ゆ帴鍘熷洜锛?* 涓婁笅鏂囬暱搴﹂檺鍒讹紝鍑嗗<E98D91>寮€濮婣SL妯″潡寮€鍙?
---
## 馃搵 椤圭洰姒傝<E5A792>锛?0绉掞級
**椤圭洰鍚嶇О锛?* AIclinicalresearch - 鍖诲<E98D96>绉戠爺AI骞冲彴
**褰撳墠浠诲姟锛?* 寮€鍙慉SL锛圓I鏅鸿兘鏂囩尞锛夋ā鍧?
**绗<>竴鍔熻兘锛?* 鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫锛圗xcel瀵煎叆 鈫?AI鍙屾ā鍨嬬瓫閫?鈫?浜哄伐澶嶆牳 鈫?瀵煎嚭锛?
**褰撳墠鐘舵€侊細** 鎵€鏈変緷璧栧氨缁<E6B0A8>紝鍙<E7B49D>珛鍗冲紑濮嬪紑鍙?鉁?
---
## 鉁?宸插畬鎴愮殑宸ヤ綔锛?025-11-17~11-18锛?
### 2025-11-17锛氬钩鍙板熀纭€璁炬柦瀹炴柦
**瀹屾垚鍐呭<E98D90>锛?* 8涓<38>牳蹇冩ā鍧楋紝2,532琛屾柊浠爜锛?2涓<32>柊鏂囦欢
| # | 妯″潡 | 鍔熻兘 | 娴嬭瘯鐘舵€?|
|---|------|------|---------|
| 1 | 瀛樺偍鏈嶅姟 | 鏂囦欢涓婁紶涓嬭浇锛堟湰鍦?OSS鍒囨崲锛?| 鉁?100% |
| 2 | 鏃ュ織绯荤粺 | 缁撴瀯鍖朖SON鏃ュ織 | 鉁?100% |
| 3 | 缂撳瓨鏈嶅姟 | 鍐呭瓨/Redis缂撳瓨 | 鉁?100% |
| 4 | 寮傛<E5AFAE>浠诲姟 | 闀挎椂闂翠换鍔¢槦鍒?| 鉁?100% |
| 5 | 鍋ュ悍妫€鏌?| SAE鍋ュ悍妫€鏌ョ<E98F8C>鐐?| 鉁?100% |
| 6 | 鐩戞帶鎸囨爣 | 鎬ц兘鐩戞帶 | 鉁?100% |
| 7 | 鏁版嵁搴撹繛鎺ユ睜 | Prisma杩炴帴姹犱紭鍖?| 鉁?100% |
| 8 | 鐜<><E9909C>閰嶇疆 | 缁熶竴閰嶇疆绠$悊 | 鉁?100% |
**鍏抽敭鏂囦欢锛?*
- `backend/src/common/storage/` - 瀛樺偍鏈嶅姟
- `backend/src/common/logging/` - 鏃ュ織绯荤粺
- `backend/src/common/cache/` - 缂撳瓨鏈嶅姟
- `backend/src/common/jobs/` - 寮傛<E5AFAE>浠诲姟
- `backend/src/common/health/` - 鍋ュ悍妫€鏌?
- `backend/src/common/monitoring/` - 鐩戞帶鎸囨爣
- `backend/src/config/database.ts` - 鏁版嵁搴撻厤缃?
- `backend/src/config/env.ts` - 鐜<><E9909C>閰嶇疆
**娴嬭瘯楠岃瘉锛?*
- 娴嬭瘯鑴氭湰锛歚backend/src/scripts/test-platform-infrastructure.ts`
- 娴嬭瘯API锛歚GET http://localhost:3001/test/platform`
- 娴嬭瘯缁撴灉锛欰LL_PASSED锛?00%锛?
**鏂囨。杈撳嚭锛?*
- `docs/09-鏋舵瀯瀹炴柦/04-骞冲彴鍩虹<E98DA9>璁炬柦瑙勫垝.md` - 璇︾粏璁捐<E79281>鏂规<E98F82>
- `docs/08-椤圭洰绠$悊/03-姣忓懆璁″垝/2025-11-17-骞冲彴鍩虹<E98DA9>璁炬柦瀹炴柦瀹屾垚鎶ュ憡.md`
- `docs/08-椤圭洰绠$悊/03-姣忓懆璁″垝/2025-11-17-骞冲彴鍩虹<E98DA9>璁炬柦楠岃瘉鎶ュ憡.md`
---
### 2025-11-18锛欳loseAI闆嗘垚涓庢€ц兘浼樺寲
**瀹屾垚鍐呭<E98D90>锛?* GPT-4o + Claude-4.5 闆嗘垚锛屾€ц兘浼樺寲25鍊?
| 宸ヤ綔椤?| 鐘舵€?| 鎴愭灉 |
|--------|------|------|
| 鍒涘缓CloseAI鏍稿績閫傞厤鍣?| 鉁?| `CloseAIAdapter.ts` |
| 鍒涘缓GPT鍜孋laude灏佽<E7818F> | 鉁?| `GPT5Adapter.ts` + `ClaudeAdapter.ts` |
| 鏇存柊绫诲瀷瀹氫箟鍜屽伐鍘傜被 | 鉁?| `types.ts` + `LLMFactory.ts` |
| 鍒涘缓娴嬭瘯鑴氭湰 | 鉁?| `test-closeai.ts` |
| 鎬ц兘浼樺寲 | 鉁?| gpt-5-pro(50绉? 鈫?gpt-4o(1.5绉? |
| 娴嬭瘯楠岃瘉 | 鉁?| 鎵€鏈夋祴璇曢€氳繃锛?涓<>祴璇曪級 |
**鎬ц兘鎻愬崌锛?*
- GPT鍝嶅簲鏃堕棿锛?0绉?鈫?1.5绉掞紙**25鍊嶆彁鍗?*锛夆瓙
- 鍙屾ā鍨嬬瓫閫夛細51绉?鈫?4.8绉掞紙**10鍊嶆彁鍗?*锛夆瓙
- 娴佸紡璋冪敤锛?7绉?鈫?1.1绉掞紙**52鍊嶆彁鍗?*锛夆瓙
**鍙<>敤鐨凩LM妯″瀷锛?涓<>級锛?*
| 妯″瀷 | 鍝嶅簲鏃堕棿 | 鎴愭湰 | 閫傜敤鍦烘櫙 |
|------|---------|------|---------|
| DeepSeek-V3 | 13绉?| 鏈€浣?| 蹇<>€熷垵绛?|
| **GPT-4o** | **1.5绉?* 猸?| 閫備腑 | 楂樿川閲忕瓫閫夛紙鎺ㄨ崘锛?|
| Claude-4.5 | 2.8绉?| 閫備腑 | 绗<>笁鏂逛徊瑁?|
| Qwen3-72B | 10绉?| 浣?| 涓<>枃鐞嗚В |
| Qwen-Long | 15绉?| 浣?| 瓒呴暱涓婁笅鏂?|
**鎺ㄨ崘绛涢€夌瓥鐣ワ細**
```
DeepSeek锛堢粡娴庯級+ GPT-4o锛堣川閲忥級鈫?4.8绉?鈫?涓€鑷村垯閲囩撼 鈫?涓嶄竴鑷村垯澶嶆牳
```
**鍏抽敭鏂囦欢锛?*
- `backend/src/common/llm/adapters/CloseAIAdapter.ts` - 鏍稿績閫傞厤鍣?
- `backend/src/common/llm/adapters/GPT5Adapter.ts` - GPT-4o灏佽<E7818F>
- `backend/src/common/llm/adapters/ClaudeAdapter.ts` - Claude灏佽<E7818F>
- `backend/src/scripts/test-closeai.ts` - 娴嬭瘯鑴氭湰
**鏂囨。杈撳嚭锛?*
- 鏇存柊 `docs/00-绯荤粺鎬讳綋璁捐<E79281>/00-绯荤粺褰撳墠鐘舵€佷笌寮€鍙戞寚鍗?md` - 娣诲姞LLM妯″瀷鏀<E780B7>寔璇︽儏
---
### 2025-11-18锛氭枃妗綋绯诲畬鍠?
**瀹屾垚鍐呭<E98D90>锛?* 鍒涘缓鏂扮殑鏍稿績鏂囨。锛屽畬鍠凙I瀵规帴鏂囨。
| 鏂囨。 | 鐢ㄩ€?| 鐘舵€?|
|------|------|------|
| **00-绯荤粺褰撳墠鐘舵€佷笌寮€鍙戞寚鍗?md** | 绯荤粺鐪熷疄鐘舵€?鏍稿績瑙勮寖 | 鉁?鏂板缓 |
| **START-HERE-FOR-NEW-AI.md** | 鏂癆I 2鍒嗛挓蹇<E68C93>€熷惎鍔?| 鉁?鏂板缓 |
| **[AI瀵规帴] ASL妯″潡蹇<E6BDA1>€熶笂涓嬫枃.md** | ASL寮€鍙戝揩閫熶笂鎵?| 鉁?鏇存柊 |
---
## 馃幆 涓嬩竴姝ヤ换鍔★紙缁欐柊AI锛?
### 浠诲姟锛氬紑鍙慉SL妯″潡 - 鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫鍔熻兘
**寮€鍙戝懆鏈燂細** 4鍛?
**绗<>竴姝ワ細** 瀹氫箟鏁版嵁搴揝chema锛?灏忔椂锛?
**浜や粯鐩<E7B2AF>爣锛?* Excel瀵煎叆 鈫?AI鍙屾ā鍨嬬瓫閫?鈫?浜哄伐澶嶆牳 鈫?瀵煎嚭缁撴灉
**璇︾粏浠诲姟娓呭崟锛?* `docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/04-寮€鍙戣<E98D99>鍒?03-浠诲姟鍒嗚В.md`锛?0+涓<>换鍔★級
---
## 馃摎 缁欐柊AI鐨勫繀璇绘竻鍗曪紙鎸夐『搴忥級
### 馃敟 棣栨<E6A3A3><EFBFBD>姩蹇呰<E8B987>锛?鍒嗛挓锛?
**馃搫 `START-HERE-FOR-NEW-AI.md`**锛堥」鐩<E3808D>牴鐩<E789B4>綍锛?
- 10绉掗€熻<E282AC>椤圭洰姒傚喌
- 宸插畬鎴愬伐浣滄€荤粨
-<>竴姝ユ搷浣滄寚鍗?
- 鏍稿績浠g爜绀轰緥
- 绂佹<E7BB82>鎿嶄綔娓呭崟
### 猸?绯荤粺鍏ㄨ矊锛?0鍒嗛挓锛?
**馃搫 `docs/00-绯荤粺鎬讳綋璁捐<E79281>/00-绯荤粺褰撳墠鐘舵€佷笌寮€鍙戞寚鍗?md`**
- **Part 1.3锛氬悗绔<EFBFBD>灦鏋?- 骞冲彴鍩虹<E98DA9>璁炬柦**锛堝繀璇伙級
- 8涓<38>ā鍧楃殑浣跨敤鏂规硶
- 璇︾粏浠g爜绀轰緥
- **Part 2.3锛氫簯鍘熺敓寮€鍙戣<EFBFBD>鑼?*锛堝繀椤婚伒瀹堬級
- DO/DON'T娓呭崟
- 绂佹<E7BB82>鎿嶄綔鍒楄〃
- **LLM妯″瀷鏀<E780B7>寔**锛堝繀璇伙級
- 5涓<35>ā鍨嬬殑璋冪敤鏂瑰紡
- 鎬ц兘娴嬭瘯缁撴灉
### 猸?ASL寮€鍙戞寚鍗楋紙15鍒嗛挓锛?
**馃搫 `docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/[AI瀵规帴] ASL妯″潡蹇<E6BDA1>€熶笂涓嬫枃.md`**
- 馃挰 缁欐柊AI鐨勪竴娈佃瘽
- 褰撳墠鐘舵€佽<E282AC>鎯?
- 蹇呰<E8B987>鏂囨。娓呭崟
-<>€熼棶绛?
- 绔嬪嵆寮€濮嬬殑姝ラ<E5A79D>
### 猸?璇︾粏寮€鍙戣<E98D99>鍒掞紙20鍒嗛挓锛?
**馃搫 `docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/04-寮€鍙戣<E98D99>鍒?02-鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫寮€鍙戣<E98D99>鍒?md`**
- Week 1 Day 1锛氬畬鏁寸殑Prisma Schema浠爜锛堝彲鐩存帴澶嶅埗锛?
- 姣忓ぉ鐨勮<E990A8>缁嗗紑鍙戜换鍔?
- LLM绛涢€夋湇鍔唬鐮佺ず渚?
### 馃搵 浠诲姟鍒嗚В娓呭崟锛?5鍒嗛挓锛?
**馃搫 `docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/04-寮€鍙戣<E98D99>鍒?03-浠诲姟鍒嗚В.md`**
- 80+涓<><E6B693>缁嗕换鍔?
- 姣忎釜浠诲姟鐨勯獙鏀舵爣鍑?
-<>竴涓<E7ABB4>换鍔★細T1.1.1 璁捐<E79281>Prisma Schema
---
## 馃攽 鍏抽敭淇℃伅閫熸煡
### 鏂囦欢璺<E6ACA2>
```bash
# 椤圭洰鏍圭洰褰?
D:\MyCursor\AIclinicalresearch\
# 鏍稿績鏂囨。
START-HERE-FOR-NEW-AI.md # 2鍒嗛挓蹇<E68C93>€熷惎鍔?猸?
docs/00-绯荤粺鎬讳綋璁捐<E79281>/
鈹斺攢鈹€ 00-绯荤粺褰撳墠鐘舵€佷笌寮€鍙戞寚鍗?md # 绯荤粺鍏ㄨ矊 猸愨瓙猸?
# ASL寮€鍙戞枃妗?
docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/
鈹溾攢鈹€ [AI瀵规帴] ASL妯″潡蹇<E6BDA1>€熶笂涓嬫枃.md # ASL蹇<4C>€熶笂鎵?猸愨瓙
鈹斺攢鈹€ 04-寮€鍙戣<E98D99>鍒?
鈹溾攢鈹€ 02-鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫寮€鍙戣<E98D99>鍒?md # 璇︾粏璁″垝+浠g爜 猸愨瓙猸?
鈹斺攢鈹€ 03-浠诲姟鍒嗚В.md # 80+浠诲姟娓呭崟 猸愨瓙
# 骞冲彴鍩虹<E98DA9>璁炬柦
backend/src/common/ # 8涓<38>ā鍧楋紙storage/logging/cache/jobs绛夛級
backend/src/common/llm/adapters/ # 5涓狶LM妯″瀷閫傞厤鍣?
# ASL寮€鍙戜綅缃?
backend/src/modules/asl/ # 鍚庣<E98D9A>爜锛堢┖鐩<E29496>綍锛屽緟寮€鍙戯級
frontend-v2/src/modules/asl/ # 鍓嶇<E98D93>爜锛堝崰浣嶏紝寰呭紑鍙戯級
backend/prisma/schema.prisma # 鏁版嵁搴揝chema锛堝緟娣诲姞ASL琛<4C>
```
### Git浠撳簱
```bash
杩滅▼浠撳簱锛歨ttps://gitee.com/hahafeng117/AIclinicalresearch.git
鍒嗘敮锛歮aster
鐢ㄦ埛锛欻aHafeng / gofeng117@163.com
```
### 鏈嶅姟鍦板潃
```bash
鍚庣<EFBFBD>锛歨ttp://localhost:3001
鍓嶇<EFBFBD>锛歨ttp://localhost:5173
鍋ュ悍妫€鏌ワ細http://localhost:3001/health
娴嬭瘯API锛歨ttp://localhost:3001/test/platform
```
---
## 鈿狅笍 閲嶈<E996B2>鎻愰啋锛堝繀椤婚伒瀹堬級
### 鏍稿績鍘熷垯锛?鏉★級
1. 鉁?**澶嶇敤骞冲彴鍩虹<E98DA9>璁炬柦** - storage/logger/cache/jobQueue
2. 鉁?**闆朵唬鐮佺幆澧冨垏鎹?* - 鐜<><E9909C>鍙橀噺鎺у
3. 鉁?**Schema闅旂<E99785>** - 鎵€鏈夎〃 `@@schema("asl_schema")`
4. 鉁?**浜戝師鐢熶紭鍏?* - 鏃犵姸鎬併€佸紓姝ヤ换鍔°€佸唴瀛樿В鏋?
5. 鉁?**鎵归噺Git鎻愪氦** - 涓€澶╃粨鏉熷悗缁熶竴鎻愪氦
### 绂佹<E7BB82>鐨勬搷浣滐紙10鏉★級
1. 鉂?棰戠箒Git鎻愪氦
2. 鉂?鏈<>湴鏂囦欢瀛樺偍锛坄fs.writeFileSync`锛?
3. 鉂?閲嶅<E996B2>瀹炵幇骞冲彴鏈嶅姟
4. 鉂?鍚屾<E98D9A>澶勭悊闀夸换鍔?
5. 鉂?纭<>紪鐮侀厤缃?
6. 鉂?鍒涘缓鏂癙risma瀹炰緥
7. 鉂?浣跨敤any绫诲瀷
8. 鉂?璺⊿chema鏌ヨ<E98F8C>
9. 鉂?鎻愪氦鏈<E6B0A6>祴璇曚唬鐮?
10. 鉂?寮哄埗鎺ㄩ€佸埌master
**璇︾粏璇存槑锛?* `docs/00-绯荤粺鎬讳綋璁捐<E79281>/00-绯荤粺褰撳墠鐘舵€佷笌寮€鍙戞寚鍗?md` Part 3
---
## 馃殌 鏂癆I鍚<49>姩娴佺▼锛?姝ワ級
### Step 1: 闃呰<E99783><EFBFBD>姩鏂囨。锛?鍒嗛挓锛夆瓙
```bash
鎵撳紑锛歋TART-HERE-FOR-NEW-AI.md
```
### Step 2: 闃呰<E99783>绯荤粺鍏ㄨ矊锛?0鍒嗛挓锛夆瓙猸愨瓙
```bash
鎵撳紑锛歞ocs/00-绯荤粺鎬讳綋璁捐<E79281>/00-绯荤粺褰撳墠鐘舵€佷笌寮€鍙戞寚鍗?md
閲嶇偣闃呰<EFBFBD>锛?
- Part 1.3锛氬钩鍙板熀纭€璁炬柦锛堝繀璇伙級
- LLM妯″瀷鏀<E780B7>寔绔犺妭锛堝繀璇伙級
- Part 2.3锛氫簯鍘熺敓寮€鍙戣<EFBFBD>鑼冿紙蹇呴』閬靛畧锛?
- Part 3锛氶噸瑕佸師鍒欎笌绂佸繉锛堝繀椤婚伒瀹堬級
```
### Step 3: 鏌ョ湅ASL寮€鍙戣<E98D99>鍒掞紙15鍒嗛挓锛夆瓙猸?
```bash
鎵撳紑锛歞ocs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/04-寮€鍙戣<E98D99>鍒?02-鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫寮€鍙戣<E98D99>鍒?md
閲嶇偣鏌ョ湅锛?
- Week 1 Day 1锛歅risma Schema浠爜锛堢<E9949B>299-402琛岋級
- 浜戝師鐢熷紑鍙戞敞鎰忎簨椤癸紙绗?7-162琛岋級
```
### Step 4: 寮€濮嬬<E6BFAE>涓€涓<E282AC>换鍔★紙2灏忔椂锛?
```bash
浠诲姟ID锛歍1.1.1 - 璁捐<E79281>Prisma Schema
鏂囦欢浣嶇疆锛歜ackend/prisma/schema.prisma
鍙傝€冧唬鐮侊細02-鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫寮€鍙戣<E98D99>鍒?md Week 1 Day 1
```
---
## 馃捇 骞冲彴鍩虹<E98DA9>璁炬柦浣跨敤鎸囧崡锛堝叧閿<E58FA7>
### 1. 瀛樺偍鏈嶅姟锛堝繀椤讳娇鐢<E5A887>
```typescript
import { storage } from '@/common/storage'
// 涓婁紶PDF鏂囦欢
const url = await storage.upload('literature/123.pdf', buffer)
// 涓嬭浇鏂囦欢
const buffer = await storage.download('literature/123.pdf')
// 鍒犻櫎鏂囦欢
await storage.delete('literature/123.pdf')
// 鐜<><E9909C>鍒囨崲锛堥浂浠爜锛?
// 鏈<>湴锛歋TORAGE_TYPE=local 鈫?瀛樺偍鍒?backend/uploads/
// 浜戠<E6B59C>锛歋TORAGE_TYPE=oss 鈫?瀛樺偍鍒伴樋閲屼簯OSS
```
### 2. 鏃ュ織绯荤粺锛堝繀椤讳娇鐢<E5A887>
```typescript
import { logger } from '@/common/logging'
// 鍩虹<E98DA9>鏃ュ織
logger.info('User logged in', { userId: 123 })
logger.error('Database error', { error: err.message })
// 甯︽ā鍧椾笂涓嬫枃
const aslLogger = logger.child({ module: 'ASL', projectId: 456 })
aslLogger.info('Screening started', { count: 100 })
// 杈撳嚭鏍煎紡锛?
// 鏈<>湴锛氬僵鑹插彲璇绘牸寮?
// 鐢熶骇锛欽SON鏍煎紡锛堥樋閲屼簯SLS瑙瀽锛?
```
### 3. 缂撳瓨鏈嶅姟锛堟帹鑽愪娇鐢<E5A887>
```typescript
import { cache } from '@/common/cache'
// 缂撳瓨LLM鍝嶅簲锛堝噺灏戞垚鏈<E59E9A>
const cacheKey = `llm:${model}:${hash(prompt)}`
const cached = await cache.get(cacheKey)
if (!cached) {
const response = await llm.chat(prompt)
await cache.set(cacheKey, response, 60 * 60) // 1灏忔椂
return response
}
return cached
```
### 4. 寮傛<E5AFAE>浠诲姟锛堝繀椤讳娇鐢<E5A887>
```typescript
import { jobQueue } from '@/common/jobs'
// 鍒涘缓寮傛<E5AFAE>浠诲姟锛堢珛鍗宠繑鍥烇紝閬垮厤瓒呮椂锛?
const job = await jobQueue.push('asl:screening', {
projectId: 123,
literatureIds: [1, 2, 3, ..., 1000] // 澶ч噺鏁版嵁
})
// 杩斿洖浠诲姟ID缁欏墠绔?
res.send({ jobId: job.id, status: 'processing' })
// 鍓嶇<E98D93><EFBFBD><E69D9E>浠诲姟鐘舵€?
const status = await jobQueue.getJob(job.id)
// { status: 'processing', progress: 45 }
```
### 5. LLM璋冪敤锛堝弻妯″瀷绛涢€夛級
```typescript
import { LLMFactory } from '@/common/llm/adapters'
// 骞惰<E9AA9E>璋冪敤涓や釜妯″瀷锛?.8绉掑畬鎴愶級
const [deepseekResult, gpt4oResult] = await Promise.all([
LLMFactory.getAdapter('deepseek-v3').chat(messages),
LLMFactory.getAdapter('gpt-5').chat(messages) // 瀹為檯浣跨敤 gpt-4o
])
// 鍒ゆ柇涓€鑷存€?
if (deepseekResult.decision === gpt4oResult.decision) {
// 鍏辫瘑搴﹂珮锛岀洿鎺ラ噰绾?
return { decision: deepseekResult.decision, consensus: 'high' }
} else {
// 涓嶄竴鑷达紝鍚<E7B49D>敤Claude浠茶<E6B5A0>鎴栦汉宸ュ<E5AEB8>鏍?
const claudeResult = await LLMFactory.getAdapter('claude-4.5').chat(messages)
return { decision: claudeResult.decision, consensus: 'medium', needReview: true }
}
```
---
## 馃搳 浠爜缁熻<E7BC81>
**骞冲彴鍩虹<E98DA9>璁炬柦锛?025-11-17锛夛細**
- 鏂板<E98F82>鏂囦欢锛?2涓?
- 鏂板<E98F82>爜锛?,532琛?
- 娴嬭瘯瑕嗙洊鐜囷細100%
**CloseAI闆嗘垚锛?025-11-18锛夛細**
- 鏂板<E98F82>鏂囦欢锛?涓?
- 鏂板<E98F82>爜锛殈500琛?
- 娴嬭瘯閫氳繃锛?/4
**鎬昏<E98EAC>锛堜袱澶╁伐浣滐級锛?*
- 鏂板<E98F82>鏂囦欢锛?6涓?
- 鏂板<E98F82>爜锛殈3,000琛?
- 娴嬭瘯鐘舵€侊細鍏ㄩ儴閫氳繃
---
## 馃攧 Git鎻愪氦璁板綍
**鏈€鍚庝竴娆℃彁浜わ細** 2025-11-18
**鎻愪氦鍐呭<E98D90>锛?* 骞冲彴鍩虹<E98DA9>璁炬柦瀹炴柦瀹屾垚
**鎻愪氦绫诲瀷锛?* feat(platform): 瀹屾垚骞冲彴鍩虹<E98DA9>璁炬柦8涓<38>ā鍧?
**鈿狅笍 娉ㄦ剰锛?*
- CloseAI闆嗘垚浠爜灏氭湭鎻愪氦鍒癎it
- 绛堿SL妯″潡寮€鍙戜竴璧锋彁浜わ紙閬靛惊鎵归噺鎻愪氦鍘熷垯锛?
- 鐢ㄦ埛瑕佹眰锛氫竴澶╁伐浣滅粨鏉熷悗缁熶竴鎻愪氦
---
## 馃幆 鏂癆I鐨勭<E990A8>涓€涓<E282AC>换鍔?
### 浠诲姟ID锛歍1.1.1 - 璁捐<E79281>Prisma Schema
**浠诲姟鎻忚堪锛?* 鍦?`backend/prisma/schema.prisma`<>畾涔?涓狝SL妯″瀷
**鎵€闇€鏃堕棿锛?* 2灏忔椂
**鍙傝€冧唬鐮侊細** `docs/03-涓氬姟妯″潡/ASL-AI鏅鸿兘鏂囩尞/04-寮€鍙戣<E98D99>鍒?02-鏍囬<E98F8D>鎽樿<E98EBD>鍒濈瓫寮€鍙戣<E98D99>鍒?md` 绗?99-402琛?
**楠屾敹鏍囧噯锛?*
- [ ] 4涓<34>ā鍨嬪畾涔夊畬鎴愶紙AslScreeningProject, AslLiterature, AslScreeningResult, AslScreeningTask锛?
- [ ] 姣忎釜妯″瀷鍖呭惈 `@@schema("asl_schema")`
- [ ] 涓嶶ser妯″瀷鐨勫叧鑱斿畾涔?
- [ ] 鍖呭惈OSS鐩稿叧瀛楁<E7809B>锛坧dfUrl, pdfOssKey, pdfFileSize锛?
- [ ] 杩佺Щ鎴愬姛锛歚npx prisma migrate dev`
- [ ] 瀹㈡埛绔<E59F9B>敓鎴愶細`npx prisma generate`
- [ ] 绫诲瀷妫€鏌ラ€氳繃
**鎵ц<E98EB5>鍛戒护锛?*
```bash
cd backend
npx prisma migrate dev --name add_asl_screening_tables
npx prisma generate
```
---
## 馃挕 甯歌<E794AF><EFBFBD><E99782>棰勫垽
**Q1锛氬墠鍚庣<E98D9A>鏈嶅姟濡備綍鍚<E7B68D>姩锛?*
```bash
# 鍚庣<E98D9A>
cd backend
npm run dev # http://localhost:3001
# 鍓嶇<E98D93>
cd frontend-v2
npm run dev # http://localhost:5173
```
**Q2锛氬<E9949B>浣曟祴璇曞钩鍙板熀纭€璁炬柦锛?*
```bash
# 璁块棶娴嬭瘯API
curl http://localhost:3001/test/platform
# 鎴栬繍琛屾祴璇曡剼鏈?
cd backend
npx tsx src/scripts/test-platform-infrastructure.ts
```
**Q3锛氬<E9949B>浣曟祴璇旵loseAI闆嗘垚锛?*
```bash
cd backend
npx tsx src/scripts/test-closeai.ts
# 棰勬湡锛?涓<>祴璇曞叏閮ㄩ€氳繃锛屾€昏€楁椂<10绉?
```
**Q4锛氭暟鎹<E69A9F>簱濡備綍杩炴帴锛?*
```bash
# .env 鏂囦欢宸查厤缃?
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/ai_clinical
# Prisma Studio锛堟煡鐪嬫暟鎹<E69A9F>簱锛?
cd backend
npx prisma studio
```
**Q5锛氬<E9949B>浣曟煡鐪嬫棩蹇楋紵**
```bash
# 鍚庣<E98D9A>у埗鍙颁細杈撳嚭缁撴瀯鍖栨棩蹇?
# 鏈<>湴锛氬僵鑹插彲璇绘牸寮?
# 鐢熶骇锛欽SON鏍煎紡
```
---
## 馃搶 寮€鍙戞敞鎰忎簨椤?
### 浜戝師鐢熷紑鍙戣<E98D99>姹傦紙蹇呴』閬靛畧锛?
1. 鉁?Excel蹇呴』鍐呭瓨瑙瀽锛堜笉钀界洏锛?
```typescript
const workbook = xlsx.read(buffer, { type: 'buffer' })
```
2. 鉁?LLM鎵归噺浠诲姟蹇呴』寮傛<E5AFAE>澶勭悊
```typescript
const job = await jobQueue.push('asl:screening', data)
```
3. 鉁?鏂囦欢涓婁紶浣跨敤瀛樺偍鏈嶅姟
```typescript
await storage.upload('literature/file.pdf', buffer)
```
4. 鉁?浣跨敤鍏ㄥ眬Prisma瀹炰緥
```typescript
import { prisma } from '@/config/database'
```
5. 鉁?缁撴瀯鍖栨棩蹇楄緭鍑?
```typescript
logger.info('Operation', { userId, action })
```
### Git鎻愪氦瑕佹眰锛堝繀椤婚伒瀹堬級
1. 鉁?涓€澶╁伐浣滅粨鏉熷悗缁熶竴鎻愪氦锛堜笉瑕侀<E79195>绻佹彁浜わ級
2. 鉁?蹇呴』娴嬭瘯楠岃瘉鍚庢墠鑳芥彁浜?
3. 鉁?Commit Message鏍煎紡锛歚feat(asl): 鎻忚堪`
---
## 馃帀 浜ゆ帴瀹屾垚
**鍓嶄换AI宸ヤ綔鎴愭灉锛?*
- 鉁?骞冲彴鍩虹<E98DA9>璁炬柦锛?涓<>ā鍧楋級
- 鉁?CloseAI闆嗘垚锛圙PT-4o + Claude锛?
- 鉁?鎬ц兘浼樺寲锛?5鍊嶆彁鍗囷級
- 鉁?瀹屾暣鏂囨。浣撶郴
**鍚庝换AI宸ヤ綔璧风偣锛?*
- 馃殌 鎵€鏈変緷璧栧氨缁?
- 馃殌 5涓狶LM妯″瀷鍙<E780B7>
- 馃殌 骞冲彴鏈嶅姟瀹屾暣
- 馃殌 璇︾粏鏂囨。鎸囧<E98EB8>
- 馃殌 绗<>竴涓<E7ABB4>换鍔℃槑纭?
**绁濆紑鍙戦『鍒╋紒浠?T1.1.1 寮€濮嬪惂锛?* 馃殌
---
**鏂囨。璺<E38082>緞锛?* `AIclinicalresearch/docs/08-椤圭洰绠$悊/03-姣忓懆璁″垝/2025-11-18-AI鍔╂墜宸ヤ綔浜ゆ帴.md`
**鏈€鍚庢洿鏂帮細** 2025-11-18
**缁存姢鑰咃細** AI鍔╂墜