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%)
This commit is contained in:
@@ -1,61 +1,61 @@
|
||||
# IIT Manager Agent 技术方案 V1.1 更新完成报告
|
||||
# IIT Manager Agent 鎶€鏈<EFBFBD>柟妗?V1.1 鏇存柊瀹屾垚鎶ュ憡
|
||||
|
||||
> **更新日期:** 2025-12-31
|
||||
> **更新人员:** AI助手
|
||||
> **审查依据:** `IIT Manager Agent 技术方案审查与补丁.md`
|
||||
> **鏇存柊鏃ユ湡锛?* 2025-12-31
|
||||
> **鏇存柊浜哄憳锛?* AI鍔╂墜
|
||||
> **瀹℃煡渚濇嵁锛?* `IIT Manager Agent 鎶€鏈<EFBFBD>柟妗堝<EFBFBD>鏌ヤ笌琛ヤ竵.md`
|
||||
|
||||
---
|
||||
|
||||
## ✅ 更新完成
|
||||
## 鉁?鏇存柊瀹屾垚
|
||||
|
||||
已成功将技术方案从 V1.0 升级到 V1.1,整合了架构评审的所有修正意见。
|
||||
宸叉垚鍔熷皢鎶€鏈<EFBFBD>柟妗堜粠 V1.0 鍗囩骇鍒?V1.1锛屾暣鍚堜簡鏋舵瀯璇勫<EFBFBD>鐨勬墍鏈変慨姝f剰瑙併€?
|
||||
|
||||
**更新文件**:
|
||||
- `02-技术设计/IIT Manager Agent 完整技术开发方案 (V1.1).md`(2100+行)
|
||||
**鏇存柊鏂囦欢**锛?
|
||||
- `02-鎶€鏈<EFBFBD><EFBFBD>璁?IIT Manager Agent 瀹屾暣鎶€鏈<EFBFBD>紑鍙戞柟妗?(V1.1).md`锛?100+琛岋級
|
||||
|
||||
---
|
||||
|
||||
## 🔥 核心修正(3大致命问题已解决)
|
||||
## 馃敟 鏍稿績淇<E7B8BE><E6B787>锛?澶ц嚧鍛介棶棰樺凡瑙e喅锛?
|
||||
|
||||
### 1. ✅ 网络连通性风险(致命级)- 已修正
|
||||
### 1. 鉁?缃戠粶杩為€氭€ч<E282AC>闄╋紙鑷村懡绾э級- 宸蹭慨姝?
|
||||
|
||||
**问题**:
|
||||
- V1.0完全依赖Webhook推送
|
||||
**闂<EFBFBD><EFBFBD>**锛?
|
||||
- V1.0瀹屽叏渚濊禆Webhook鎺ㄩ€?
|
||||
- 鍖婚櫌鍐呯綉REDCap鏃犳硶涓诲姩璁块棶鍏<E6A3B6>綉SAE
|
||||
- Webhook机制会完全失效
|
||||
- Webhook鏈哄埗浼氬畬鍏ㄥけ鏁?
|
||||
|
||||
**修正方案**:
|
||||
- ✅ 新增 `SyncManager`(混合同步模式)
|
||||
- ✅ 优先使用Webhook(实时性)
|
||||
- ✅ 定时轮询作为兜底(可靠性)
|
||||
- ✅ 智能自适应:自动选择最佳模式
|
||||
**淇<EFBFBD><EFBFBD>鏂规<EFBFBD>**锛?
|
||||
- 鉁?鏂板<E98F82> `SyncManager`锛堟贩鍚堝悓姝ユā寮忥級
|
||||
- 鉁?浼樺厛浣跨敤Webhook锛堝疄鏃舵€э級
|
||||
- 鉁?瀹氭椂杞<E6A482><E69D9E>浣滀负鍏滃簳锛堝彲闈犳€э級
|
||||
- 鉁?鏅鸿兘鑷<E58598>€傚簲锛氳嚜鍔ㄩ€夋嫨鏈€浣虫ā寮?
|
||||
|
||||
**代码增加**:~400行(完整实现)
|
||||
**浠g爜澧炲姞**锛殈400琛岋紙瀹屾暣瀹炵幇锛?
|
||||
|
||||
### 2. ✅ 历史数据缺失(功能级)- 已补充
|
||||
### 2. 鉁?鍘嗗彶鏁版嵁缂哄け锛堝姛鑳界骇锛? 宸茶ˉ鍏?
|
||||
|
||||
**问题**:
|
||||
**闂<EFBFBD><EFBFBD>**锛?
|
||||
- V1.0鍙<EFBFBD>洃鍚<EFBFBD>柊褰曞叆鏁版嵁
|
||||
- 鍖婚櫌瀛橀噺鏁版嵁锛堝<E9949B>500涓<30>偅鑰咃級鏃犳硶璐ㄦ帶
|
||||
|
||||
**修正方案**:
|
||||
- ✅ 新增 `BulkScanService`(全量扫描)
|
||||
- ✅ 支持<50条直接处理,≥50条队列处理
|
||||
- ✅ 支持断点续传(长时间任务)
|
||||
- ✅ 新增API:`POST /api/v1/iit/projects/:id/scan-all`
|
||||
**淇<EFBFBD><EFBFBD>鏂规<EFBFBD>**锛?
|
||||
- 鉁?鏂板<E98F82> `BulkScanService`锛堝叏閲忔壂鎻忥級
|
||||
- 鉁?鏀<>寔<50鏉$洿鎺ュ<E98EBA>鐞嗭紝鈮?0鏉¢槦鍒楀<E98D92>鐞?
|
||||
- 鉁?鏀<>寔鏂<E5AF94>偣缁<E581A3>紶锛堥暱鏃堕棿浠诲姟锛?
|
||||
- 鉁?鏂板<E98F82>API锛歚POST /api/v1/iit/projects/:id/scan-all`
|
||||
|
||||
**代码增加**:~350行(完整实现)
|
||||
**浠g爜澧炲姞**锛殈350琛岋紙瀹屾暣瀹炵幇锛?
|
||||
|
||||
### 3. ✅ 前端技术栈不明确(规范级)- 已明确
|
||||
### 3. 鉁?鍓嶇<E98D93>鎶€鏈<E282AC>爤涓嶆槑纭<E6A791>紙瑙勮寖绾э級- 宸叉槑纭?
|
||||
|
||||
**问题**:
|
||||
- V1.0提到"微信小程序",但未明确技术栈
|
||||
**闂<EFBFBD><EFBFBD>**锛?
|
||||
- V1.0鎻愬埌"寰<>俊灏忕▼搴?锛屼絾鏈<E7B5BE>槑纭<E6A791>妧鏈<E5A6A7>爤
|
||||
|
||||
**修正方案**:
|
||||
- ✅ 明确使用 **Taro 4.x**(React语法)
|
||||
- ✅ 支持一次开发,多端运行(小程序 + H5)
|
||||
- ✅ 可复用 shared/components 逻辑
|
||||
- ✅ 团队熟悉React Hooks语法
|
||||
**淇<EFBFBD><EFBFBD>鏂规<EFBFBD>**锛?
|
||||
- 鉁?鏄庣‘浣跨敤 **Taro 4.x**锛圧eact璇<74>硶锛?
|
||||
- 鉁?鏀<>寔涓€娆″紑鍙戯紝澶氱<E6BEB6>杩愯<E69DA9>锛堝皬绋嬪簭 + H5锛?
|
||||
- 鉁?鍙<><E98D99>鐢?shared/components 閫昏緫
|
||||
- 鉁?鍥㈤槦鐔熸倝React Hooks璇<EFBFBD>硶
|
||||
|
||||
---
|
||||
|
||||
@@ -68,7 +68,7 @@ model IitProject {
|
||||
// ... 鍘熸湁瀛楁<E7809B>
|
||||
|
||||
// 馃敟 V1.1 鏂板<E98F82>
|
||||
cachedRules Json? // Protocol关键规则缓存(性能优化)
|
||||
cachedRules Json? // Protocol鍏抽敭瑙勫垯缂撳瓨锛堟€ц兘浼樺寲锛?
|
||||
lastSyncAt DateTime? // 涓婃<E6B693>鍚屾<E98D9A>鏃堕棿锛堝<E9949B>閲忔媺鍙栵級
|
||||
|
||||
@@schema("iit")
|
||||
@@ -97,24 +97,24 @@ model IitUserMapping {
|
||||
### V1.0 鍘熻<E98D98>鍒掞紙鏈夐<E98F88>闄╋級
|
||||
|
||||
```
|
||||
Day 1: 数据库
|
||||
Day 2-3: REDCap EM(Webhook推送)← 依赖医院网络
|
||||
Day 4-5: Node.js Webhook接收器
|
||||
Day 1: 鏁版嵁搴?
|
||||
Day 2-3: REDCap EM锛圵ebhook鎺ㄩ€侊級鈫?渚濊禆鍖婚櫌缃戠粶
|
||||
Day 4-5: Node.js Webhook鎺ユ敹鍣?
|
||||
```
|
||||
|
||||
### V1.1 修正计划(更可靠)
|
||||
### V1.1 淇<EFBFBD><EFBFBD>璁″垝锛堟洿鍙<EFBFBD>潬锛?
|
||||
|
||||
```
|
||||
Day 1: 数据库
|
||||
Day 2: 🔥 REDCap API Adapter(拉取能力)← 优先,主动拉取
|
||||
Day 2: 🔥 SyncManager(轮询兜底)← 核心可靠性
|
||||
Day 3: 🔥 全量扫描功能 ← 支持历史数据
|
||||
Day 4: REDCap EM(Webhook推送)← 作为增强,而非核心
|
||||
Day 1: 鏁版嵁搴?
|
||||
Day 2: 馃敟 REDCap API Adapter锛堟媺鍙栬兘鍔涳級鈫?浼樺厛锛屼富鍔ㄦ媺鍙?
|
||||
Day 2: 馃敟 SyncManager锛堣疆璇㈠厹搴曪級鈫?鏍稿績鍙<E7B8BE>潬鎬?
|
||||
Day 3: 馃敟 鍏ㄩ噺鎵<E599BA>弿鍔熻兘 鈫?鏀<>寔鍘嗗彶鏁版嵁
|
||||
Day 4: REDCap EM锛圵ebhook鎺ㄩ€侊級鈫?浣滀负澧炲己锛岃€岄潪鏍稿績
|
||||
```
|
||||
|
||||
**调整理由**:
|
||||
**璋冩暣鐞嗙敱**锛?
|
||||
1. API鎷夊彇鏇村彲鎺э紙涓嶄緷璧栧尰闄㈢綉缁滐級
|
||||
2. 能解决历史数据问题
|
||||
2. 鑳借В鍐冲巻鍙叉暟鎹<EFBFBD>棶棰?
|
||||
3. Webhook浣滀负澧炲己锛岃€岄潪鏍稿績渚濊禆
|
||||
|
||||
---
|
||||
@@ -123,17 +123,17 @@ Day 4: REDCap EM(Webhook推送)← 作为增强,而非核心
|
||||
|
||||
### Dify RAG鎬ц兘浼樺寲
|
||||
|
||||
**优化前**:
|
||||
**浼樺寲鍓?*锛?
|
||||
- 姣忔<E5A7A3>璐ㄦ帶閮借皟鐢―ify妫€绱㈡暣涓狿rotocol
|
||||
- 閫熷害鎱<E5AEB3>紝Token娑堣€楀ぇ
|
||||
|
||||
**优化后**:
|
||||
- Protocol上传时,预提取关键规则
|
||||
- 缓存到`cachedRules`字段(JSONB)
|
||||
- 简单规则直接判断(无需调用Dify)
|
||||
**浼樺寲鍚?*锛?
|
||||
- Protocol涓婁紶鏃讹紝棰勬彁鍙栧叧閿<EFBFBD><EFBFBD>鍒?
|
||||
- 缂撳瓨鍒癭cachedRules`瀛楁<EFBFBD>锛圝SONB锛?
|
||||
- 绠€鍗曡<EFBFBD>鍒欑洿鎺ュ垽鏂<EFBFBD>紙鏃犻渶璋冪敤Dify锛?
|
||||
- 澶嶆潅瑙勫垯鎵嶈皟鐢―ify RAG
|
||||
|
||||
**性能提升**:
|
||||
**鎬ц兘鎻愬崌**锛?
|
||||
- 绠€鍗曡<E98D97>鍒欐<E98D92>鏌ワ細<100ms锛堝師1-2绉掞級
|
||||
- Token娑堣€楅檷浣庯細80%锛堝彧妫€绱㈠<E7BBB1>鏉傝<E98F89>鍒欙級
|
||||
|
||||
@@ -143,88 +143,88 @@ Day 4: REDCap EM(Webhook推送)← 作为增强,而非核心
|
||||
|
||||
| 淇<>敼鍐呭<E98D90> | 浠g爜琛屾暟 | 鏂囨。绔犺妭 |
|
||||
|---------|---------|---------|
|
||||
| SyncManager(混合同步) | ~400行 | 3.1.4 |
|
||||
| BulkScanService(全量扫描) | ~350行 | 3.1.5 |
|
||||
| SyncManager锛堟贩鍚堝悓姝ワ級 | ~400琛?| 3.1.4 |
|
||||
| BulkScanService锛堝叏閲忔壂鎻忥級 | ~350琛?| 3.1.5 |
|
||||
| 鏁版嵁搴揝chema鏇存柊 | +4瀛楁<E7809B> | 4.1 |
|
||||
| API绔<49>偣鏂板<E98F82> | +1绔<31>偣 | 5.1 |
|
||||
| 开发计划调整 | 重排优先级 | 7.1 |
|
||||
| 寮€鍙戣<EFBFBD>鍒掕皟鏁?| 閲嶆帓浼樺厛绾?| 7.1 |
|
||||
| 鍓嶇<E98D93>鎶€鏈<E282AC>爤鏄庣‘ | Taro 4.x | 7.2 |
|
||||
| V1.1鏇存柊鎬荤粨 | 瀹屾暣璁板綍 | 鏂囨。鏈<E38082>熬 |
|
||||
|
||||
**总新增代码**:~750行
|
||||
**文档更新**:~300行
|
||||
**鎬绘柊澧炰唬鐮?*锛殈750琛?
|
||||
**鏂囨。鏇存柊**锛殈300琛?
|
||||
|
||||
---
|
||||
|
||||
## ✅ 验收检查清单
|
||||
## 鉁?楠屾敹妫€鏌ユ竻鍗?
|
||||
|
||||
- [x] SyncManager瀹屾暣瀹炵幇锛堟櫤鑳藉悓姝ャ€佽疆璇€€佸箓绛夋€э級
|
||||
- [x] BulkScanService瀹屾暣瀹炵幇锛堝叏閲忔壂鎻忋€佹柇鐐圭画浼狅級
|
||||
- [x] 数据库Schema更新(4个新字段)
|
||||
- [x] API端点新增(scan-all)
|
||||
- [x] 鏁版嵁搴揝chema鏇存柊锛?涓<>柊瀛楁<E7809B>锛?
|
||||
- [x] API绔<EFBFBD>偣鏂板<EFBFBD>锛坰can-all锛?
|
||||
- [x] 寮€鍙戣<E98D99>鍒掕皟鏁达紙浼樺厛绾ч噸鎺掞級
|
||||
- [x] 前端技术栈明确(Taro)
|
||||
- [x] 性能优化方案(Dify缓存)
|
||||
- [x] 鍓嶇<EFBFBD>鎶€鏈<EFBFBD>爤鏄庣‘锛圱aro锛?
|
||||
- [x] 鎬ц兘浼樺寲鏂规<EFBFBD>锛圖ify缂撳瓨锛?
|
||||
- [x] V1.1鏇存柊鎬荤粨锛堝畬鏁磋<EFBFBD>褰曪級
|
||||
- [x] 文件重命名(V1.0 → V1.1)
|
||||
- [x] 鏂囦欢閲嶅懡鍚嶏紙V1.0 鈫?V1.1锛?
|
||||
|
||||
---
|
||||
|
||||
## 馃幆 鍏抽敭鎴愬氨
|
||||
|
||||
### 架构可靠性
|
||||
### 鏋舵瀯鍙<EFBFBD>潬鎬?
|
||||
|
||||
**V1.0**:
|
||||
- ❌ 依赖Webhook(医院内网会失效)
|
||||
- ❌ 只监听新数据(历史数据无法质控)
|
||||
- ❌ Webhook丢失 = 数据遗漏
|
||||
**V1.0**锛?
|
||||
- 鉂?渚濊禆Webhook锛堝尰闄㈠唴缃戜細澶辨晥锛?
|
||||
- 鉂?鍙<>洃鍚<E6B483>柊鏁版嵁锛堝巻鍙叉暟鎹<E69A9F>棤娉曡川鎺э級
|
||||
- 鉂?Webhook涓㈠け = 鏁版嵁閬楁紡
|
||||
|
||||
**V1.1**:
|
||||
- ✅ 混合同步(Webhook + 轮询双保险)
|
||||
- ✅ 支持历史数据(全量扫描)
|
||||
- ✅ 可靠性:99.9%(不依赖医院网络)
|
||||
**V1.1**锛?
|
||||
- 鉁?娣峰悎鍚屾<E98D9A>锛圵ebhook + 杞<><E69D9E>鍙屼繚闄╋級
|
||||
- 鉁?鏀<>寔鍘嗗彶鏁版嵁锛堝叏閲忔壂鎻忥級
|
||||
- 鉁?鍙<>潬鎬э細99.9%锛堜笉渚濊禆鍖婚櫌缃戠粶锛?
|
||||
|
||||
### 开发效率
|
||||
### 寮€鍙戞晥鐜?
|
||||
|
||||
- ✅ 完全复用平台能力(storage/logger/jobQueue/cache)
|
||||
- ✅ Postgres-Only架构(无需Redis)
|
||||
- ✅ 断点续传(CheckpointService通用化)
|
||||
- ✅ 代码复用率:>80%
|
||||
- 鉁?瀹屽叏澶嶇敤骞冲彴鑳藉姏锛坰torage/logger/jobQueue/cache锛?
|
||||
- 鉁?Postgres-Only鏋舵瀯锛堟棤闇€Redis锛?
|
||||
- 鉁?鏂<>偣缁<E581A3>紶锛圕heckpointService閫氱敤鍖栵級
|
||||
- 鉁?浠g爜澶嶇敤鐜囷細>80%
|
||||
|
||||
### 鍖荤枟鍚堣<E98D9A>
|
||||
|
||||
- ✅ 影子状态机制(AI只建议,人类确权)
|
||||
- ✅ 完整审计日志(符合FDA 21 CFR Part 11)
|
||||
- ✅ 可追溯(所有操作有trace_id)
|
||||
- 鉁?褰卞瓙鐘舵€佹満鍒讹紙AI鍙<49>缓璁<E7BC93>紝浜虹被纭<E8A2AB>潈锛?
|
||||
- 鉁?瀹屾暣瀹¤<E780B9>鏃ュ織锛堢<E9949B>鍚團DA 21 CFR Part 11锛?
|
||||
- 鉁?鍙<>拷婧<E68BB7>紙鎵€鏈夋搷浣滄湁trace_id锛?
|
||||
|
||||
---
|
||||
|
||||
## 📌 下一步建议
|
||||
## 馃搶 涓嬩竴姝ュ缓璁?
|
||||
|
||||
### 绔嬪嵆琛屽姩
|
||||
|
||||
1. **浼佷笟寰<E7AC9F>俊娉ㄥ唽**锛堜粖澶╋級
|
||||
- 注册开发者账号
|
||||
- 娉ㄥ唽寮€鍙戣€呰处鍙?
|
||||
- 鍒涘缓娴嬭瘯搴旂敤
|
||||
- 鑾峰彇API鍑<49>瘉
|
||||
|
||||
2. **鎶€鏈<E282AC>爤纭<E788A4><E7BAAD>**锛堜粖澶╋級
|
||||
- Node.js 22 ✅
|
||||
- PostgreSQL 15 ✅
|
||||
- Taro 4.x(小程序) ✅
|
||||
- Node.js 22 鉁?
|
||||
- PostgreSQL 15 鉁?
|
||||
- Taro 4.x锛堝皬绋嬪簭锛?鉁?
|
||||
|
||||
3. **鍒涘缓椤圭洰鐪嬫澘**锛堜粖澶╋級
|
||||
- 按V1.1优先级排列任务
|
||||
- 鎸塚1.1浼樺厛绾ф帓鍒椾换鍔?
|
||||
- 姣忔棩绔欎細鍚屾<E98D9A>杩涘害
|
||||
|
||||
### MVP开发启动(明天)
|
||||
### MVP寮€鍙戝惎鍔<EFBFBD>紙鏄庡ぉ锛?
|
||||
|
||||
**Week 1 优先级**(V1.1版):
|
||||
**Week 1 浼樺厛绾?*锛圴1.1鐗堬級锛?
|
||||
1. Day 1: 鏁版嵁搴撳垵濮嬪寲 + 浼佸井娴嬭瘯
|
||||
2. Day 2: REDCap API Adapter + SyncManager ← 核心
|
||||
3. Day 3: 全量扫描功能 ← 支持历史数据
|
||||
4. Day 4: REDCap EM + Webhook ← 增强
|
||||
5. Day 5: 企微适配器 + 端到端测试
|
||||
2. Day 2: REDCap API Adapter + SyncManager 鈫?鏍稿績
|
||||
3. Day 3: 鍏ㄩ噺鎵<EFBFBD>弿鍔熻兘 鈫?鏀<>寔鍘嗗彶鏁版嵁
|
||||
4. Day 4: REDCap EM + Webhook 鈫?澧炲己
|
||||
5. Day 5: 浼佸井閫傞厤鍣?+ 绔<>埌绔<E59F8C>祴璇?
|
||||
|
||||
---
|
||||
|
||||
@@ -232,23 +232,24 @@ Day 4: REDCap EM(Webhook推送)← 作为增强,而非核心
|
||||
|
||||
**鏋舵瀯璇勫<E79287>鎰忚<E98EB0>**锛氣渽 **閫氳繃**
|
||||
|
||||
**核心修正**:
|
||||
- ✅ 致命风险(网络连通性):已解决
|
||||
- ✅ 功能缺失(历史数据):已补充
|
||||
- ✅ 技术栈不明(前端):已明确
|
||||
**鏍稿績淇<EFBFBD><EFBFBD>**锛?
|
||||
- 鉁?鑷村懡椋庨櫓锛堢綉缁滆繛閫氭€э級锛氬凡瑙e喅
|
||||
- 鉁?鍔熻兘缂哄け锛堝巻鍙叉暟鎹<E69A9F>級锛氬凡琛ュ厖
|
||||
- 鉁?鎶€鏈<E282AC>爤涓嶆槑锛堝墠绔<E5A2A0>級锛氬凡鏄庣‘
|
||||
|
||||
**方案状态**:
|
||||
**鏂规<EFBFBD>鐘舵€?*锛?
|
||||
- 馃殌 **Ready to Code**
|
||||
- 🎯 **可直接执行**
|
||||
- 📋 **符合云原生规范**
|
||||
- 馃幆 **鍙<>洿鎺ユ墽琛?*
|
||||
- 馃搵 **绗﹀悎浜戝師鐢熻<E990A2>鑼?*
|
||||
- 馃挭 **鍖荤枟鍚堣<E98D9A>灏辩华**
|
||||
|
||||
---
|
||||
|
||||
**报告完成日期**:2025-12-31
|
||||
**维护者**:架构团队
|
||||
**审查状态**:✅ 通过
|
||||
**可执行性**:✅ 可立即启动MVP开发
|
||||
**鎶ュ憡瀹屾垚鏃ユ湡**锛?025-12-31
|
||||
**缁存姢鑰?*锛氭灦鏋勫洟闃?
|
||||
**瀹℃煡鐘舵€?*锛氣渽 閫氳繃
|
||||
**鍙<EFBFBD>墽琛屾€?*锛氣渽 鍙<>珛鍗冲惎鍔∕VP寮€鍙?
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user