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%)
18 KiB
<EFBFBD>函蔡璉<EFBFBD><EFBFBD>交<EFBFBD><EFBFBD>?- 隞?<3F>唬<EFBFBD>蝥輻<E89DA5>摰峕㟲Checklist
*<EFBFBD><EFBFBD>﹝<EFBFBD><EFBFBD>𧋦嚗? v1.0
*<EFBFBD>𥕦遣<EFBFBD>交<EFBFBD>嚗? 2025-12-14
*<EFBFBD><EFBFBD>鍂<EFBFBD>箸艶嚗? 擐𡝗活<F0A19D97>函蔡<E587BD>圈燵<E59C88>䔶<EFBFBD><E494B6>煺漣<E785BA>臬<EFBFBD>
*憸<EFBFBD>恣<EFBFBD>園𡢿嚗? 4-5撠𤩺𧒄嚗<F0A79284><E59A97><EFBFBD><EFBFBD><EFBFBD>雿𨀣𧒄<F0A880A3>湛<EFBFBD>
<EFBFBD><EFBFBD> 雿輻鍂霂湔<E99C82>
<EFBFBD>祆<EFBFBD><EFBFBD>閙<EFBFBD><EFBFBD>折<EFBFBD>蝵脤◇摨誩<EFBFBD><EFBFBD>箸<EFBFBD><EFBFBD>匧<EFBFBD><EFBFBD><EFBFBD>甇仿炊嚗峕<EFBFBD>銝芣郊撉文<EFBFBD><EFBFBD>恬<EFBFBD>
- <EFBFBD>?憭漤<E686AD>㗇<EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>𣂼<EFBFBD><F0A382BC>枏㗲嚗?- <20>梧<EFBFBD> 憸<>恣<EFBFBD>園𡢿
- <EFBFBD>𩤃<EFBFBD> <20>喲睸瘜冽<E7989C>鈭钅★
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>獢<EFBFBD>曎<EFBFBD>? *撱箄悅嚗𡁏<EFBFBD><EFBFBD>唳<EFBFBD>憭滚<EFBFBD><EFBFBD>啁<EFBFBD>霈啗蔓隞塚<EFBFBD><EFBFBD>鞾★摰峕<EFBFBD><EFBFBD>?
<EFBFBD>嗆挾1嚗𡁜抅蝖<EFBFBD>霈暹鴌<EFBFBD><EFBFBD><EFBFBD>嚗㇄ay 1銝𠰴<E98A9D>嚗?
1.1 <20>輸<EFBFBD>鈭𤏸揭<F0A48FB8>瑕<EFBFBD>憭?
<EFBFBD>?摰𧼮<EFBFBD>霈方<EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- <EFBFBD>輸<EFBFBD>鈭烐綉<EFBFBD>嗅蝱 > 韐血噡蝞∠<E89D9E> > 摰𧼮<E691B0>霈方<E99C88>
- <EFBFBD>𩤃<EFBFBD> 隡<><E99AA1>霈方<E99C88><E696B9><EFBFBD>閬<EFBFBD>𨯫銝𡁏<E98A9D><F0A1818F>? <0A>?*韐血噡<EFBFBD><EFBFBD><EFBFBD>?
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- 撱箄悅<EFBFBD><EFBFBD><EFBFBD>潘<EFBFBD>瞼500嚗<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>祉漲瞼1,200嚗?- 韐寧鍂銝剖<E98A9D> > <20><><EFBFBD>? <0A>?*撘<EFBFBD><EFBFBD>𡁏<EFBFBD><EFBFBD>?
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- <EFBFBD><EFBFBD>閬<EFBFBD><EFBFBD><EFBFBD>𡁶<EFBFBD><EFBFBD>滚𦛚嚗? - <20>?SAE嚗𠄎erverless摨𠉛鍂撘閙<E69298>嚗? - <20>?RDS嚗<53><E59A97><EFBFBD>唳旿摨橒<E691A8>
- <EFBFBD>?OSS嚗<53>笆鞊∪<E99E8A><E288AA>剁<EFBFBD>
- <EFBFBD>?VPC嚗<43><E59A97><EFBFBD>厩<EFBFBD>蝏頣<E89D8F>
- <EFBFBD>?NAT蝵穃<E89DB5>
- <EFBFBD>?ACR嚗<52>捆<EFBFBD>券<EFBFBD><E588B8>𤩺<EFBFBD><F0A4A9BA>∴<EFBFBD>
- <EFBFBD>?ECS嚗<53><E59A97><EFBFBD>滚𦛚<E6BB9A>剁<EFBFBD>Dify<66>剁<EFBFBD>
<EFBFBD>?**<2A>𥕦遣RAM摮鞱揭<E99EB1>瘀<EFBFBD><E79880>舫<EFBFBD>劐<EFBFBD><E58A90>刻<EFBFBD>嚗?*
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- RAM霈輸䔮<EFBFBD>批<EFBFBD> > <20>冽<EFBFBD> > <20>𥕦遣<F0A595A6>冽<EFBFBD>
- <EFBFBD><EFBFBD><EFBFBD>嚗鋫liyunSAEFullAccess, AliyunRDSFullAccess, AliyunOSSFullAccess
- <EFBFBD>𩤃<EFBFBD> 銝滩<E98A9D><E6BBA9>其蜓韐血噡<E8A180>函蔡嚗<E894A1><E59A97><EFBFBD>券<EFBFBD><E588B8>拙之
1.2 VPC蝵𤑳<E89DB5><F0A491B3>滨蔭 潃鐥<E6BD83>潃鐥<E6BD83>潃?
<EFBFBD>?<EFBFBD>𥕦遣VPC
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- VPC<EFBFBD>批<EFBFBD><EFBFBD>?> <20>𥕦遣VPC
- <EFBFBD>滨妍嚗惨iclinical-vpc-prod
- 蝵烐挾嚗?72.16.0.0/12
- <EFBFBD>啣<EFBFBD>嚗䬙n-hangzhou嚗<75>㜺撌痹<E6928C><E797B9>硋停餈穃𧑐<E7A983>? <0A>?**<2A>𥕦遣鈭斗揢<E69697>?*
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- VPC霂行<EFBFBD> > 鈭斗揢<E69697>?> <20>𥕦遣鈭斗揢<E69697>?- <20>滨妍嚗惨iclinical-vsw-prod
- <EFBFBD>舐鍂<EFBFBD>綽<EFBFBD><EFBFBD>𤩺㦤<EFBFBD>舐鍂<EFBFBD>態
- 蝵烐挾嚗?72.16.0.0/20
<EFBFBD>?潃?<3F>𥕦遣NAT蝵穃<E89DB5>嚗<EFBFBD><E59A97><EFBFBD><EFBFBD>嚗<EFBFBD><E59A97>
- <EFBFBD>梧<EFBFBD> 15<31><35><EFBFBD>
- VPC<EFBFBD>批<EFBFBD><EFBFBD>?> NAT蝵穃<E89DB5> > <20>𥕦遣NAT蝵穃<E89DB5>
- VPC嚗惨iclinical-vpc-prod
- 鈭斗揢<EFBFBD>綽<EFBFBD>aiclinical-vsw-prod
- 閫<EFBFBD>聢嚗𡁜<EFBFBD><EFBFBD>?- 霈∟晶<E2889F>孵<EFBFBD>嚗𡁏<E59A97>雿輻鍂<E8BCBB>讛恣韐?- <20>𩤃<EFBFBD> *瘝⊥<EFBFBD>NAT蝵穃<EFBFBD>嚗峕<EFBFBD><EFBFBD>𡅅I<EFBFBD>蠘<EFBFBD><EFBFBD>賭<EFBFBD>頞<EFBFBD>𧒄嚗?
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?<EFBFBD>𥕦遣撟嗥<EFBFBD>摰鍃IP - <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- NAT蝵穃<EFBFBD>霂行<EFBFBD> > 撘寞<E69298>批<EFBFBD>蝵飡P > 蝏穃<E89D8F>EIP
- <EFBFBD>𥕦遣<EFBFBD>蚩IP
- 撣血捐嚗𡁏<EFBFBD>雿輻鍂瘚<EFBFBD><EFBFBD>
- 霈啣<EFBFBD>EIP<EFBFBD>啣<EFBFBD>嚗噔_______________
<EFBFBD>?<EFBFBD>滨蔭SNAT<EFBFBD>∠𤌍
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- NAT蝵穃<EFBFBD>霂行<EFBFBD> > SNAT蝞∠<E89D9E> > <20>𥕦遣SNAT<41>∠𤌍
- 鈭斗揢<EFBFBD>綽<EFBFBD>aiclinical-vsw-prod
- <EFBFBD>祉<EFBFBD>IP嚗𡁜<EFBFBD><EFBFBD>滚<EFBFBD>撱箇<EFBFBD>EIP
- <EFBFBD>𩤃<EFBFBD> 餈嗘<E9A488>甇亥悟SAE<41>臭誑霈輸䔮<E8BCB8>祉<EFBFBD>
<EFBFBD>?**<2A>𥕦遣摰匧<E691B0>蝏?*
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- ECS<EFBFBD>批<EFBFBD><EFBFBD>?> 摰匧<E691B0>蝏?> <20>𥕦遣摰匧<E691B0>蝏?- <20>滨妍嚗惨iclinical-sg-prod
- VPC嚗惨iclinical-vpc-prod
- <EFBFBD>交䲮<EFBFBD>𤏸<EFBFBD><EFBFBD>辷<EFBFBD>
- <EFBFBD><EFBFBD>捂 80/TCP <20>交<EFBFBD>嚗?72.16.0.0/12嚗ĀPC<50><43><EFBFBD>嚗? - <20><>捂 22/TCP <20>交<EFBFBD>嚗𡁏<E59A97><F0A1818F><EFBFBD><EFBFBD><EFBFBD>砍恕IP嚗𠄎SH蝞∠<E89D9E>嚗? - <20>垍<EFBFBD> <20><><EFBFBD>?<3F>交<EFBFBD>嚗?.0.0.0/0
1.3 RDS PostgreSQL 15 <20>函蔡
<EFBFBD>?<EFBFBD>𥕦遣RDS摰硺<EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>嚗<EFBFBD><E59A97>敺<EFBFBD><E695BA>撱?5<><35><EFBFBD>嚗?- RDS<44>批<EFBFBD><E689B9>?> <20>𥕦遣摰硺<E691B0>
- <EFBFBD>唳旿摨梶掩<EFBFBD>页<EFBFBD>PostgreSQL
- <EFBFBD><EFBFBD>𧋦嚗?5
- 閫<EFBFBD>聢嚗鬏ds.pg.s2.large嚗?<3F>?GB嚗?- 摮睃<E691AE>嚗?00GB SSD
- VPC嚗惨iclinical-vpc-prod
- 鈭斗揢<EFBFBD>綽<EFBFBD>aiclinical-vsw-prod
- 霈啣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>啣<EFBFBD>嚗鬏m-____________.pg.rds.aliyuncs.com
<EFBFBD>?**<2A>滨蔭<E6BBA8>賢<EFBFBD><E8B3A2>?*
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- RDS摰硺<EFBFBD>霂行<EFBFBD> > <20>唳旿摰匧<E691B0><E58CA7>?> <20>賢<EFBFBD><E8B3A2>閗挽蝵?- 瘛餃<E7989B><E9A483>賢<EFBFBD><E8B3A2>訫<EFBFBD>蝏<EFBFBD><E89D8F>sae-vpc
- IP<EFBFBD>啣<EFBFBD>嚗?72.16.0.0/12嚗ĀPC蝵烐挾嚗?- <20>𩤃<EFBFBD> *敹<EFBFBD>◆<EFBFBD>汲PC蝵烐挾嚗䔶<EFBFBD><EFBFBD>賜鍂<EFBFBD>閙㦤IP嚗?
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
PostgreSQL<EFBFBD>函蔡蝑𣇉裦-<2D>詨<EFBFBD><E8A9A8>亙<EFBFBD>.md
<EFBFBD>?**<2A>𥕦遣<F0A595A6>唳旿摨栞揭<E6A09E>?*
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- RDS摰硺<EFBFBD>霂行<EFBFBD> > 韐血噡蝞∠<E89D9E> > <20>𥕦遣韐血噡
- 韐血噡<EFBFBD>㵪<EFBFBD>aiclinical_rw
- 撖<EFBFBD><EFBFBD>嚗𡄯<EFBFBD>16雿滚撩撖<EFBFBD><EFBFBD>嚗諹扇敶訫<EFBFBD>撖<EFBFBD><EFBFBD>蝞∠<EFBFBD><EFBFBD>剁<EFBFBD>
- 韐血噡蝐餃<EFBFBD>嚗𡁏芦<EFBFBD>朞揭<EFBFBD>?- <20><><EFBFBD><EFBFBD>唳旿摨橒<E691A8>蝔滚<E89D94><E6BB9A>𥕦遣
<EFBFBD>?**<2A>𥕦遣<F0A595A6>唳旿摨?*
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- RDS摰硺<EFBFBD>霂行<EFBFBD> > <20>唳旿摨梶恣<E6A2B6>?> <20>𥕦遣<F0A595A6>唳旿摨?- <20>唳旿摨枏<E691A8>嚗惨i_clinical_research
- 摮㛖泵<EFBFBD><EFBFBD><EFBFBD>UTF8
- <EFBFBD><EFBFBD><EFBFBD>韐血噡嚗惨iclinical_rw嚗<EFBFBD>粉<EFBFBD>辷<EFBFBD>
<EFBFBD>?<EFBFBD>滨蔭<EFBFBD>芸𢆡憭<EFBFBD>遢
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- RDS摰硺<EFBFBD>霂行<EFBFBD> > 憭<>遢<EFBFBD>W<EFBFBD> > 憭<>遢霈曄蔭
- <EFBFBD>唳旿憭<EFBFBD>遢靽萘<EFBFBD>嚗?憭?- <20>亙<EFBFBD>憭<EFBFBD>遢靽萘<E99DBD>嚗?憭抬<E686AD><E68AAC>𩤃<EFBFBD> 敹<>◆撘<E29786><E69298>荔<EFBFBD><E88D94>舀<EFBFBD>PITR嚗?- 憭<>遢<EFBFBD>冽<EFBFBD>嚗𡁏<E59A97>憭?- 憭<>遢<EFBFBD>園𡢿嚗?2:00-04:00嚗<30><E59A97><EFBFBD>剁<EFBFBD>
<EFBFBD>?*撖澆<EFBFBD><EFBFBD>唳旿摨橒<EFBFBD>pg_dump嚗?
-
<EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
<EFBFBD>砍𧑐<EFBFBD>扯<EFBFBD>嚗? ```bash
1. 撖澆枂<E6BE86>砍𧑐<E7A08D>唳旿摨? docker exec ai-clinical-postgres pg_dump -U postgres -d ai_clinical_research \
--format=plain --no-owner --no-acl --encoding=UTF8 \
backup_$(date +%Y%m%d_%H%M%S).sql
2. 撖澆<E69296><E6BE86>訌DS嚗<53><E59A97>閬<EFBFBD>CS頝單踎<E596AE>箸<EFBFBD>銝湔𧒄撘<F0A79284><E69298>臬<EFBFBD>蝵𡢅<E89DB5>
psql -h rm-xxxxx.pg.rds.aliyuncs.com
-p 5432
-U aiclinical_rw
-d ai_clinical_research
-f backup_20251214_100000.sql -
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
PostgreSQL<EFBFBD>函蔡蝑𣇉裦-<2D>詨<EFBFBD><E8A9A8>亙<EFBFBD>.md蝚?<3F>? <0A>?*撉諹<EFBFBD><EFBFBD>唳旿摨枏紡<EFBFBD>? -
<EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
-
餈墧𦻖RDS嚗峕<EFBFBD>銵䕘<EFBFBD>
-- 撉諹<E69289>Schema \dn -- 摨磰砲<E7A3B0>见<EFBFBD>10銝杵chema -- 撉諹<E69289>銵冽㺭<E586BD>? SELECT schemaname, COUNT(*) FROM pg_tables WHERE schemaname NOT IN ('pg_catalog', 'information_schema') GROUP BY schemaname; -- platform_schema: 8, aia_schema: 5, pkb_schema: 5, asl_schema: 6, dc_schema: 6 -- 撉諹<E69289><E8ABB9>唳旿 SELECT COUNT(*) FROM platform_schema.users; -- 摨磰砲<E7A3B0>?<3F>∴<EFBFBD><E288B4>碶<EFBFBD><E7A2B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㺭<EFBFBD>𧶏<EFBFBD>
1.4 OSS撖寡情摮睃<E691AE><E79D83>滨蔭
<EFBFBD>?<EFBFBD>𥕦遣OSS Bucket
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- OSS<EFBFBD>批<EFBFBD><EFBFBD>?> Bucket<65>𡑒” > <20>𥕦遣Bucket
- Bucket<EFBFBD>滨妍嚗惨iclinical-data-prod
- <EFBFBD>啣<EFBFBD>嚗䬙n-hangzhou嚗<75><E59A97>VPC<50><43>𧑐<EFBFBD><F0A79190><EFBFBD>
- 霂餃<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗𡁶<EFBFBD><EFBFBD>㚁<EFBFBD>Private嚗争<EFBFBD>儭?敹<>◆蝘<E29786><E89D98>
- <EFBFBD><EFBFBD>𧋦<EFBFBD>批<EFBFBD>嚗𡁜<EFBFBD><EFBFBD>?- <20>滚𦛚蝡臬<E89DA1>撖<EFBFBD><E69296><EFBFBD>喲𡡒嚗<F0A1A192>虾<EFBFBD>㚁<EFBFBD>
<EFBFBD>?<EFBFBD>滨蔭<EFBFBD>笔𦶢<EFBFBD>冽<EFBFBD>閫<EFBFBD><EFBFBD>嚗<EFBFBD>虾<EFBFBD>㚁<EFBFBD>
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- Bucket霂行<EFBFBD> > <20>箇<EFBFBD>霈曄蔭 > <20>笔𦶢<E7AC94>冽<EFBFBD>
- 閫<EFBFBD><EFBFBD><EFBFBD>滨妍嚗飱elete-temp-files
- 摨𠉛鍂<EFBFBD><EFBFBD>凒嚗鮁ploads/temp/
- <EFBFBD>滢<EFBFBD>嚗𡁜<EFBFBD><EFBFBD>?- 憭拇㺭嚗?0憭抬<E686AD>銝湔𧒄<E6B994><F0A79284>辣30憭拙<E686AD><E68B99>芸𢆡<E88AB8>𣳇膄嚗? <0A>?<EFBFBD>𥕦遣RAM閫坿𠧧嚗<EFBFBD>綫<EFBFBD>琜<EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- RAM霈輸䔮<EFBFBD>批<EFBFBD> > 閫坿𠧧 > <20>𥕦遣閫坿𠧧
- 閫坿𠧧蝐餃<EFBFBD>嚗𡁏芦<EFBFBD>𡁏<EFBFBD><EFBFBD>∟<EFBFBD><EFBFBD>?- <20>𦯀縑<F0A6AF80>滚𦛚嚗锭AE
- 閫坿𠧧<EFBFBD>滨妍嚗鋫liyunSAEDefaultRole
- <EFBFBD><EFBFBD><EFBFBD>蝑𣇉裦嚗鋫liyunOSSFullAccess
- <EFBFBD>𩤃<EFBFBD> 雿輻鍂RAM閫坿𠧧瘥𨀞ccessKey<65>游<EFBFBD><E6B8B8>? <0A>?霈啣<EFBFBD>OSS<EFBFBD>滨蔭靽⊥<EFBFBD>
- Bucket<EFBFBD>滨妍嚗惨iclinical-data-prod
- <EFBFBD>啣<EFBFBD>嚗䬙n-hangzhou
- <EFBFBD><EFBFBD><EFBFBD>Endpoint嚗駅ss-cn-hangzhou-internal.aliyuncs.com
- AccessKey ID嚗𡄯<E59A97>憒<EFBFBD><E68692>銝滨鍂RAM閫坿𠧧嚗?- AccessKey Secret嚗𡄯<E59A97>憒<EFBFBD><E68692>銝滨鍂RAM閫坿𠧧嚗?
1.5 ACR摰孵膥<E5ADB5>𨅯<EFBFBD>隞枏<E99A9E><E69E8F>滨蔭
<EFBFBD>?<EFBFBD>𥕦遣<EFBFBD>賢<EFBFBD>蝛粹𡢿
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- 摰孵膥<EFBFBD>𨅯<EFBFBD><EFBFBD>滚𦛚 > <20>賢<EFBFBD>蝛粹𡢿 > <20>𥕦遣<F0A595A6>賢<EFBFBD>蝛粹𡢿
- <EFBFBD>賢<EFBFBD>蝛粹𡢿嚗惨iclinical
- 蝐餃<EFBFBD>嚗𡁶<EFBFBD><EFBFBD>? <0A>?<EFBFBD>滨蔭霈輸䔮<EFBFBD>剛<EFBFBD>
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- 摰孵膥<EFBFBD>𨅯<EFBFBD><EFBFBD>滚𦛚 > 霈輸䔮<E8BCB8>剛<EFBFBD> > 霈曄蔭<E69B84>箏<EFBFBD>撖<EFBFBD><E69296>
- <EFBFBD>冽<EFBFBD><EFBFBD>㵪<EFBFBD>嚗<EFBFBD>燵<EFBFBD>䔶<EFBFBD>韐血噡嚗?- 撖<><E69296>嚗𡄯<E59A97>霈曄蔭銝<E894AD>銝芸撩撖<E692A9><E69296>嚗?- 霈啣<E99C88><E595A3>餃<EFBFBD><E9A483>賭誘嚗? ```bash
docker login --username=your-account registry.cn-hangzhou.aliyuncs.com
<EFBFBD>嗆挾2嚗𡁏瓲敹<EFBFBD><EFBFBD><EFBFBD>⊿<EFBFBD>蝵莎<EFBFBD>Day 1銝见<E98A9D>嚗?
2.1 Node.js<6A>𡒊垢<F0A1928A>函蔡
<EFBFBD>?<EFBFBD>砍𧑐隞<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- 蝖桐<EFBFBD>隞<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>堆<EFBFBD>
git pull origin main - 摰㕑<EFBFBD>靘肽<EFBFBD>嚗䫤cd backend && npm install`
- 蝻𤥁<EFBFBD>隞<EFBFBD><EFBFBD>嚗䫤npm run build`
- 撉諹<EFBFBD>蝻𤥁<EFBFBD>嚗䫤ls dist/` 摨磰砲<E7A3B0>厩<EFBFBD>霂穃<E99C82><E7A983><EFBFBD>S<EFBFBD><53>辣
<EFBFBD>?Prisma<EFBFBD>滚<EFBFBD><EFBFBD>峕郊嚗<EFBFBD><EFBFBD>閬<EFBFBD><EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- 餈墧𦻖RDS嚗峕<EFBFBD>銵䕘<EFBFBD>
cd backend # 靽格㺿 .env 銝摧DS餈墧𦻖 DATABASE_URL=postgresql://aiclinical_rw:password@rm-xxxxx.pg.rds.aliyuncs.com:5432/ai_clinical_research # <20>滚<EFBFBD><E6BB9A>峕郊 npx prisma db pull # <20><><EFBFBD>Prisma Client npx prisma generate - <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
05-Node.js<6A>𡒊垢-SAE摰孵膥<E5ADB5>函蔡<E587BD><E894A1><EFBFBD>.md蝚?<3F>? <0A>?靽格㺿HTTP Client頞<74>𧒄<EFBFBD>滨蔭 - <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- 蝻𤥁<EFBFBD>
backend/src/common/http/httpClient.ts - 霈曄蔭timeout: 120000嚗?20蝘𡜐<E89D98>
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?靽格㺿Dify Client摰寥<E691B0>憭<EFBFBD><E686AD> - <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- 蝻𤥁<EFBFBD>
backend/src/common/rag/DifyClient.ts - 瘛餃<EFBFBD>銝湔𧒄Key摰寥<EFBFBD><EFBFBD>餉<EFBFBD>
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?<EFBFBD><EFBFBD>遣Docker<EFBFBD>𨅯<EFBFBD> - <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
cd backend docker build -t backend:v1.0.0 . - 撉諹<EFBFBD><EFBFBD>𨅯<EFBFBD>嚗䫤docker images | grep backend`
<EFBFBD>?<EFBFBD>砍𧑐瘚贝<EFBFBD><EFBFBD>𨅯<EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
docker run -p 3001:3001 \ -e DATABASE_URL="postgresql://..." \ -e NODE_ENV=production \ backend:v1.0.0 - 瘚贝<EFBFBD><EFBFBD>亙熒璉<EFBFBD><EFBFBD>伐<EFBFBD>
curl http://localhost:3001/health
<EFBFBD>?<EFBFBD>券<EFBFBD><EFBFBD><EFBFBD>ACR
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
-
docker tag backend:v1.0.0 registry.cn-hangzhou.aliyuncs.com/aiclinical/backend:v1.0.0 docker push registry.cn-hangzhou.aliyuncs.com/aiclinical/backend:v1.0.0
<EFBFBD>?<EFBFBD>𥕦遣SAE摨𠉛鍂
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- SAE<EFBFBD>批<EFBFBD><EFBFBD>?> 摨𠉛鍂<F0A0899B>𡑒” > <20>𥕦遣摨𠉛鍂
- 摨𠉛鍂<EFBFBD>滨妍嚗惨iclinical-backend
- <EFBFBD>函蔡<EFBFBD>孵<EFBFBD>嚗𡁜捆<EFBFBD>券<EFBFBD><EFBFBD>?- <20>𨅯<EFBFBD><F0A885AF>啣<EFBFBD>嚗鬏egistry.cn-hangzhou.aliyuncs.com/aiclinical/backend:v1.0.0
- VPC嚗惨iclinical-vpc-prod
- 鈭斗揢<EFBFBD>綽<EFBFBD>aiclinical-vsw-prod
- 摰硺<EFBFBD>閫<EFBFBD>聢嚗?<3F>?GB
- 摰硺<EFBFBD><EFBFBD>圈<EFBFBD>嚗𡁏<EFBFBD>撠?嚗峕<E59A97>憭?0
- <EFBFBD>亙熒璉<EFBFBD><EFBFBD>伐<EFBFBD>HTTP /health
<EFBFBD>?<EFBFBD>滨蔭<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>殷<EFBFBD>
-
<EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
-
SAE摨𠉛鍂霂行<EFBFBD> > <20>臬<EFBFBD><E887AC>㗛<EFBFBD>
-
敹<EFBFBD><EFBFBD><EFBFBD>㗛<EFBFBD>嚗? ```bash
<EFBFBD>唳旿摨? DATABASE_URL=postgresql://aiclinical_rw:password@rm-xxxxx.pg.rds.aliyuncs.com:5432/ai_clinical_research?connection_limit=10&pool_timeout=10
OSS
STORAGE_TYPE=oss OSS_REGION=cn-hangzhou OSS_BUCKET=aiclinical-data-prod OSS_ACCESS_KEY_ID=LTAI5*** OSS_ACCESS_KEY_SECRET=***
蝻枏<EFBFBD>/<2F>笔<EFBFBD>嚗㇊ostgres-Only嚗? CACHE_TYPE=postgres
QUEUE_TYPE=pgboss
Dify嚗<EFBFBD><EFBFBD>儭?銝湔𧒄<E6B994>潘<EFBFBD>
DIFY_API_URL=http://172.16.x.x/v1 DIFY_API_KEY=temp_placeholder_will_update_later
Python敺格<EFBFBD><EFBFBD>∴<EFBFBD>蝔滚<EFBFBD>憛怠<EFBFBD>嚗? EXTRACTION_SERVICE_URL=http://172.16.x.x:8000 # <20>𩤃<EFBFBD> 雿輻鍂Python<6F>滚𦛚<E6BB9A><F0A69B9A><EFBFBD>蝵飡P嚗<50><E59A97>SAE<41>批<EFBFBD><E689B9>啗繮<E59597>吔<EFBFBD>
LLM API
DEEPSEEK_API_KEY=sk-***
<EFBFBD>嗡<EFBFBD>
NODE_ENV=production PORT=3001 JWT_SECRET=嚗<><E59A97><EFBFBD>𣂷<EFBFBD>銝芸撩撖<E692A9>𤨎嚗? ```
<EFBFBD>?<EFBFBD>函蔡摨𠉛鍂
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>嚗<EFBFBD><E59A97>敺<EFBFBD><E695BA>蝵?0<><30><EFBFBD>嚗?- SAE<41>批<EFBFBD><E689B9>?> <20>函蔡
- 蝑匧<EFBFBD>摰硺<EFBFBD><EFBFBD>臬𢆡
- <EFBFBD>亦<EFBFBD><EFBFBD>亙<EFBFBD>嚗𡁜<EFBFBD>霂亦<EFBFBD><EFBFBD>?<3F>唳旿摨栞<E691A8><E6A09E>交<EFBFBD><E4BAA4>?
<EFBFBD>?撉諹<EFBFBD><EFBFBD>𡒊垢<EFBFBD>滚𦛚
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
-
# <20>亙熒璉<E78692><E79289>? curl http://aiclinical-backend.sae:3001/health # 摨磰砲餈𥪜<E9A488> 200 OK # 瘚贝<E7989A><E8B49D>冽<EFBFBD>瘜典<E7989C> curl -X POST http://aiclinical-backend.sae:3001/api/v1/auth/register \ -H "Content-Type: application/json" \ -d '{"email":"test@example.com","password":"Test123456","name":"瘚贝<E7989A><E8B49D>冽<EFBFBD>"}' # 摨磰砲餈𥪜<E9A488> 200 OK
2.2 Python敺格<E695BA><E6A0BC>⊿<EFBFBD>蝵?
<EFBFBD>?<EFBFBD>砍𧑐隞<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
cd extraction_service- 蝖桐<EFBFBD>requirements.txt甇<74>&
<EFBFBD>?*靽格㺿Dockerfile嚗Áorkers<EFBFBD>𣂼<EFBFBD>嚗?
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- 蝻𤥁<EFBFBD>
extraction_service/Dockerfile - CMD霈曄蔭workers=2
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?<EFBFBD><EFBFBD>遣Docker<EFBFBD>𨅯<EFBFBD> - <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>嚗㇊ython<6F>𨅯<EFBFBD>颲<EFBFBD>之嚗?- ```bash
cd extraction_service
docker build -t python-service:v1.0.0 .
<EFBFBD>?<EFBFBD>砍𧑐瘚贝<EFBFBD><EFBFBD>𨅯<EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
docker run -p 8000:8000 python-service:v1.0.0 curl http://localhost:8000/health
<EFBFBD>?<EFBFBD>券<EFBFBD><EFBFBD><EFBFBD>ACR
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
docker tag python-service:v1.0.0 registry.cn-hangzhou.aliyuncs.com/aiclinical/python-service:v1.0.0 docker push registry.cn-hangzhou.aliyuncs.com/aiclinical/python-service:v1.0.0
<EFBFBD>?<EFBFBD>𥕦遣SAE摨𠉛鍂
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- 摨𠉛鍂<EFBFBD>滨妍嚗惨iclinical-python-service
- <EFBFBD>𨅯<EFBFBD>嚗鬏egistry.cn-hangzhou.aliyuncs.com/aiclinical/python-service:v1.0.0
- 摰硺<EFBFBD>閫<EFBFBD>聢嚗?<3F>?GB嚗<42><E59A97>儭?銝滩<E98A9D>雿𦒘<E99BBF>2GB嚗?- 摰硺<E691B0><E7A1BA>圈<EFBFBD>嚗𡁏<E59A97>撠?嚗峕<E59A97>憭?
<EFBFBD>?<EFBFBD>滨蔭<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD>
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
-
OSS_REGION=cn-hangzhou OSS_BUCKET=aiclinical-data-prod OSS_ACCESS_KEY_ID=*** OSS_ACCESS_KEY_SECRET=***
<EFBFBD>?**<2A>函蔡撟園<E6929F>霂?*
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- <EFBFBD>函蔡摨𠉛鍂
- 瘚贝<EFBFBD>嚗䫤curl http://172.16.x.x:8000/health`嚗<>蝙<EFBFBD>典<EFBFBD><E585B8><EFBFBD><EFBFBD>蝵飡P嚗?
2.3 <20>滨垢<E6BBA8>函蔡
<EFBFBD>?<EFBFBD>砍𧑐隞<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
cd frontend-v2npm installnpm run build
<EFBFBD>?靽格㺿nginx.conf嚗<66><E59A97>隞嗅之撠誯<E692A0><E8AAAF>塚<EFBFBD>
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- 蝻𤥁<EFBFBD>
frontend-v2/nginx.conf.template - 瘛餃<EFBFBD>
client_max_body_size 50M; - <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?<EFBFBD><EFBFBD>遣Docker<EFBFBD>𨅯<EFBFBD> - <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
cd frontend-v2 docker build -t frontend:v1.0.0 .
<EFBFBD>?<EFBFBD>券<EFBFBD><EFBFBD><EFBFBD>ACR
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
-
docker tag frontend:v1.0.0 registry.cn-hangzhou.aliyuncs.com/aiclinical/frontend:v1.0.0 docker push registry.cn-hangzhou.aliyuncs.com/aiclinical/frontend:v1.0.0
<EFBFBD>?<EFBFBD>𥕦遣SAE摨𠉛鍂
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- 摨𠉛鍂<EFBFBD>滨妍嚗惨iclinical-frontend
- <EFBFBD>𨅯<EFBFBD>嚗鬏egistry.cn-hangzhou.aliyuncs.com/aiclinical/frontend:v1.0.0
- 摰硺<EFBFBD>閫<EFBFBD>聢嚗?.5<EFBFBD>?GB
- 摰硺<EFBFBD><EFBFBD>圈<EFBFBD>嚗?
<EFBFBD>?<EFBFBD>滨蔭<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD>
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
-
BACKEND_SERVICE_HOST=aiclinical-backend.sae BACKEND_SERVICE_PORT=3001
<EFBFBD>?**<2A>函蔡撟園<E6929F>霂?*
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- <EFBFBD>函蔡摨𠉛鍂
- 瘚讛<EFBFBD><EFBFBD>刻挪<EFBFBD>殷<EFBFBD>http://<2F>滨垢<E6BBA8>祉<EFBFBD><E7A589>啣<EFBFBD>
- 摨磰砲<EFBFBD>见<EFBFBD><EFBFBD>餃<EFBFBD>憿菟𢒰
<EFBFBD>嗆挾3嚗鋽ify<EFBFBD>滚𦛚<EFBFBD>函蔡嚗㇄ay 2銝𠰴<E98A9D>嚗?
3.1 ECS<43>滚𦛚<E6BB9A>典<EFBFBD>憭?
<EFBFBD>?<EFBFBD>𥕦遣ECS摰硺<EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>嚗<EFBFBD><E59A97>敺<EFBFBD><E695BA>撱?<3F><><EFBFBD>嚗?- ECS<43>批<EFBFBD><E689B9>?> <20>𥕦遣摰硺<E691B0>
- 摰硺<EFBFBD>閫<EFBFBD>聢嚗塄cs.c6.xlarge嚗?<3F>?GB嚗?- <20>𨅯<EFBFBD>嚗䦧buntu 22.04
- VPC嚗惨iclinical-vpc-prod
- 鈭斗揢<EFBFBD>綽<EFBFBD>aiclinical-vsw-prod
- 摰匧<EFBFBD>蝏<EFBFBD><EFBFBD>aiclinical-sg-prod
- <EFBFBD>祉<EFBFBD>IP嚗𡁜<EFBFBD><EFBFBD>㵪<EFBFBD><EFBFBD>其<EFBFBD>蝞∠<EFBFBD><EFBFBD>㷉ify霈輸䔮嚗?- 霈啣<E99C88><E595A3>祉<EFBFBD>IP嚗噔_______________
<EFBFBD>?SSH<EFBFBD>餃<EFBFBD>ECS
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
-
ssh root@ECS<43>祉<EFBFBD>IP
<EFBFBD>?摰㕑<EFBFBD>Docker
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
curl -fsSL https://get.docker.com | bash systemctl start docker systemctl enable docker docker --version
<EFBFBD>?摰㕑<EFBFBD>Docker Compose
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
-
curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose docker-compose --version
<EFBFBD>?**<2A>滨蔭Swap嚗<70>俈甇㏕OM嚗?*
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
fallocate -l 4G /swapfile chmod 600 /swapfile mkswap /swapfile swapon /swapfile echo '/swapfile none swap sw 0 0' >> /etc/fstab swapon --show - <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
03-Dify-ECS<43>函蔡摰<E894A1><E691B0><EFBFBD><EFBFBD><EFBFBD>.md蝚?<3F>?
3.2 Dify<66>函蔡
<EFBFBD>?銝贝蝸Dify
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
cd /opt git clone https://github.com/langgenius/dify.git cd dify/docker
<EFBFBD>?靽格㺿docker-compose.yaml嚗<6C>垢<EFBFBD><E59EA2><EFBFBD><EFBFBD>剁<EFBFBD>
-
<EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
蝻𤥁<EFBFBD>
docker-compose.yaml -
Redis蝡臬藁嚗䫤127.0.0.1:6379:6379`
-
Weaviate蝡臬藁嚗䫤127.0.0.1:8080:8080`
-
<EFBFBD>𩤃<EFBFBD> <20>芣<EFBFBD>Nginx撖孵<E69296>嚗?0蝡臬藁嚗?- <20><> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?<EFBFBD>滨蔭.env<6E><76>辣 -
<EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
-
cp .env.example .env vi .env -
<EFBFBD>喲睸<EFBFBD>滨蔭嚗? ```bash
Redis
REDIS_HOST=redis REDIS_PORT=6379
PostgreSQL
DB_HOST=db DB_PORT=5432 DB_DATABASE=dify DB_USERNAME=postgres DB_PASSWORD=嚗<><E59A97><EFBFBD>𣂼撩撖<E692A9><E69296>嚗?
Weaviate
WEAVIATE_ENDPOINT=http://weaviate:8080
<EFBFBD>嗡<EFBFBD>
SECRET_KEY=嚗<><E59A97><EFBFBD>𣂼撩撖<E692A9>𤨎嚗? ```
<EFBFBD>?<EFBFBD>臬𢆡Dify
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>嚗<EFBFBD><E59A97>甈∪鍳<E288AA>券<EFBFBD>閬<EFBFBD><E996AC><EFBFBD>㚚<EFBFBD><E39A9A>𧶏<EFBFBD>
-
docker-compose up -d docker-compose logs -f # 蝑匧<E89D91><E58CA7><EFBFBD><EFBFBD>㗇<EFBFBD><E39787>∪鍳<E288AA>剁<EFBFBD>蝥?-3<><33><EFBFBD>嚗? ```
<EFBFBD>?撉諹<EFBFBD>Dify<EFBFBD>滚𦛚
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- 瘚讛<EFBFBD><EFBFBD>刻挪<EFBFBD>殷<EFBFBD>http://ECS<EFBFBD>祉<EFBFBD>IP
- 摨磰砲<EFBFBD>见<EFBFBD>Dify甈Z<EFBFBD>憿菟𢒰
3.3 Dify<66>滨蔭
<EFBFBD>?*瘜典<EFBFBD>蝞∠<EFBFBD><EFBFBD>䁅揭<EFBFBD>?
- <EFBFBD>梧<EFBFBD> 2<><32><EFBFBD>
- 擐𡝗活霈輸䔮隡𡁏<EFBFBD>蝷箸釣<EFBFBD>?- <20>桃拳嚗惨dmin@your-company.com
- 撖<EFBFBD><EFBFBD>嚗𡄯<EFBFBD>撘箏<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>?<EFBFBD>𥕦遣API Key
- <EFBFBD>梧<EFBFBD> 3<><33><EFBFBD>
- <EFBFBD>餃<EFBFBD>Dify
- 霈曄蔭 > API撖<49>𤨎 > <20>𥕦遣撖<E981A3>𤨎
- <EFBFBD>滨妍嚗鋳ackend Service
- 憭滚<EFBFBD>API Key嚗惨pp-xxxxxxxxxxxxxxxxxxxxx
- <EFBFBD>𩤃<EFBFBD> 憒亙<E68692>靽嘥<E99DBD>嚗<EFBFBD>蘨<EFBFBD>曄內銝<E585A7>甈? <0A>?<EFBFBD>湔鰵<EFBFBD>𡒊垢<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- SAE<EFBFBD>批<EFBFBD><EFBFBD>?> aiclinical-backend > <20>臬<EFBFBD><E887AC>㗛<EFBFBD>
- 靽格㺿嚗? ```bash
DIFY_API_URL=http://172.16.x.x/v1 # ECS<43><53><EFBFBD>IP
DIFY_API_KEY=app-xxxxxxxxxxxxxxxxxxxxx # <20>笔<EFBFBD>Key
- 靽嘥<EFBFBD> > <20>滚鍳摨𠉛鍂
<EFBFBD>?瘚贝<EFBFBD>PKB<EFBFBD>蠘<EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
-
# <20>𥕦遣<F0A595A6>亥<EFBFBD>摨? curl -X POST http://<2F>滨垢<E6BBA8>啣<EFBFBD>/api/v1/pkb/knowledge-bases \ -H "Authorization: Bearer USER_TOKEN" \ -d '{"name":"瘚贝<E7989A><E8B49D>亥<EFBFBD>摨?}' # 摨磰砲餈𥪜<E9A488> 200 OK
<EFBFBD>嗆挾4嚗𡁶垢<EFBFBD>啁垢瘚贝<EFBFBD>嚗㇄ay 2銝见<E98A9D>嚗?
4.1 <20>蠘<EFBFBD>瘚贝<E7989A>
<EFBFBD>?<EFBFBD>冽<EFBFBD>瘜典<EFBFBD>/<2F>餃<EFBFBD>
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- <EFBFBD>滨垢瘜典<EFBFBD><EFBFBD>啁鍂<EFBFBD>?- <20>餃<EFBFBD><E9A483>𣂼<EFBFBD>
<EFBFBD>?*AI撖寡<EFBFBD>嚗㇁IA璅∪<EFBFBD>嚗?
- <EFBFBD>梧<EFBFBD> 5<><35><EFBFBD>
- <EFBFBD>𥕦遣憿寧𤌍
- <EFBFBD>𤏸絲撖寡<EFBFBD>
- 撉諹<EFBFBD>DeepSeek API靚<49>鍂<EFBFBD>𣂼<EFBFBD>
<EFBFBD>?**<2A>亥<EFBFBD>摨橒<E691A8>PKB璅∪<E79285>嚗?*
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- <EFBFBD>𥕦遣<EFBFBD>亥<EFBFBD>摨?- 銝𠹺<E98A9D>PDF<44><46>﹝
- 撉諹<EFBFBD>Dify憭<EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD>
<EFBFBD>?**<2A><>讃蝑偦<E89D91>㚁<EFBFBD>ASL璅∪<E79285>嚗?*
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- <EFBFBD>𥕦遣蝑偦<EFBFBD>厰★<EFBFBD>?- 銝𠹺<E98A9D>PDF
- 撉諹<EFBFBD>Python<EFBFBD>滚𦛚閫<EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD>
<EFBFBD>?**<2A>唳旿皜<E697BF><E79A9C>嚗㇄C璅∪<E79285>嚗?*
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- 銝𠹺<EFBFBD>Excel
- <EFBFBD>扯<EFBFBD>皜<EFBFBD><EFBFBD>
- 撉諹<EFBFBD>Polars憭<EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD>
4.2 <20>扯<EFBFBD>瘚贝<E7989A>
<EFBFBD>?<EFBFBD>滚<EFBFBD><EFBFBD>園𡢿
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- API<EFBFBD>滚<EFBFBD><EFBFBD>園𡢿 < 2蝘?- 憿菟𢒰<E88F9F>㰘蝸<E3B098>園𡢿 < 3蝘? <0A>?撟嗅<EFBFBD>瘚贝<EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- 雿輻鍂Apache Bench<63>銺Meter
- 璅⊥<EFBFBD>10銝芸僎<EFBFBD>𤑳鍂<EFBFBD>?- 撉諹<E69289><E8ABB9>𣳇<EFBFBD>霂?
4.3 <20>烐綉<E78390>滨蔭
<EFBFBD>?<EFBFBD>滨蔭<EFBFBD>亙<EFBFBD><EFBFBD>園<EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- SAE<EFBFBD>芸𢆡<EFBFBD>園<EFBFBD>stdout/stderr
- 撉諹<EFBFBD><EFBFBD>亙<EFBFBD><EFBFBD>舀䰻<EFBFBD>? <0A>?<EFBFBD>滨蔭<EFBFBD>𡃏郎閫<EFBFBD><EFBFBD>
- <EFBFBD>梧<EFBFBD> 15<31><35><EFBFBD>
- 鈭𤑳<EFBFBD><EFBFBD>?> <20>𡃏郎閫<E9838E><E996AB>
- CPU > 70%
- <EFBFBD><EFBFBD><EFBFBD> > 80%
- <EFBFBD>躰秤<EFBFBD>亙<EFBFBD> > 10<31>?<3F><><EFBFBD>
<EFBFBD>嗆挾5嚗帋<EFBFBD><EFBFBD>碶<EFBFBD><EFBFBD><EFBFBD>﹝嚗㇄ay 3嚗?
5.1 <20>舫<EFBFBD>劐<EFBFBD><E58A90>?
<EFBFBD>?<EFBFBD>滨蔭SSH<EFBFBD>折<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>睲噶<EFBFBD>抬<EFBFBD>
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?摰䂿緵OSS蝑曉<EFBFBD>URL嚗<EFBFBD><EFBFBD><EFBFBD>剁<EFBFBD> - <EFBFBD>梧<EFBFBD> 30<33><30><EFBFBD>
- <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
07-<2D>喲睸<E596B2>滨蔭銵亙<E98AB5>霂湔<E99C82>.md蝚?<3F>? <0A>?<EFBFBD>滨蔭<EFBFBD>笔<EFBFBD>嚗<EFBFBD>虾<EFBFBD>㚁<EFBFBD> - <EFBFBD>梧<EFBFBD> 30<33><30><EFBFBD>
- 韐凋僭<EFBFBD>笔<EFBFBD>
- <EFBFBD>滨蔭DNS閫<EFBFBD><EFBFBD>
- <EFBFBD>滨蔭HTTPS霂<EFBFBD>髡
5.2 <20><>﹝<EFBFBD>渡<EFBFBD>
<EFBFBD>?霈啣<EFBFBD><EFBFBD>滨蔭靽⊥<EFBFBD>
- <EFBFBD>梧<EFBFBD> 20<32><30><EFBFBD>
- <EFBFBD>𥕦遣
<EFBFBD>函蔡<EFBFBD>滨蔭皜<EFBFBD><EFBFBD>.xlsx - 霈啣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>匧<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𧑐<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ey
<EFBFBD>?憭<EFBFBD>遢<EFBFBD>滨蔭<EFBFBD><EFBFBD>辣
- <EFBFBD>梧<EFBFBD> 10<31><30><EFBFBD>
- Dify<EFBFBD>?
.env<20>?docker-compose.yaml - 銝𠹺<EFBFBD><EFBFBD>啁<EFBFBD><EFBFBD>滝it隞枏<EFBFBD><EFBFBD>硋<EFBFBD>撖<EFBFBD><EFBFBD><EFBFBD>? <0A>?蝻硋<EFBFBD>餈鞟輕<EFBFBD>见<EFBFBD>
- <EFBFBD>梧<EFBFBD> 30<33><30><EFBFBD>
- <EFBFBD>亙虜<EFBFBD>滢<EFBFBD>瘚<EFBFBD><EFBFBD>
- <EFBFBD><EFBFBD><EFBFBD>憭<EFBFBD><EFBFBD>瘚<EFBFBD><EFBFBD>
- <EFBFBD>𠉛頂鈭箔縑<EFBFBD>?
<EFBFBD>餌<EFBFBD>
<EFBFBD>園𡢿蝏蠘恣
| <EFBFBD>嗆挾 | 憸<EFBFBD>恣<EFBFBD>園𡢿 | 摰鮋<EFBFBD><EFBFBD>園𡢿 |
|---|---|---|
| <EFBFBD>嗆挾1嚗𡁜抅蝖<EFBFBD>霈暹鴌 | 2撠𤩺𧒄 | _______ |
| <EFBFBD>嗆挾2嚗𡁏瓲敹<EFBFBD><EFBFBD><EFBFBD>? | 2撠𤩺𧒄 | _______ |
| <EFBFBD>嗆挾3嚗鋽ify<EFBFBD>滚𦛚 | 1撠𤩺𧒄 | _______ |
| <EFBFBD>嗆挾4嚗𡁏<EFBFBD>霂? | 1撠𤩺𧒄 | _______ |
| <EFBFBD>嗆挾5嚗帋<EFBFBD><EFBFBD>? | <EFBFBD>舫<EFBFBD>? | _______ |
| <EFBFBD>餉恣 | 6撠𤩺𧒄 | _______ |
<EFBFBD>鞉𧋦蝏蠘恣
| <EFBFBD>滚𦛚 | 閫<EFBFBD>聢 | <EFBFBD><EFBFBD><EFBFBD><EFBFBD>? |
|---|---|---|
| SAE<EFBFBD>滨垢 | 0.5<EFBFBD>?GB<47>1 | 瞼50 |
| SAE<EFBFBD>𡒊垢 | 1<EFBFBD>?GB<47>2 | 瞼200 |
| SAE Python | 1<EFBFBD>?GB<47>1 | 瞼100 |
| RDS PostgreSQL | 2<EFBFBD>?GB | 瞼400 |
| ECS Dify | 4<EFBFBD>?GB | 瞼300 |
| OSS | 50GB | 瞼10 |
| NAT蝵穃<EFBFBD> | 撠誩<EFBFBD>+EIP | 瞼100 |
| <EFBFBD>餉恣 | - | *瞼1,160/<2F>? |
銝衤<EFBFBD>甇?
<EFBFBD>?閫<><E996AB>7憭拍迅摰𡁏<E691B0>?<3F>?<3F>寞旿<E5AF9E>烐綉<E78390>唳旿靚<E697BF>㟲韏<E39FB2><E99F8F> <0A>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>瞍𠉛<E79E8D> <0A>?蝻硋<E89DBB><E7A18B>冽<EFBFBD><E586BD>见<EFBFBD>
<EFBFBD>剖<EFBFBD>嚗<EFBFBD><EFBFBD>撌脩<EFBFBD>摰峕<EFBFBD>鈭<EFBFBD><EFBFBD>0<EFBFBD>?<3F><><EFBFBD>蝵莎<E89DB5> <20><>
<EFBFBD><EFBFBD>﹝<EFBFBD>𥕦遣鈭綽<EFBFBD> AI<41>拇<EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>擧凒<EFBFBD>堆<EFBFBD> 2025-12-14
*<EFBFBD><EFBFBD>𧋦嚗? v1.0