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:
2026-01-14 19:15:01 +08:00
parent 3d35e9c58b
commit 1b53ab9d52
386 changed files with 52096 additions and 65238 deletions

View File

@@ -3,14 +3,14 @@
## <20>㴓 撉諹<E69289><E8ABB9><EFBFBD>
撉諹<EFBFBD>PKB璅<EFBFBD><EFBFBD>滨垢<EFBFBD><EFBFBD><EFBFBD>臬炏甇<EFBFBD>虜餈鞱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>穿<EFBFBD>
1. Dashboard页面渲染
2. ✅ 创建知识库流程
3. Workspace页面及3种工作模式
4. Ant Design X Chat集成
1. <EFBFBD>?Dashboard憿菟𢒰皜脫<EFBFBD>
2. <EFBFBD>?<3F>𥕦遣<F0A595A6><EFBFBD>摨𤘪<E691A8>蝔?
3. <EFBFBD>?Workspace憿菟𢒰<EFBFBD>?蝘滚極雿𨀣芋撘?
4. <EFBFBD>?Ant Design X Chat<EFBFBD><EFBFBD><EFBFBD>
---
## 🚀 快速启动
## <EFBFBD><EFBFBD> 敹恍<E695B9>笔鍳<E7AC94>?
### 1. <20>臬𢆡<E887AC>𡒊垢<F0A1928A>滚𦛚
```bash
@@ -29,39 +29,39 @@ npm run dev
---
## ✅ 验证清单
## <EFBFBD>?撉諹<E69289><EFBFBD><E79A9C>
### <20>嗆挾1嚗鋽ashboard憿菟𢒰撉諹<E69289>
#### 1.1 憿菟𢒰皜脫<E79A9C>
- [ ] 憿菟𢒰甇<F0A292B0><EFBFBD>㰘蝸嚗峕<E59A97><E5B395><EFBFBD>
- [ ] 创建知识库卡片显示正常(蓝色渐变背景)
- [ ] <EFBFBD>𥕦遣<EFBFBD><EFBFBD>摨枏㨃<EFBFBD><EFBFBD>遬蝷箸迤撣賂<EFBFBD><EFBFBD>肽𠧧皜𣂼<EFBFBD><EFBFBD>峕艶嚗?
- [ ] 5銝芰䰻霂<E4B0BB><E99C82>蝐餃<E89D90><E9A483><EFBFBD><E69AB9>曄內甇<E585A7>
- [ ] <20><EFBFBD><E594B3><EFBFBD>摨枏㨃<E69E8F><E3A883><EFBFBD>銵冽遬蝷綽<E89DB7><EFBFBD><E68692><EFBFBD>㗇㺭<E39787><EFBFBD>
#### 1.2 创建知识库流程
#### 1.2 <EFBFBD>𥕦遣<EFBFBD><EFBFBD>摨𤘪<EFBFBD>蝔?
**甇仿炊**:
1. 点击"创建知识库"卡片
1. <EFBFBD>孵稬"<22>𥕦遣<F0A595A6><EFBFBD>摨?<3F><EFBFBD>
2. 撉諹<E69289>Modal撘孵枂
3. <20>㗇𥋘"銝游<E98A9D><E6B8B8><EFBFBD><EFBFBD>"蝐餃<E89D90>
4. 点击"下一步"
5. 输入名称:"测试知识库V5"
6. 选择科室:"心内科"
7. 点击"下一步"
4. <EFBFBD>孵稬"銝衤<E98A9D>甇?
5. 颲枏<EFBFBD><EFBFBD>滨妍嚗?瘚贝<E7989A><E8B49D><EFBFBD>摨𡤄5"
6. <EFBFBD>㗇𥋘蝘穃恕嚗?敹<><E695B9>蝘?
7. <EFBFBD>孵稬"銝衤<E98A9D>甇?
8. <20><EFBFBD><E4BAA6><EFBFBD>辣銝𠹺<E98A9D><F0A0B9BA>屸𢒰
9. <20>孵稬"摰峕<E691B0>撟嗉<E6929F><E59789>亙極雿𨅯蝱"
**憸<><E686B8>蝏𤘪<E89D8F>**:
- [ ] Modal甇<6C>虜撘孵枂
- [ ] 3步向导正常切换
- [ ] 3甇亙<EFBFBD>撖潭迤撣詨<EFBFBD><EFBFBD>?
- [ ] 銵典<E98AB5>撉諹<E69289><E8ABB9><EFBFBD><EFBFBD><EFBFBD><E59A97>蝘啣<E89D98>憛恬<E6869B>
- [ ] <20>𣂼<EFBFBD><F0A382BC>𥕦遣<F0A595A6>舘歲頧砍<E9A0A7>Workspace
#### 1.3 样式检查
- [ ] 创建卡片高度为240px
#### 1.3 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- [ ] <EFBFBD>𥕦遣<EFBFBD><EFBFBD>擃睃漲銝?40px
- [ ] <20><EFBFBD><E288A0><EFBFBD><EFBFBD>銝氳ounded-xl
- [ ] <20><EFBFBD><E7A08D><EFBFBD>shadow-lg<6C><67><EFBFBD>
- [ ] "进入工作台"按钮为slate-800背景
- [ ] "餈𥕦<EFBFBD>撌乩<EFBFBD><EFBFBD>?<3F>厰僼銝漳late-800<EFBFBD>峕艶
---
@@ -69,55 +69,55 @@ npm run dev
#### 2.1 憿菟𢒰撣<F0A292B0><E692A3>
- [ ] 瘛梯𠧧Header嚗Ê̄g-slate-900嚗厰<E59A97>摨虫蛹h-14
- [ ] "返回知识库列表"按钮显示
- [ ] 知识库名称显示正确
- [ ] "餈𥪜<EFBFBD><EFBFBD><EFBFBD>摨枏<EFBFBD>銵?<3F>厰僼<E58EB0>曄內
- [ ] <EFBFBD><EFBFBD>摨枏<EFBFBD>蝘唳遬蝷箸迤蝖?
- [ ] Tab撖潸⏛<E6BDB8>曄內嚗<E585A7><EFBFBD>賡䔮蝑𢛵<E89D91><F0A29BB5>䰻霂<E4B0BB><E99C82>鈭改<E988AD>
- [ ] 默认激活"智能问答"Tab
- [ ] 暺䁅恕瞈<EFBFBD>瘣?<3F><EFBFBD><E7AE84><EFBFBD>"Tab
#### 2.2 <20><EFBFBD><E7AE84><EFBFBD>Tab
**工作模式选择器**:
**撌乩<EFBFBD><EFBFBD><EFBFBD>㗇𥋘<EFBFBD>?*:
- [ ] Collapse蝏<65>辣甇<E8BEA3>虜撅訫<E69285>/<2F>嗉絲
- [ ] 3蝘齿芋撘嗬adio甇<6F><EFBFBD>曄內
- [ ] <20><EFBFBD><E586BD><EFBFBD>粉璅<E79285>嚗𡁏遬蝷摭oken雿輻鍂<E8BCBB><E98D82><EFBFBD><E695B6>摨行辺
- [ ] 逐篇精读模式:显示文档选择下拉框
- [ ] 批处理模式:显示模板选择下拉框
- [ ] <EFBFBD><EFBFBD>蝎曇粉璅<EFBFBD>嚗𡁏遬蝷箸<EFBFBD><EFBFBD><EFBFBD>㗇𥋘銝𧢲<EFBFBD>獢?
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>芋撘𧶏<EFBFBD><EFBFBD>曄內璅⊥踎<EFBFBD>㗇𥋘銝𧢲<EFBFBD>獢?
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>粉璅<EFBFBD>**:
1. <20>㗇𥋘"<22><EFBFBD><E586BD><EFBFBD>粉璅<E79285>"
2. <20><EFBFBD><E79488><EFBFBD><E798A8>
3. 输入测试问题:"请总结这个知识库的主要内容"
4. 点击发送
3. 颲枏<EFBFBD>瘚贝<EFBFBD><EFBFBD><EFBFBD>嚗?霂瑟<E99C82><EFBFBD>餈嗘葵<E59798><EFBFBD>摨梶<E691A8>銝餉<E98A9D><E9A489><EFBFBD>"
4. <EFBFBD>孵稬<EFBFBD><EFBFBD>?
**憸<><E686B8>蝏𤘪<E89D8F>**:
- [ ]<E79488><EFBFBD><E798A8><EFBFBD><EFBFBD>曄內
- [ ] 输入框正常工作
- [ ] 消息发送成功
- [ ] 颲枏<EFBFBD><EFBFBD>迤撣詨極雿?
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- [ ] AI<41>𧼮<EFBFBD><EFBFBD><EFBFBD>曄內嚗<E585A7><E59A97>撘讛<E69298><E8AE9B><EFBFBD>
- [ ] 消息气泡样式正确AI: slate-50, 用户: blue-600
- [ ] <EFBFBD><EFBFBD>瘞娍部<EFBFBD><EFBFBD><EFBFBD>嚗㇁I: slate-50, <EFBFBD><EFBFBD>: blue-600嚗?
**<EFBFBD><EFBFBD>蝎曇粉璅<EFBFBD>**:
1. <20>㗇𥋘"<22><EFBFBD>蝎曇粉璅<E79285>"
2. 在下拉框中选择1-2篇文档
3. 查看"已选择 X 篇文档"提示
2. <EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝剝<EFBFBD>㗇𥋘1-2蝭<32><E89DAD>獢?
3. <EFBFBD><EFBFBD>"撌脤<E6928C>㗇𥋘 X 蝭<><E89DAD>獢?<3F>鞟內
4. 颲枏<E9A2B2>瘚贝<E7989A><E8B49D><EFBFBD>
5. 发送消息
5. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
**憸<><E686B8>蝏𤘪<E89D8F>**:
- [ ] <20><><EFBFBD>㗇𥋘甇<F0A58B98>
- [ ] 最多选5篇限制生效
- [ ] <EFBFBD><EFBFBD>憭𡁻<EFBFBD>?蝭<><E89DAD><EFBFBD><EFBFBD><E597A5>?
- [ ] Alert<72>鞟內<E99E9F>曄內
- [ ] Chat<61>屸𢒰甇<F0A292B0>虜撌乩<E6928C>
**批处理模式**:
1. 选择"批处理模式"
2. 选择模板:"临床研究信息提取"
3. 点击"开始执行"
4. 查看进度条
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>芋撘?*:
1. <EFBFBD>㗇𥋘"<22><EFBFBD><E5ADB5><EFBFBD>芋撘?
2. <EFBFBD>㗇𥋘璅⊥踎嚗?銝游<E98A9D><E6B8B8>𠉛弦靽⊥<E99DBD><E28AA5>𣂼<EFBFBD>"
3. <EFBFBD>孵稬"撘<>憪𧢲<E686AA>銵?
4. <EFBFBD><EFBFBD>餈𥕦漲<EFBFBD>?
**憸<><E686B8>蝏𤘪<E89D8F>**:
- [ ] 璅⊥踎<E28AA5>㗇𥋘甇<F0A58B98>
- [ ] 执行按钮可点击
- [ ] 进度条正常显示
- [ ] <EFBFBD><EFBFBD><EFBFBD>厰僼<EFBFBD><EFBFBD><EFBFBD>?
- [ ] 餈𥕦漲<EFBFBD>⊥迤撣豢遬蝷?
#### 2.3 <20><EFBFBD><EFBFBD>漣Tab
1. <20>孵稬"<22><EFBFBD><EFBFBD>漣"Tab
@@ -127,17 +127,17 @@ npm run dev
- [ ] Tab<61><62>揢甇<E68FA2>
- [ ] 銵冽聢甇<E881A2><EFBFBD>曄內
- [ ] <20><>﹝靽⊥<E99DBD><EFBFBD><EFBC86><E59A97>隞嗅<E99A9E><E59785><EFBFBD>𠶖<EFBFBD><F0A0B696><EFBFBD><EFBFBD>之撠譌<E692A0><E8AD8C>okens<6E><73><EFBFBD>隡䭾𧒄<E4ADBE><EFBFBD>
- [ ] MinerU解析状态徽章正确显示
- [ ] 删除按钮显示(悬停时)
- [ ] MinerU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>噬蝡䭾迤蝖格遬蝷?
- [ ] <EFBFBD>𣳇膄<EFBFBD>厰僼<EFBFBD>曄內嚗<EFBFBD><EFBFBD><EFBFBD>𨀣𧒄嚗?
#### 2.4 PDF侧边栏
1. 在智能问答Tab中
#### 2.4 PDF靘扯器<EFBFBD>?
1. <EFBFBD>冽惣<EFBFBD>賡䔮蝑烱ab銝?
2. <20>孵稬<E5ADB5>喃儒"撅訫<E69285> PDF 憸<><E686B8>"<22>厰僼
3. 查看PDF侧边栏
3. <EFBFBD><EFBFBD>PDF靘扯器<EFBFBD>?
**憸<><E686B8>蝏𤘪<E89D8F>**:
- [ ] 侧边栏从右侧滑入animate-slide-in-right
- [ ] 宽度为45%
- [ ] 靘扯器<EFBFBD><EFBFBD><EFBFBD>喃儒皛穃<EFBFBD>嚗Ònimate-slide-in-right嚗?
- [ ] 摰賢漲銝?5%
- [ ] <20>喲𡡒<E596B2>厰僼甇<E583BC>虜撌乩<E6928C>
- [ ] PDF璅⊥<E79285><E28AA5>峕艶甇<E889B6><EFBFBD>曄內
@@ -147,25 +147,25 @@ npm run dev
#### 3.1 Dashboard<72><EFBFBD>
```css
创建卡片: bg-gradient-to-br from-blue-50 to-indigo-50
卡片高度: h-[240px]
按钮颜色: bg-slate-800 hover:bg-blue-600
圆角: rounded-xl
<EFBFBD>?<EFBFBD>𥕦遣<EFBFBD><EFBFBD>: bg-gradient-to-br from-blue-50 to-indigo-50
<EFBFBD>?<EFBFBD><EFBFBD>擃睃漲: h-[240px]
<EFBFBD>?<EFBFBD>厰僼憸𡏭𠧧: bg-slate-800 hover:bg-blue-600
<EFBFBD>?<EFBFBD><EFBFBD><EFBFBD>: rounded-xl
```
#### 3.2 Workspace<63><EFBFBD>
```css
Header: h-14 bg-slate-900
Tab激活: border-blue-600 text-blue-600 font-bold
PDF侧边栏: w-[45%] bg-slate-100
消息气泡: bg-slate-50 (AI) / bg-blue-600 (用户)
<EFBFBD>?Header: h-14 bg-slate-900
<EFBFBD>?Tab瞈<EFBFBD>? border-blue-600 text-blue-600 font-bold
<EFBFBD>?PDF靘扯器<EFBFBD>? w-[45%] bg-slate-100
<EFBFBD>?<EFBFBD><EFBFBD>瘞娍部: bg-slate-50 (AI) / bg-blue-600 (<EFBFBD><EFBFBD>)
```
---
## <20><> 撣貉<E692A3><E8B289><EFBFBD><E6A185>埝䰻
### 问题1页面白屏
### <EFBFBD><EFBFBD>1嚗𡁻△<EFBFBD>蒾撅?
**<2A><EFBFBD><E888AA><EFBFBD>**:
- 頝舐眏<E88890>滨蔭<E6BBA8>躰秤
-<>辣撖澆<E69296><E6BE86>躰秤
@@ -178,16 +178,16 @@ npm run dev
### <20><EFBFBD>2嚗鋫PI霂瑟<E99C82>憭梯揖
**<2A><EFBFBD><E888AA><EFBFBD>**:
- 后端服务未启动
- API路由不匹配
- <EFBFBD>𡒊垢<EFBFBD>滚𦛚<EFBFBD>芸鍳<EFBFBD>?
- API頝舐眏銝滚龪<EFBFBD>?
- CORS<52><EFBFBD>
**<EFBFBD>埝䰻甇仿炊**:
1. 蝖株恕<E6A0AA>𡒊垢<F0A1928A>滚𦛚餈鞱<E9A488><E99EB1>灼http://localhost:3000`
2. 检查API路由是否为`/api/v2/pkb/*`
2. <EFBFBD><EFBFBD>丕PI頝舐眏<EFBFBD>臬炏銝槁/api/v1/pkb/*`
3. <20><EFBFBD><E4BAA6>𡒊垢<F0A1928A><EFBFBD>
### 问题3Chat组件不显示
### <EFBFBD><EFBFBD>3嚗鋴hat蝏<EFBFBD>辣銝齿遬蝷?
**<2A><EFBFBD><E888AA><EFBFBD>**:
- ChatContainer撖澆<E69296>頝臬<E9A09D><E887AC>躰秤
- conversationType<70>滨蔭<E6BBA8>躰秤
@@ -200,14 +200,14 @@ npm run dev
### <20><EFBFBD>4嚗𡁏甅撘譍<E69298><EFBFBD>
**<2A><EFBFBD><E888AA><EFBFBD>**:
- Tailwind CSS未生效
- Tailwind CSS<EFBFBD><EFBFBD><EFBFBD>?
- class<73>滨妍<E6BBA8><EFBFBD><E6BE86>躰秤
- 浏览器缓存
- 瘚讛<EFBFBD><EFBFBD><EFBFBD>摮?
**<EFBFBD>埝䰻甇仿炊**:
1. 清除浏览器缓存
1. <EFBFBD>膄瘚讛<EFBFBD><EFBFBD><EFBFBD>摮?
2.<><E79289>冉ailwind<6E>滨蔭
3. 使用浏览器DevTools检查元素样式
3. 雿輻鍂瘚讛<EFBFBD><EFBFBD>求evTools璉<EFBFBD><EFBFBD><EFBFBD>蝝䭾甅撘?
---
@@ -217,30 +217,30 @@ npm run dev
## PKB<4B>滨垢撉諹<E69289><E8ABB9><EFBFBD>
**撉諹<E69289><E8ABB9>園𡢿**: YYYY-MM-DD HH:mm
**验证人**: XXX
**浏览器**: Chrome/Firefox/Safari
**撉諹<EFBFBD>鈭?*: XXX
**瘚讛<EFBFBD><EFBFBD>?*: Chrome/Firefox/Safari
### Dashboard憿菟𢒰
- [ ] 页面渲染: ✅/❌
- [ ] 创建流程: ✅/❌
- [ ] 样式正确: ✅/❌
- [ ] 憿菟𢒰皜脫<EFBFBD>: <20>?<3F>?
- [ ] <EFBFBD>𥕦遣瘚<EFBFBD><EFBFBD>: <20>?<3F>?
- [ ] <EFBFBD><EFBFBD><EFBFBD>: <20>?<3F>?
- **<2A><EFBFBD>**: 嚗<><E59A97><EFBFBD><EFBFBD>
### Workspace憿菟𢒰
- [ ] 页面布局: ✅/❌
- [ ] 智能问答Tab: ✅/❌
- [ ] 知识资产Tab: ✅/❌
- [ ] PDF侧边栏: ✅/❌
- [ ] 憿菟𢒰撣<EFBFBD><EFBFBD>: <20>?<3F>?
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tab: <EFBFBD>?<3F>?
- [ ] <EFBFBD><EFBFBD><EFBFBD>Tab: <EFBFBD>?<3F>?
- [ ] PDF靘扯器<EFBFBD>? <20>?<3F>?
- **<2A><EFBFBD>**: 嚗<><E59A97><EFBFBD><EFBFBD>
### 撌乩<E6928C><E79285>
- [ ] 全文阅读: ✅/❌
- [ ] 逐篇精读: ✅/❌
- [ ] 批处理: ✅/❌
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>粉: <20>?<3F>?
- [ ] <EFBFBD><EFBFBD>蝎曇粉: <20>?<3F>?
- [ ] <EFBFBD><EFBFBD><EFBFBD>? <20>?<3F>?
- **<2A><EFBFBD>**: 嚗<><E59A97><EFBFBD><EFBFBD>
### <20><EFBFBD><EFBFBD>
- **完成度**: XX%
- **摰峕<EFBFBD>摨?*: XX%
- **撱箄悅**: XXX
```
@@ -248,26 +248,27 @@ npm run dev
## <20>㴓 撉諹<E69289><E8ABB9>𣂼<EFBFBD><F0A382BC><EFBFBD><EFBFBD>
### 必须通过P0
- Dashboard页面正常渲染
- ✅ 创建知识库流程完整
- Workspace页面正常显示
- ✅ 3种工作模式可切换
- Chat组件正常工作
### <EFBFBD><EFBFBD><EFBFBD>嚗㇊0嚗?
- <EFBFBD>?Dashboard憿菟𢒰甇<EFBFBD>虜皜脫<EFBFBD>
- <EFBFBD>?<3F>𥕦遣<F0A595A6><EFBFBD>摨𤘪<E691A8>蝔见<E89D94><E8A781>?
- <EFBFBD>?Workspace憿菟𢒰甇<EFBFBD><EFBFBD>曄內
- <EFBFBD>?3蝘滚極雿𨀣芋撘誩虾<E8AAA9><E899BE>
- <EFBFBD>?Chat<EFBFBD>辣甇<EFBFBD>虜撌乩<EFBFBD>
### 应该通过P1
- ✅ 样式100%遵循设计稿
- ✅ 动画效果流畅
- ✅ 响应式布局正常
### 摨磰砲<EFBFBD><EFBFBD>嚗㇊1嚗?
- <EFBFBD>?<3F><EFBFBD>100%<25>萄儐霈曇恣蝔?
- <EFBFBD>?<3F>函𤫇<E587BD><F0A4AB87><EFBFBD><EFBFBD><E7989A>
- <EFBFBD>?<3F><EFBFBD>撘誩<E69298><EFBFBD><EFBFBD>
### 可以优化P2
### <EFBFBD>臭誑隡睃<EFBFBD>嚗㇊2嚗?
- <20><> <20><>辣銝𠹺<E98A9D><F0A0B9BA><EFBFBD>
- 🔄 批处理结果展示
- <EFBFBD><EFBFBD> <20><EFBFBD><E5ADB5><EFBFBD><EFBFBD><EFBFBD>𨅯<EFBFBD>蝷?
- <20><> PDF<44><EFBFBD><E7AC94><EFBFBD>捆憸<E68D86><E686B8>
---
**下一步**: 根据验证结果修复问题然后进入RVW模块迁移
**銝衤<EFBFBD>甇?*: <20>寞旿撉諹<E69289>蝏𤘪<E89D8F>靽桀<E99DBD><E6A180><EFBFBD>嚗𣬚<E59A97><F0A3AC9A><EFBFBD><E88898>充VW璅<E79285><EFBFBD>宏嚗?