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%)
583 lines
12 KiB
Markdown
583 lines
12 KiB
Markdown
# 撌亙<E6928C>C - AI Copilot Few-shot蝷箔<E89DB7>摨?
|
||
|
||
> **<2A><>﹝<EFBFBD><EFB99D>𧋦**: V1.0
|
||
> **<2A>𥕦遣<F0A595A6>交<EFBFBD>**: 2025-12-06
|
||
> **<2A>券<EFBFBD>?*: System Prompt銝剔<E98A9D>Few-shot蝷箔<E89DB7>
|
||
> **閬<><E996AC><EFBFBD>箸艶**: 隞𤾸抅蝖<E68A85>皜<EFBFBD><E79A9C><EFBFBD>圈<EFBFBD>蝥扳<E89DA5>銵伐<E98AB5>10銝芣瓲敹<E793B2>㦤<EFBFBD>?
|
||
|
||
---
|
||
|
||
## <20><> 蝷箔<E89DB7><E7AE94>餉<EFBFBD>
|
||
|
||
| 蝻硋噡 | <20>箸艶<E7AEB8>滨妍 | 蝥批<E89DA5> | <20><><EFBFBD>航<EFBFBD><E888AA>?| <20>餌<EFBFBD>隞瑕<E99A9E>?|
|
||
|------|---------|------|---------|---------|
|
||
| 1 | 蝏煺<E89D8F>蝻箏仃<E7AE8F>潭<EFBFBD>霈?| Level 1 | replace | <20>唳旿<E594B3><E697BF><EFBFBD><EFBFBD>?潃鐥<E6BD83>潃?|
|
||
| 2 | <20>啣<EFBFBD>澆<EFBFBD>皜<EFBFBD><E79A9C> | Level 1 | 甇<><E79487>+蝐餃<E89D90>頧祆揢 | 璉<>撉<EFBFBD><E69289>澆<EFBFBD><E6BE86>?潃鐥<E6BD83>潃鐥<E6BD83> |
|
||
| 3 | <20><>掩<EFBFBD>㗛<EFBFBD>蝻𣇉<E89DBB> | Level 2 | map | 蝏蠘恣撱箸芋 潃鐥<E6BD83>潃鐥<E6BD83>潃?|
|
||
| 4 | 餈䂿賒<E482BF>㗛<EFBFBD><E3979B><EFBFBD>拳 | Level 2 | cut | <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 潃鐥<E6BD83>潃鐥<E6BD83> |
|
||
| 5 | BMI霈∠<E99C88>銝𤾸<E98A9D>蝐?| Level 3 | <20>砍<EFBFBD>+<2B>∩辣 | 銝游<E98A9D><E6B8B8><EFBFBD><EFBFBD> 潃鐥<E6BD83>潃鐥<E6BD83>潃?|
|
||
| 6 | <20>交<EFBFBD>霈∠<E99C88> | Level 3 | datetime | <20>園𡢿<E59C92>湧<EFBFBD> 潃鐥<E6BD83>潃鐥<E6BD83>潃?|
|
||
| 7 | <20>∩辣蝑偦<E89D91>?| Level 3 | 憭𡁏辺隞嗉<E99A9E>皛?| <20>亦<EFBFBD><E4BAA6><EFBFBD><EFBFBD> 潃鐥<E6BD83>潃鐥<E6BD83>潃?|
|
||
| 8 | 蝞<><E89D9E>閧撩憭勗<E686AD>澆‵銵?| Level 4 | fillna | 蝻箏仃憭<E4BB83><E686AD> 潃鐥<E6BD83>潃鐥<E6BD83> |
|
||
| 9 | 憭𡁻<E686AD><F0A181BB>坿‘(MICE) | Level 4 | IterativeImputer | 擃条漣憛怨‘ 潃鐥<E6BD83>潃鐥<E6BD83>潃?|
|
||
| 10 | <20>箄<EFBFBD><E7AE84>駁<EFBFBD> | Level 4 | sort+drop_duplicates | <20>唳旿韐券<E99F90> 潃鐥<E6BD83>潃鐥<E6BD83> |
|
||
|
||
---
|
||
|
||
## <20>㴓 Level 1: <20>箇<EFBFBD><E7AE87>唳旿皜<E697BF><E79A9C>嚗?銝迎<E98A9D>
|
||
|
||
### 蝷箔<E89DB7>1: 蝏煺<E89D8F>蝻箏仃<E7AE8F>潭<EFBFBD>霈?
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>𦠜<EFBFBD><EFBFBD>劐誨銵函撩憭梁<EFBFBD>蝚血噡嚗?<3F><><EFBFBD>霂艾<E99C82><E889BE>A<EFBFBD><41>/A嚗厩<E59A97>銝<EFBFBD><E98A9D>踵揢銝箸<E98A9D><E7AEB8><EFBFBD>征<EFBFBD>?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# 蝏煺<E89D8F>蝻箏仃<E7AE8F>潭<EFBFBD>霈?
|
||
df = df.replace(['-', '銝滩祕', 'NA', 'N/A', '\\', '<EFBFBD>芣䰻'], np.nan)
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- <20>餌<EFBFBD><E9A48C>唳旿撣貉<E692A3>憭𡁶<E686AD>蝻箏仃<E7AE8F>潸”蝷箸䲮撘?
|
||
- 蝏煺<E89D8F>銝箸<E98A9D><E7AEB8><EFBFBD>aN靘蹂<E99D98><E8B982>𡒊賒蝏蠘恣<E8A098><E681A3><EFBFBD>
|
||
- <20><>鍂<EFBFBD>箸艶: <20>唳旿皜<E697BF><E79A9C>蝚砌<E89D9A>甇?
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20><><EFBFBD>厰<EFBFBD><E58EB0><EFBFBD><EFBFBD>蝻箏仃<E7AE8F>潭<EFBFBD>霈啗◤蝏煺<E89D8F>銝摸aN
|
||
- <20>𡒊賒<F0A1928A>臭蝙<E887AD>甬snull()蝑㗇䲮瘜閧<E7989C>銝<EFBFBD>憭<EFBFBD><E686AD>
|
||
|
||
---
|
||
|
||
### 蝷箔<E89DB7>2: <20>啣<EFBFBD>澆<EFBFBD>皜<EFBFBD><E79A9C>
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>𡃏<EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD>𣬚<EFBFBD><EFBFBD>墧㺭摮㛖泵<EFBFBD>瑕縧<EFBFBD>㚁<EFBFBD><0.1<EFBFBD>?.05憭<EFBFBD><EFBFBD>嚗諹蓮銝箸㺭<EFBFBD>潛掩<EFBFBD>?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# 憭<><E686AD><EFBFBD>啣<EFBFBD>澆<EFBFBD><E6BE86><EFBFBD>泵<EFBFBD>?
|
||
df['creatinine'] = df['creatinine'].astype(str).str.replace('>', '').str.replace('<', '')
|
||
df.loc[df['creatinine'] == '0.1', 'creatinine'] = '0.05'
|
||
df['creatinine'] = pd.to_numeric(df['creatinine'], errors='coerce')
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- 璉<>撉𣬚<E69289>撖澆枂<E6BE86>唳旿撣詨鉄蝚血噡嚗?<3F>?<3F>?蝑㚁<E89D91>
|
||
- <20><>皜<EFBFBD><E79A9C><EFBFBD>擧<EFBFBD><E693A7>質<EFBFBD>銵峕㺭<E5B395>潸恣蝞堒<E89D9E>蝏蠘恣<E8A098><E681A3><EFBFBD>
|
||
- errors='coerce'撠<><E692A0>瘜閗蓮<E99697>Y<EFBFBD><EFBCB9>潸挽銝摸aN
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20>屸<EFBFBD><E5B1B8>堒<EFBFBD>銝箇滲<E7AE87>啣<EFBFBD>潛掩<E6BD9B>?
|
||
- 蝚血噡鋡急迤蝖桀<E89D96><E6A180>?
|
||
- 撘<>虜<EFBFBD>潸蓮銝摸aN
|
||
|
||
**<EFBFBD>餌<EFBFBD><EFBFBD>箸艶**:
|
||
- 璉<>撉峕𥁒<E5B395>𠺪<EFBFBD><F0A0BAAA>屸<EFBFBD><E5B1B8><EFBFBD>蒾蝏<E892BE><E89D8F><EFBFBD><EFBFBD><EFBFBD>蝥Z<E89DA5><EFBCBA>賜<EFBFBD>
|
||
- 撣貉<E692A3>蝚血噡嚗?100<30>?0.1<EFBFBD>?2.5+
|
||
|
||
---
|
||
|
||
## <20>圲 Level 2: <20>㗛<EFBFBD>蝻𣇉<E89DBB>銝舘恣蝞梹<E89D9E>2銝迎<E98A9D>
|
||
|
||
### 蝷箔<E89DB7>3: <20><>掩<EFBFBD>㗛<EFBFBD>蝻𣇉<E89DBB>
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>𦠜<EFBFBD>批<EFBFBD><EFBFBD>𡑒蓮銝箸㺭摮梹<EFBFBD><EFBFBD>?1嚗<31>戊=0
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# <20>批<EFBFBD>蝻𣇉<E89DBB>
|
||
df['gender_code'] = df['gender'].map({'<EFBFBD>?: 1, '憟?: 0})
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- 撠<><E692A0><EFBFBD>砍<EFBFBD>蝐餃<E89D90><E9A483>讛蓮銝箸㺭<E7AEB8>?
|
||
- 靘蹂<E99D98>Logistic<69>𧼮<EFBFBD><F0A7BCAE><EFBFBD><EFBFBD>蝏讐<E89D8F>蝏𦦵<E89D8F>撱箸芋
|
||
- map<61>寞<EFBFBD>蝞<EFBFBD>瘣<EFBFBD><E798A3><EFBFBD>?
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20>啣<EFBFBD>gender_code<64>?
|
||
- <20>猾<EFBFBD>1, 憟喇<E6869F>0
|
||
- <20>鰛ender<65>𦯀<EFBFBD><F0A6AF80><EFBFBD><EFBFBD><EFBFBD>?
|
||
|
||
**<EFBFBD>拙<EFBFBD><EFBFBD>箸艶**:
|
||
- 憍𡁜宏<F0A1819C>嗆<EFBFBD>? 撌脣<E6928C>=1, <20>芸<EFBFBD>=0
|
||
- <20>貊<EFBFBD><E8B28A>? <20>?1, <20>?0
|
||
- <20>躰<EFBFBD>蝔见漲: 撠誩郎=1, <20>苷葉=2, 擃䀝葉=3, 憭批郎=4
|
||
|
||
---
|
||
|
||
### 蝷箔<E89DB7>4: 餈䂿賒<E482BF>㗛<EFBFBD><E3979B><EFBFBD>拳
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>𠰴僑樴<EFBFBD><EFBFBD>18撗<EFBFBD><EFBFBD>?0撗<30><E69297>銝箸𧊋<E7AEB8>𣂼僑<F0A382BC><E58391><EFBFBD>撟氬<E6929F><E6B0AC><EFBFBD><EFBFBD>僑銝厩<E98A9D>
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# 撟湧<E6929F><E6B9A7><EFBFBD><EFBFBD>
|
||
df['age_group'] = pd.cut(df['age'],
|
||
bins=[0, 18, 60, 120],
|
||
labels=['<EFBFBD>芣<EFBFBD>撟?, '<EFBFBD>𣂼僑', '<EFBFBD><EFBFBD>僑'],
|
||
right=False)
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- 撠<><E692A0>蝏剖<E89D8F><E58996>讐氖<E8AE90><E6B096><EFBFBD>銝箸<E98A9D>摨誩<E691A8>蝐餃<E89D90><E9A483>?
|
||
- bins摰帋<E691B0><E5B88B>粹𡢿颲寧<E9A2B2>嚗𨧣abels摰帋<E691B0><E5B88B><EFBFBD>倌
|
||
- right=False銵函內撌阡𡡒<E998A1>喳<EFBFBD><E596B3>粹𡢿[0,18)
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20>啣<EFBFBD>age_group<75>?
|
||
- 0-17撗<37><E69297><EFBFBD>芣<EFBFBD>撟?
|
||
- 18-59撗<39><E69297><EFBFBD>𣂼僑
|
||
- 60+撗<><E69297><EFBFBD><EFBFBD>僑
|
||
|
||
**<EFBFBD>餌<EFBFBD>摨𠉛鍂**:
|
||
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗<EFBFBD><E59A97>撟湧<E6929F>畾萄<E795BE><E89084><EFBFBD><EFBFBD>嚗?
|
||
- <20>⊥䲮璉<E4B2AE>撉䕘<E69289>撟湧<E6929F>蝏<EFBFBD>s<EFBFBD>曄<EFBFBD>嚗?
|
||
- <20>讛膩<E8AE9B>抒<EFBFBD>霈∴<E99C88><E288B4>箇瑪<E7AE87>孵<EFBFBD>銵剁<E98AB5>
|
||
|
||
---
|
||
|
||
## <20>蘂 Level 3: <20>餃郎霈∠<E99C88>銝𡒊<E98A9D><F0A1928A>㚁<EFBFBD>3銝迎<E98A9D>
|
||
|
||
### 蝷箔<E89DB7>5: BMI霈∠<E99C88>銝𤾸<E98A9D>蝐?
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>寞旿頨恍<EFBFBD>(cm)<29>䔶<EFBFBD><E494B6>?kg)霈∠<E99C88>BMI嚗<49>僎<EFBFBD><E5838E>扇BMI<4D>?8銝箄<E98A9D><E7AE84>?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# 霈∠<E99C88>BMI
|
||
df['BMI'] = df['weight'] / (df['height'] / 100) ** 2
|
||
|
||
# <20>亥<EFBFBD><E4BAA5><EFBFBD>扇
|
||
df['obesity'] = df['BMI'].apply(lambda x: '<EFBFBD>亥<EFBFBD>' if x >= 28 else '甇<EFBFBD>虜')
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- BMI<4D>砍<EFBFBD>: 雿㯄<E99BBF>(kg) / 頨恍<E9A0A8>(m)簡
|
||
- 銝剖𤙴<E58996><F0A499B4><EFBFBD>: BMI<4D>?8銝箄<E98A9D><E7AE84><EFBFBD>
|
||
- <20>煾<EFBFBD><E785BE>𤥁恣蝞梹<E89D9E><E6A2B9>𣳇<EFBFBD>敺芰㴓
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20>啣<EFBFBD>BMI<4D>梹<EFBFBD><E6A2B9>啣<EFBFBD>潘<EFBFBD>
|
||
- <20>啣<EFBFBD>obesity<74>梹<EFBFBD><E6A2B9><EFBFBD>掩嚗?
|
||
|
||
**銝游<E98A9D><E6B8B8><EFBFBD><EFBFBD>**:
|
||
- <20>讐𠣕: BMI < 18.5
|
||
- 甇<>虜: 18.5 <20>?BMI < 24
|
||
- 頞<><E9A09E>: 24 <20>?BMI < 28
|
||
- <20>亥<EFBFBD>: BMI <20>?28
|
||
|
||
**<EFBFBD>拙<EFBFBD><EFBFBD>箸艶**:
|
||
- 雿栞”<E6A09E>Y妖(BSA): <20>𣇉<EFBFBD><F0A38789><EFBFBD><EFBFBD>霈∠<E99C88>
|
||
- eGFR: <20>曉<EFBFBD><E69B89>質<EFBFBD>隡?
|
||
- APACHE霂<45><E99C82>: <20>梢<EFBFBD><E6A2A2><EFBFBD><EFBFBD>隡?
|
||
|
||
---
|
||
|
||
### 蝷箔<E89DB7>6: <20>交<EFBFBD>霈∠<E99C88>
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>寞旿<EFBFBD>仿堺<EFBFBD>交<EFBFBD><EFBFBD><EFBFBD>枂<EFBFBD>X𠯫<EFBFBD>蠘恣蝞𦯀<EFBFBD><EFBFBD>W予<EFBFBD>?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# 霈∠<E99C88>雿誯堺憭拇㺭
|
||
df['admission_date'] = pd.to_datetime(df['admission_date'])
|
||
df['discharge_date'] = pd.to_datetime(df['discharge_date'])
|
||
df['length_of_stay'] = (df['discharge_date'] - df['admission_date']).dt.days
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- <20><><EFBFBD><EFBFBD>交<EFBFBD><E4BAA4>𡑒蓮銝榛atetime蝐餃<E89D90>
|
||
- <20>交<EFBFBD><E4BAA4>詨<EFBFBD>敺堒<E695BA>Timedelta撖寡情
|
||
- .dt.days<79>𣂼<EFBFBD>憭拇㺭
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20>啣<EFBFBD>length_of_stay<61>?
|
||
- <20>啣<EFBFBD>潛掩<E6BD9B>页<EFBFBD><E9A1B5>蓥<EFBFBD>銝箏予
|
||
|
||
**<EFBFBD>餌<EFBFBD>摨𠉛鍂**:
|
||
- 雿誯堺憭拇㺭<E68B87><E3BAAD><EFBFBD>
|
||
- 撟喳<E6929F>雿誯堺<E8AAAF>?ALOS)蝏蠘恣
|
||
- 雿誯堺韐寧鍂<E5AFA7>詨<EFBFBD><E8A9A8>批<EFBFBD><E689B9>?
|
||
|
||
**<EFBFBD>拙<EFBFBD><EFBFBD>箸艶**:
|
||
- 霈∠<E99C88>撟湧<E6929F>: (隞𠰴予 - <20>箇<EFBFBD><E7AE87>交<EFBFBD>) / 365.25
|
||
- <20>讛挪<E8AE9B>園𡢿: (<28>讛挪<E8AE9B>交<EFBFBD> - <20>箇瑪<E7AE87>交<EFBFBD>)
|
||
- <20>笔<EFBFBD><E7AC94>園𡢿: (甇颱滿/<2F>急活<E680A5>讛挪 - 蝖株<E89D96><E6A0AA>交<EFBFBD>)
|
||
|
||
---
|
||
|
||
### 蝷箔<E89DB7>7: <20>∩辣蝑偦<E89D91>㚁<EFBFBD><E39A81>亦<EFBFBD><E4BAA6><EFBFBD><EFBFBD>嚗?
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
蝑偦<EFBFBD>匧枂撟湧<EFBFBD><EFBFBD>?8撗<38><E69297><EFBFBD><EFBFBD><EFBFBD>凋蛹蝟硋倏<E7A18B><E5808F><EFBFBD><EFBFBD><EFBFBD>銵<EFBFBD>蝟砽竉7.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# 憭𡁏辺隞嗥<E99A9E><E597A5>?
|
||
df_selected = df[
|
||
(df['age'] >= 18) &
|
||
(df['diagnosis'] == '蝟硋倏<EFBFBD>?) &
|
||
(df['glucose'] >= 7.0)
|
||
]
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- 撣<><E692A3>蝝W<E89D9D>嚗<EFBFBD><E59A97><EFBFBD>∩辣<E288A9>?餈墧𦻖
|
||
- 瘥譍葵<E8AD8D>∩辣<E288A9><E8BEA3><EFBFBD>䭾𡠺<E4ADBE>?
|
||
- 餈𥪜<E9A488>皛∟雲<E2889F><E99BB2><EFBFBD>㗇辺隞嗥<E99A9E>銵?
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- <20>蚤ataFrame嚗<65><E59A97><EFBFBD>怎泵<E6808E><E6B3B5>辺隞嗥<E99A9E><E597A5><EFBFBD><EFBFBD>
|
||
- <20>篼f銝滚<E98A9D>
|
||
|
||
**銝游<E98A9D><E6B8B8>𠉛弦摨𠉛鍂**:
|
||
- 蝥喳<E89DA5><E596B3><EFBFBD><EFBFBD>蝑偦<E89D91>?
|
||
- <20>㘾膄<E398BE><E88684><EFBFBD><EFBFBD>娪膄
|
||
- 鈭𡁶<E988AD><F0A181B6><EFBFBD><EFBFBD>嚗<EFBFBD><E59A97><EFBFBD><EFBFBD>僑蝟硋倏<E7A18B><E5808F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
**<EFBFBD>拙<EFBFBD><EFBFBD>箸艶**:
|
||
```python
|
||
# 蝥喳<E89DA5><E596B3><EFBFBD><EFBFBD>
|
||
included = df[
|
||
(df['age'] >= 18) &
|
||
(df['age'] <= 75) &
|
||
(df['diagnosis'].isin(['<EFBFBD>箄<EFBFBD><EFBFBD>?, '<EFBFBD>粹<EFBFBD><EFBFBD>?])) &
|
||
(df['stage'].isin(['III', 'IV']))
|
||
]
|
||
|
||
# <20>㘾膄<E398BE><E88684><EFBFBD>
|
||
excluded = df[
|
||
(df['pregnancy'] == 1) | # 憒𠰴<E68692>
|
||
(df['severe_liver'] == 1) | # 銝仿<E98A9D><E4BBBF>萘<EFBFBD>
|
||
(df['other_cancer'] == 1) # <20>嗡<EFBFBD><E597A1>輻𠈔
|
||
]
|
||
```
|
||
|
||
---
|
||
|
||
## <20>𥈡 Level 4: 擃条漣<E69DA1>唳旿瘝餌<E7989D>嚗?銝迎<E98A9D>
|
||
|
||
### 蝷箔<E89DB7>8: 蝞<><E89D9E>閧撩憭勗<E686AD>澆‵銵?
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>其葉雿齿㺭憛怨‘BMI<EFBFBD>㛖<EFBFBD>蝻箏仃<EFBFBD>?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# <20>其葉雿齿㺭憛怨‘蝻箏仃<E7AE8F>?
|
||
bmi_median = df['BMI'].median()
|
||
df['BMI'] = df['BMI'].fillna(bmi_median)
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- median()霈∠<E99C88>銝凋<E98A9D><E5878B>堆<EFBFBD><E5A086>㘾膄NaN嚗?
|
||
- fillna()憛怨‘蝻箏仃<E7AE8F>?
|
||
- 銝凋<E98A9D><E5878B>啣<EFBFBD>蝳餌黎<E9A48C>澆蔣<E6BE86>滚<EFBFBD>
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- BMI<4D>埈<EFBFBD>蝻箏仃<E7AE8F>?
|
||
- 蝻箏仃雿滨蔭鋡思葉雿齿㺭<E9BDBF>蹂誨
|
||
|
||
**憛怨‘<E680A8>寞<EFBFBD><E5AF9E>㗇𥋘**:
|
||
| <20>寞<EFBFBD> | <20><>鍂<EFBFBD>箸艶 | 隡条<E99AA1> | 蝻箇<E89DBB> |
|
||
|------|---------|------|------|
|
||
| <20><><EFBFBD>?| 甇<><E79487><EFBFBD><EFBFBD>撣?| 蝞<><E89D9E>?| <20>㛖氖蝢文<E89DA2>澆蔣<E6BE86>?|
|
||
| 銝凋<E98A9D><E5878B>?| <20>𤩺<EFBFBD><F0A4A9BA><EFBFBD>撣?| 蝔喳<E89D94> | 靽⊥<E99DBD><E28AA5>笔仃 |
|
||
| 隡埈㺭 | <20><>掩<EFBFBD>㗛<EFBFBD> | 靽萘<E99DBD><E89098><EFBFBD><EFBFBD> | <20>航<EFBFBD>銝滚<E98A9D><E6BB9A>?|
|
||
| <20>滚<EFBFBD>憛怠<E6869B> | <20>園𡢿摨誩<E691A8> | 靽萘<E99DBD>頞见飵 | 隞<><E99A9E><EFBFBD>鍂<EFBFBD>嗅<EFBFBD> |
|
||
|
||
**瘜冽<E7989C>鈭钅★**:
|
||
- <20>𩤃<EFBFBD> 隞<><E99A9E><EFBFBD>鍂鈭𡒊撩憭梁<E686AD><5%
|
||
- <20>𩤃<EFBFBD> <20><>挽蝻箏仃銝撤CAR嚗<52><E59A97><EFBFBD>券<EFBFBD><E588B8>箇撩憭梧<E686AD>
|
||
- <20>𩤃<EFBFBD> <20>航<EFBFBD>雿𦒘摯<F0A69298><E691AF><EFBFBD>撌?
|
||
|
||
---
|
||
|
||
### 蝷箔<E89DB7>9: 憭𡁻<E686AD><F0A181BB>坿‘嚗㇈ICE嚗争<E59A97> <20>詨<EFBFBD><E8A9A8>箸艶
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
雿輻鍂憭𡁻<EFBFBD><EFBFBD>坿‘瘜訫笆BMI<EFBFBD><EFBFBD>僑樴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD><EFBFBD>撩憭勗<EFBFBD>潸<EFBFBD>銵<EFBFBD>‵銵?
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
from sklearn.experimental import enable_iterative_imputer
|
||
from sklearn.impute import IterativeImputer
|
||
|
||
# <20>㗇𥋘<E39787><F0A58B98>閬<EFBFBD><E996AC>銵亦<E98AB5><E4BAA6>啣<EFBFBD>澆<EFBFBD>
|
||
cols = ['BMI', 'age', 'creatinine']
|
||
|
||
# 憭𡁻<E686AD><F0A181BB>坿‘
|
||
imputer = IterativeImputer(max_iter=10, random_state=0)
|
||
df[cols] = imputer.fit_transform(df[cols])
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- MICE (Multivariate Imputation by Chained Equations)
|
||
- <20>拍鍂<E68B8D>㗛<EFBFBD><E3979B>渡㮾<E6B8A1>單<EFBFBD>折<EFBFBD>瘚讠撩憭勗<E686AD>?
|
||
- max_iter=10: <20><>憭朞翮隞?0甈?
|
||
- random_state=0: <20>臬<EFBFBD><E887AC>啁<EFBFBD><E59581>?
|
||
|
||
**蝞埈<E89D9E><E59F88>毺<EFBFBD>**:
|
||
1. <20>嘥<EFBFBD>憛怨‘嚗<E28098><E59A97><EFBFBD><EFBFBD><EFBFBD>潘<EFBFBD>
|
||
2. 敺芰㴓餈凋誨嚗?
|
||
- 撖寞<E69296>銝芣<E98A9D>蝻箏仃<E7AE8F><E4BB83><EFBFBD><EFBFBD>𧶏<EFBFBD><F0A7B68F>典<EFBFBD>隞硋<E99A9E><E7A18B>誯<EFBFBD>瘚?
|
||
- <20>湔鰵憛怨‘<E680A8>?
|
||
3. <20>嗆<EFBFBD><E59786>𤾸<EFBFBD>甇?
|
||
|
||
**<EFBFBD><EFBFBD>鍂<EFBFBD>箸艶**:
|
||
- <20>?蝻箏仃<E7AE8F>?%-30%
|
||
- <20>?蝻箏仃<E7AE8F>箏<EFBFBD>銝撤AR嚗<52><E59A97><EFBFBD>箇撩憭梧<E686AD>
|
||
- <20>?<3F>㗛<EFBFBD><E3979B>游<EFBFBD><E6B8B8>函㮾<E587BD>單<EFBFBD>?
|
||
- <20>?<3F><>閬<EFBFBD><E996AC><EFBFBD><EFBFBD>㺭<EFBFBD>桀<EFBFBD>撣<EFBFBD>鸌敺?
|
||
|
||
**隡睃飵**:
|
||
- <20>拍鍂<E68B8D>㗛<EFBFBD><E3979B>游<EFBFBD>蝟?
|
||
- 靽脲<E99DBD><E884B2>唳旿<E594B3><E697BF><EFBFBD>
|
||
- <20>誩<EFBFBD><E8AAA9>誩榆
|
||
- 蝏蠘恣摮虫<E691AE><E899AB>游<EFBFBD><E6B8B8>?
|
||
|
||
**vs 蝞<><E89D9E>訫‵銵?*:
|
||
| <20><><EFBFBD> | 蝞<><E89D9E>訫‵銵?| 憭𡁻<E686AD><F0A181BB>坿‘ |
|
||
|------|---------|---------|
|
||
| 憭齿<E686AD>摨?| 雿?| 銝剔<E98A9D> |
|
||
| 霈∠<E99C88><E288A0>園𡢿 | 敹?| 颲<><E9A2B2> |
|
||
| <20>誩榆 | <20>航<EFBFBD>颲<EFBFBD>之 | 颲<><E9A2B2> |
|
||
| <20><><EFBFBD>霂?| 雿𦒘摯 | <20><>& |
|
||
| <20><><EFBFBD>靽脲<E99DBD> | 撌?| 憟?|
|
||
|
||
**瘜冽<E7989C>鈭钅★**:
|
||
- 隞<><E99A9E><EFBFBD>鍂鈭擧㺭<E693A7>澆<EFBFBD><E6BE86>?
|
||
- <20><>掩<EFBFBD>㗛<EFBFBD><E3979B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||
- 憒<><E68692><EFBFBD>園𡢿<E59C92>㗛<EFBFBD><E3979B><EFBFBD><EFBFBD><EFBFBD>蓮<EFBFBD>?
|
||
|
||
---
|
||
|
||
### 蝷箔<E89DB7>10: <20>箄<EFBFBD><E7AE84>駁<EFBFBD>
|
||
|
||
**<EFBFBD>冽<EFBFBD><EFBFBD><EFBFBD>誘**:
|
||
```
|
||
<EFBFBD>㗇<EFBFBD><EFBFBD><EFBFBD>D<EFBFBD>駁<EFBFBD>嚗䔶<EFBFBD><EFBFBD>蹱<EFBFBD><EFBFBD>交𠯫<EFBFBD><EFBFBD><EFBFBD><EFBFBD>啁<EFBFBD>霈啣<EFBFBD>
|
||
```
|
||
|
||
**AI<41><49><EFBFBD>隞<EFBFBD><E99A9E>**:
|
||
```python
|
||
# <20>箄<EFBFBD><E7AE84>駁<EFBFBD>嚗𡁜<E59A97><F0A1819C>㗇𠯫<E39787><F0A0AFAB><EFBFBD>摨𧶏<E691A8><F0A7B68F>齿<EFBFBD>ID<49>駁<EFBFBD>靽萘<E99DBD><E89098><EFBFBD><EFBFBD>𦒘<EFBFBD><F0A69298>?
|
||
df['check_date'] = pd.to_datetime(df['check_date'])
|
||
df = df.sort_values('check_date').drop_duplicates(subset=['patient_id'], keep='last')
|
||
```
|
||
|
||
**隞<><E99A9E>霂湔<E99C82>**:
|
||
- sort_values()<29><><EFBFBD><EFBFBD>交<EFBFBD><E4BAA4><EFBFBD><EFBFBD><EFBFBD>鍦<EFBFBD>
|
||
- drop_duplicates()<29>纺atient_id<69>駁<EFBFBD>
|
||
- keep='last'靽萘<E99DBD><E89098><EFBFBD><EFBFBD>𦒘<EFBFBD><F0A69298>∴<EFBFBD><E288B4>單<EFBFBD><E596AE>唳𠯫<E594B3><F0A0AFAB><EFBFBD>
|
||
|
||
**憸<><E686B8>蝏𤘪<E89D8F>**:
|
||
- 瘥譍葵<E8AD8D><E891B5><EFBFBD><EFBFBD>蘨靽萘<E99DBD>銝<EFBFBD><E98A9D>∟扇敶?
|
||
- 靽萘<E99DBD><E89098><EFBFBD>糓璉<E7B393><E79289>交𠯫<E4BAA4><F0A0AFAB><EFBFBD><EFBFBD>啁<EFBFBD><E59581><EFBFBD>辺
|
||
|
||
**<EFBFBD>拙<EFBFBD><EFBFBD>箸艶**:
|
||
|
||
**<EFBFBD>箸艶1: 靽萘<E99DBD><E89098>唳旿<E594B3><E697BF>摰峕㟲<E5B395><E39FB2>扇敶?*
|
||
```python
|
||
# 霈∠<E99C88>瘥讛<E798A5><E8AE9B><EFBFBD><EFBFBD><EFBFBD>游漲
|
||
df['completeness'] = df.notna().sum(axis=1)
|
||
df = df.sort_values('completeness', ascending=False).drop_duplicates(subset=['patient_id'], keep='first')
|
||
```
|
||
|
||
**<EFBFBD>箸艶2: 憭𡁜<E686AD>畾萇<E795BE><E89087><EFBFBD>縧<EFBFBD>?*
|
||
```python
|
||
# <20>㗇<EFBFBD><E39787><EFBFBD>D+撠梯<E692A0><E6A2AF>交<EFBFBD><E4BAA4>駁<EFBFBD>
|
||
df = df.drop_duplicates(subset=['patient_id', 'visit_date'], keep='first')
|
||
```
|
||
|
||
**<EFBFBD>箸艶3: 憭齿<E686AD><E9BDBF>餉<EFBFBD><E9A489>駁<EFBFBD>**
|
||
```python
|
||
# 隡睃<E99AA1>蝥改<E89DA5><E694B9>交<EFBFBD><E4BAA4><EFBFBD><EFBFBD>?> 摰峕㟲摨行<E691A8>擃?
|
||
df = df.sort_values(['check_date', 'completeness'], ascending=[False, False]).drop_duplicates(subset=['patient_id'], keep='first')
|
||
```
|
||
|
||
**<EFBFBD>餌<EFBFBD><EFBFBD>箸艶**:
|
||
- <20>𣳇膄<F0A3B387>滚<EFBFBD>敶訫<E695B6><E8A8AB><EFBFBD><EFBFBD>靘?
|
||
- 憭𡁏活撠梯<E692A0><E6A2AF>㚚<EFBFBD>甈?<3F>急活
|
||
- 璉<>撉𣬚<E69289><F0A3AC9A>𨅯縧<F0A885AF>㵪<EFBFBD><E3B5AA>𡝗<EFBFBD><F0A19D97>堆<EFBFBD>
|
||
|
||
---
|
||
|
||
## <20><> 雿輻鍂霂湔<E99C82>
|
||
|
||
### System Prompt<70><74><EFBFBD><EFBFBD>孵<EFBFBD>
|
||
|
||
```python
|
||
system_prompt = f"""
|
||
雿䭾糓<EFBFBD>餌<EFBFBD>蝘𤑳<EFBFBD><EFBFBD>唳旿皜<EFBFBD><EFBFBD>銝枏振嚗諹<EFBFBD>韐<EFBFBD><EFBFBD><EFBFBD>辥andas隞<EFBFBD><EFBFBD><EFBFBD>交<EFBFBD>瘣埈㟲<EFBFBD><EFBFBD>㺭<EFBFBD>柴<EFBFBD>?
|
||
|
||
## 敶枏<E695B6><E69E8F>唳旿<E594B3><E697BF>縑<EFBFBD>?
|
||
- <20><>辣<EFBFBD>? {session.fileName}
|
||
- 銵峕㺭: {session.totalRows}
|
||
- <20>埈㺭: {session.totalCols}
|
||
- <20>堒<EFBFBD>: {', '.join(session.columns)}
|
||
|
||
## 摰匧<E691B0>閫<EFBFBD><E996AB>嚗<EFBFBD>撩<EFBFBD>塚<EFBFBD>
|
||
1. <20>芾<EFBFBD><E88ABE>滢<EFBFBD>df<64>㗛<EFBFBD>
|
||
2. 蝳<>迫撖澆<E69296>os<6F><73>ys蝑匧暒<E58CA7>拇芋<E68B87>?
|
||
3. 蝳<>迫雿輻鍂eval<61><6C>xec蝑匧暒<E58CA7>拙遆<E68B99>?
|
||
4. 敹<>◆餈𥡝<E9A488>撘<EFBFBD>虜憭<E8999C><E686AD>
|
||
5. 餈𥪜<E9A488><F0A5AA9C>澆<EFBFBD>: {{"code": "...", "explanation": "..."}}
|
||
|
||
## Few-shot蝷箔<E89DB7>
|
||
|
||
### 蝷箔<E89DB7>1: 蝏煺<E89D8F>蝻箏仃<E7AE8F>潭<EFBFBD>霈?
|
||
<EFBFBD>冽<EFBFBD>: <20>𦠜<EFBFBD><F0A6A09C>劐誨銵函撩憭梁<E686AD>蝚血噡蝏煺<E89D8F><E785BA>踵揢銝箸<E98A9D><E7AEB8><EFBFBD>征<EFBFBD>?
|
||
隞<EFBFBD><EFBFBD>:
|
||
```python
|
||
df = df.replace(['-', '銝滩祕', 'NA', 'N/A'], np.nan)
|
||
```
|
||
|
||
### 蝷箔<E89DB7>2: <20>啣<EFBFBD>澆<EFBFBD>皜<EFBFBD><E79A9C>
|
||
<EFBFBD>冽<EFBFBD>: <20>𡃏<EFBFBD><F0A1838F>𣂼<EFBFBD><F0A382BC>𣬚<EFBFBD><F0A3AC9A>墧㺭摮㛖泵<E39B96>瑕縧<E79195>㚁<EFBFBD>頧砌蛹<E7A08C>啣<EFBFBD>潛掩<E6BD9B>?
|
||
隞<EFBFBD><EFBFBD>:
|
||
```python
|
||
df['creatinine'] = df['creatinine'].astype(str).str.replace('>', '').str.replace('<', '')
|
||
df['creatinine'] = pd.to_numeric(df['creatinine'], errors='coerce')
|
||
```
|
||
|
||
[... <20>嗡<EFBFBD>8銝芰內靘?...]
|
||
|
||
## <20>冽<EFBFBD>敶枏<E695B6>霂瑟<E99C82>
|
||
{user_message}
|
||
|
||
霂瑞<EFBFBD><EFBFBD>𣂷誨<EFBFBD><EFBFBD>僎閫<EFBFBD><EFBFBD><EFBFBD>?
|
||
"""
|
||
```
|
||
|
||
---
|
||
|
||
## <20>㴓 韐券<E99F90><E588B8><EFBFBD><EFBFBD>
|
||
|
||
瘥譍葵蝷箔<EFBFBD>敹<EFBFBD>◆皛∟雲嚗?
|
||
- <20>?隞<><E99A9E><EFBFBD>舐凒<E88890>亥<EFBFBD>銵?
|
||
- <20>?<3F>㕑祕蝏<E7A595>釣<EFBFBD>?
|
||
- <20>?<3F>㗇<EFBFBD>蝖桃<E89D96>颲枏<E9A2B2>颲枏枂
|
||
- <20>?蝚血<E89D9A>Python<6F><6E>雿喳<E99BBF>頝?
|
||
- <20>?<3F><><EFBFBD>撘<EFBFBD>虜<EFBFBD><E8999C><EFBFBD>
|
||
- <20>?<3F>匧龫<E58CA7>堒㦤<E5A092>航秩<E888AA>?
|
||
|
||
---
|
||
|
||
## <20><> 瘚贝<E7989A><E8B49D>其<EFBFBD>霈曇恣
|
||
|
||
<EFBFBD>箔<EFBFBD>餈?0銝芰內靘页<E99D98>Day 3瘚贝<E7989A>摨𥪜<E691A8><F0A5AA9C>恬<EFBFBD>
|
||
|
||
**<EFBFBD>箇<EFBFBD>瘚贝<EFBFBD>嚗?銝迎<E98A9D>**:
|
||
1. 蝷箔<E89DB7>1瘚贝<E7989A>嚗<EFBFBD>撩憭勗<E686AD>潛<EFBFBD>銝<EFBFBD>嚗?
|
||
2. 蝷箔<E89DB7>2瘚贝<E7989A>嚗<EFBFBD>㺭<EFBFBD>潭<EFBFBD>瘣梹<E798A3>
|
||
3. 蝷箔<E89DB7>3瘚贝<E7989A>嚗<EFBFBD><E59A97>批<EFBFBD>蝻𣇉<E89DBB>嚗?
|
||
4. 蝷箔<E89DB7>4瘚贝<E7989A>嚗<EFBFBD>僑樴<E58391><E6A8B4>蝏<EFBFBD><E89D8F>
|
||
|
||
**銝剔漣瘚贝<E7989A>嚗?銝迎<E98A9D>**:
|
||
5. 蝷箔<E89DB7>5瘚贝<E7989A>嚗㇂MI霈∠<E99C88>嚗?
|
||
6. 蝷箔<E89DB7>6瘚贝<E7989A>嚗<EFBFBD><E59A97><EFBFBD>W予<EFBCB7>堆<EFBFBD>
|
||
7. 蝷箔<E89DB7>7瘚贝<E7989A>嚗<EFBFBD>辺隞嗥<E99A9E><E597A5>㚁<EFBFBD>
|
||
|
||
**擃条漣瘚贝<E7989A>嚗?銝迎<E98A9D>**:
|
||
8. 蝷箔<E89DB7>8瘚贝<E7989A>嚗<EFBFBD>葉雿齿㺭憛怨‘嚗?
|
||
9. 蝷箔<E89DB7>9瘚贝<E7989A>嚗<EFBFBD><E59A97><EFBFBD>齿<EFBFBD>銵伐<E98AB5>潃?
|
||
10. 蝷箔<E89DB7>10瘚贝<E7989A>嚗<EFBFBD>惣<EFBFBD>賢縧<E8B3A2>㵪<EFBFBD>
|
||
|
||
**<EFBFBD>拙<EFBFBD>瘚贝<EFBFBD>嚗?銝迎<E98A9D>**:
|
||
11. 瘛瑕<E7989B><E79195>箸艶瘚贝<E7989A>嚗<EFBFBD><E59A97>皜<EFBFBD><E79A9C><EFBFBD>滩恣蝞梹<E89D9E>
|
||
12. <20>躰秤<E8BAB0>箸艶瘚贝<E7989A>嚗<EFBFBD><E59A97>銝滚<E98A9D><E6BB9A>剁<EFBFBD>
|
||
13. 颲寧<E9A2B2><E5AFA7>箸艶瘚贝<E7989A>嚗<EFBFBD><E59A97><EFBFBD>函撩憭梧<E686AD>
|
||
14. <20>芣<EFBFBD>靽格迤瘚贝<E7989A>嚗<EFBFBD>誨<EFBFBD><E8AAA8>𥁒<EFBFBD>坔<EFBFBD><E59D94>滩<EFBFBD>嚗?
|
||
15. 蝡臬<E89DA1>蝡舀<E89DA1>霂𤏪<E99C82>銝𠹺<E98A9D><F0A0B9BA>𡒶I憭<49><E686AD><EFBFBD>垍<EFBFBD><E59E8D>𣈯<EFBFBD>霂<EFBFBD><E99C82>
|
||
|
||
---
|
||
|
||
## <20><> 蝏湔擪霈啣<E99C88>
|
||
|
||
| <20>交<EFBFBD> | <20><>𧋦 | 靽格㺿<E6A0BC><E3BABF>捆 | 靽格㺿鈭?|
|
||
|------|------|---------|--------|
|
||
| 2025-12-06 | V1.0 | <20>嘥<EFBFBD><E598A5>𥕦遣嚗?0銝芣瓲敹<E793B2>內靘?| AI Assistant |
|
||
|
||
---
|
||
|
||
**<EFBFBD><EFBFBD>﹝<EFBFBD>嗆<EFBFBD>?*: <20>?撌脩&霈?
|
||
**銝衤<E98A9D>甇?*: 撘<>憪𠵿ay 3撘<33><E69298>𡢅<EFBFBD>AICodeService摰䂿緵嚗?
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|