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%)
221 lines
4.8 KiB
Markdown
221 lines
4.8 KiB
Markdown
# <20>臬<EFBFBD><E887AC>㗛<EFBFBD><E3979B>滨蔭璅⊥踎 (.env)
|
||
|
||
> **<2A><>﹝霂湔<E99C82>嚗?* <20>祆<EFBFBD>獢<EFBFBD><E78DA2>靘𥕦<E99D98><F0A595A6>渡<EFBFBD> `.env` <20>滨蔭璅⊥踎
|
||
> **雿輻鍂<E8BCBB>孵<EFBFBD>嚗?* 憭滚<E686AD>隞乩<E99A9E><E4B9A9><EFBFBD>捆<EFBFBD>?`backend/.env` <20><>辣銝哨<E98A9D>撟嗅‵<E59785>亦<EFBFBD>摰鮋<E691B0>蝵桀<E89DB5>?
|
||
> **<2A>𥕦遣<F0A595A6>交<EFBFBD>嚗?* 2025-11-09
|
||
|
||
---
|
||
|
||
## <20><> 摰峕㟲<E5B395>滨蔭璅⊥踎
|
||
|
||
撠<EFBFBD>誑銝见<EFBFBD>摰孵<EFBFBD><EFBFBD>嗅<EFBFBD> `AIclinicalresearch/backend/.env` <20><>辣嚗?
|
||
|
||
```env
|
||
# ================================
|
||
# <20>滚𦛚<E6BB9A>券<EFBFBD>蝵?
|
||
# ================================
|
||
PORT=3001
|
||
HOST=0.0.0.0
|
||
NODE_ENV=development
|
||
LOG_LEVEL=info
|
||
|
||
# ================================
|
||
# <20>唳旿摨㯄<E691A8>蝵?
|
||
# ================================
|
||
DATABASE_URL=postgresql://postgres:your_password@localhost:5432/ai_clinical_research
|
||
|
||
# ================================
|
||
# Redis<69>滨蔭
|
||
# ================================
|
||
REDIS_URL=redis://localhost:6379
|
||
|
||
# ================================
|
||
# JWT<57>滨蔭
|
||
# ================================
|
||
JWT_SECRET=your-secret-key-change-in-production-min-32-chars
|
||
JWT_EXPIRES_IN=7d
|
||
|
||
# ================================
|
||
# LLM API<50>滨蔭
|
||
# ================================
|
||
|
||
# ---------- DeepSeek (<28>渲<EFBFBD>) ----------
|
||
DEEPSEEK_API_KEY=sk-your-deepseek-api-key
|
||
DEEPSEEK_BASE_URL=https://api.deepseek.com
|
||
|
||
# ---------- Qwen (<28>朞<EFBFBD><E69C9E>輸<EFBFBD>鈭飇ashScope) ----------
|
||
DASHSCOPE_API_KEY=sk-your-dashscope-api-key
|
||
|
||
# ---------- Gemini (<28>舫<EFBFBD>? ----------
|
||
GEMINI_API_KEY=your-gemini-api-key
|
||
|
||
# ================================
|
||
# CloseAI<41>滨蔭嚗<E894AD>誨<EFBFBD><E8AAA8>penAI<41>龦laude嚗争<E59A97>
|
||
# ================================
|
||
# CloseAI<41>臭<EFBFBD>銝服PI隞<49><E99A9E>撟喳蝱嚗峕<E59A97>靘𤤿迅摰𡁶<E691B0>OpenAI<41>龦laude霈輸䔮
|
||
# 摰条<E691B0>嚗冴ttps://platform.openai-proxy.org
|
||
|
||
# 蝏煺<E89D8F>API Key嚗<79><E59A97><EFBFBD>嗥鍂鈭窻penAI<41>龦laude嚗?
|
||
CLOSEAI_API_KEY=sk-your-closeai-api-key
|
||
|
||
# OpenAI蝡舐<E89DA1>
|
||
CLOSEAI_OPENAI_BASE_URL=https://api.openai-proxy.org/v1
|
||
|
||
# Claude蝡舐<E89DA1>
|
||
CLOSEAI_CLAUDE_BASE_URL=https://api.openai-proxy.org/anthropic
|
||
|
||
# <20>舀<EFBFBD><E88880><EFBFBD>芋<EFBFBD>页<EFBFBD>
|
||
# - OpenAI: gpt-5-pro, gpt-4-turbo-preview, gpt-3.5-turbo
|
||
# - Claude: claude-sonnet-4-5-20250929, claude-3-5-sonnet-20241022
|
||
|
||
# ================================
|
||
# Dify<66>滨蔭嚗<E894AD>䰻霂<E4B0BB><E99C82>RAG撘閙<E69298>嚗?
|
||
# ================================
|
||
DIFY_API_KEY=app-your-dify-api-key
|
||
DIFY_API_URL=http://localhost/v1
|
||
|
||
# ================================
|
||
# <20><>辣銝𠹺<E98A9D><F0A0B9BA>滨蔭
|
||
# ================================
|
||
UPLOAD_MAX_SIZE=10485760
|
||
UPLOAD_DIR=./uploads
|
||
|
||
# ================================
|
||
# CORS<52>滨蔭
|
||
# ================================
|
||
CORS_ORIGIN=http://localhost:5173
|
||
|
||
# ================================
|
||
# 瘜冽<E7989C>鈭钅★
|
||
# ================================
|
||
# 1. 霂瑕<E99C82> your-* <20>牐<EFBFBD>蝚行𤜯<E8A18C>V蛹<EFBCB6>笔<EFBFBD><E7AC94><EFBFBD><EFBFBD>蝵桀<E89DB5>?
|
||
# 2. .env <20><>辣<EFBFBD><E8BEA3>鉄<EFBFBD>𤩺<EFBFBD>靽⊥<E99DBD>嚗䔶<E59A97>閬<EFBFBD><E996AC>鈭文<E988AD> git 隞枏<E99A9E>
|
||
# 3. <20>煺漣<E785BA>臬<EFBFBD>霂瑚蝙<E7919A>典撩撖<E692A9><E69296><EFBFBD>𣬚𡠺蝡讠<E89DA1> API Key
|
||
# 4. JWT_SECRET 撱箄悅雿輻鍂 32 雿滢誑銝𢠃<E98A9D><F0A2A083>箏<EFBFBD>蝚虫葡
|
||
```
|
||
|
||
---
|
||
|
||
## <20><> 敶枏<E695B6><E69E8F>笔<EFBFBD><E7AC94>滨蔭嚗<E894AD><E59A97>靘𥕦<E99D98><F0A595A6><EFBFBD><EFBFBD>
|
||
|
||
### CloseAI<41>滨蔭嚗<E894AD>歇<EFBFBD>滨蔭嚗争<E59A97>
|
||
|
||
```env
|
||
CLOSEAI_API_KEY=sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo
|
||
CLOSEAI_OPENAI_BASE_URL=https://api.openai-proxy.org/v1
|
||
CLOSEAI_CLAUDE_BASE_URL=https://api.openai-proxy.org/anthropic
|
||
```
|
||
|
||
**<EFBFBD>舐鍂璅∪<EFBFBD>嚗?*
|
||
- OpenAI: `gpt-5-pro`
|
||
- Claude: `claude-sonnet-4-5-20250929`
|
||
|
||
---
|
||
|
||
## <20><> <20>滨蔭甇仿炊
|
||
|
||
### 1. <20>𥕦遣 .env <20><>辣
|
||
|
||
```bash
|
||
cd AIclinicalresearch/backend
|
||
# 憭滚<E686AD>璅⊥踎
|
||
copy .env.example .env # Windows
|
||
# <20>?
|
||
cp .env.example .env # Linux/Mac
|
||
```
|
||
|
||
### 2. 憛怠<E6869B><E680A0>笔<EFBFBD><E7AC94>滨蔭
|
||
|
||
<EFBFBD>枏<EFBFBD> `backend/.env` <20><>辣嚗峕𤜯<E5B395>W<EFBFBD>雿滨泵嚗?
|
||
|
||
**敹<>◆<EFBFBD>滨蔭嚗?*
|
||
- `DATABASE_URL` - <20>唳旿摨栞<E691A8><E6A09E>?
|
||
- `DEEPSEEK_API_KEY` - DeepSeek API嚗<49>蜓<EFBFBD>𥟇芋<F0A59F87>页<EFBFBD>
|
||
- `CLOSEAI_API_KEY` - CloseAI API嚗㇉penAI+Claude嚗?
|
||
|
||
**<EFBFBD>舫<EFBFBD>厰<EFBFBD>蝵殷<EFBFBD>**
|
||
- `DASHSCOPE_API_KEY` - Qwen璅∪<E79285>
|
||
- `DIFY_API_KEY` - <20>亥<EFBFBD>摨𣫮AG
|
||
- `JWT_SECRET` - <20>煺漣<E785BA>臬<EFBFBD>敹<EFBFBD>◆靽格㺿
|
||
|
||
### 3. 撉諹<E69289><E8ABB9>滨蔭
|
||
|
||
```bash
|
||
# <20>臬𢆡<E887AC>𡒊垢<F0A1928A>滚𦛚
|
||
cd backend
|
||
npm run dev
|
||
|
||
# 璉<><E79289>交𠯫敹梹<E695B9>蝖株恕瘝⊥<E7989D> API Key 霅血<E99C85>
|
||
```
|
||
|
||
---
|
||
|
||
## <20>𩤃<EFBFBD> 摰匧<E691B0><E58CA7>鞾<EFBFBD>
|
||
|
||
### 銝滩<E98A9D><E6BBA9>𣂷漱<F0A382B7>蚣it
|
||
|
||
蝖株恕 `.gitignore` <20><>鉄嚗?
|
||
```gitignore
|
||
# <20>臬<EFBFBD><E887AC>㗛<EFBFBD><E3979B><EFBFBD>辣
|
||
.env
|
||
.env.local
|
||
.env.*.local
|
||
```
|
||
|
||
### API Key摰匧<E691B0>
|
||
|
||
1. **摰𡁏<E691B0>頧格揢嚗?* 瘥?銝芣<E98A9D><E88AA3>湔揢銝<E68FA2>甈,PI Key
|
||
2. **<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>撠誩<EFBFBD>嚗?* <20>芣<EFBFBD>鈭<EFBFBD><E988AD>閬<EFBFBD><E996AC><EFBFBD><EFBFBD><EFBFBD>
|
||
3. **<EFBFBD>祉<EFBFBD>撖<EFBFBD>𤨎嚗?* 撘<><E69298>?瘚贝<E7989A>/<2F>煺漣雿輻鍂銝滚<E98A9D><E6BB9A><EFBFBD>ey
|
||
4. **<EFBFBD>烐綉雿輻鍂嚗?* 摰𡁏<E691B0>璉<EFBFBD><E79289>丕PI靚<49>鍂<EFBFBD>誩<EFBFBD>韐寧鍂
|
||
|
||
### 瘜<>蠧摨娍<E691A8>?
|
||
|
||
憒<EFBFBD><EFBFBD>API Key銝齿<E98A9D>瘜<EFBFBD>蠧嚗?
|
||
1. 蝡见朖<E8A781>冽<EFBFBD><E586BD>∪<EFBFBD><E288AA>𤾸蝱蝳<E89DB1>鍂/<2F>𣳇膄霂仕ey
|
||
2. <20><><EFBFBD><EFBFBD>啁<EFBFBD>API Key
|
||
3. <20>湔鰵 `.env` <20><>辣
|
||
4. <20>滚鍳<E6BB9A>滚𦛚
|
||
|
||
---
|
||
|
||
## <20><> <20>滨蔭撉諹<E69289>皜<EFBFBD><E79A9C>
|
||
|
||
<EFBFBD>函蔡<EFBFBD>滩窈蝖株恕嚗?
|
||
|
||
- [ ] <20>?DATABASE_URL <20>滨蔭甇<E894AD>&銝𥪜虾餈墧𦻖
|
||
- [ ] <20>?DEEPSEEK_API_KEY 撌脤<E6928C>蝵?
|
||
- [ ] <20>?CLOSEAI_API_KEY 撌脤<E6928C>蝵殷<E89DB5><E6AEB7>其<EFBFBD>GPT-5<>龦laude-4.5嚗?
|
||
- [ ] <20>?JWT_SECRET 撌脖耨<E88496>嫣蛹撘箏<E69298><E7AE8F>?
|
||
- [ ] <20>?CORS_ORIGIN 撌脰挽蝵格迤蝖桃<E89D96><E6A183>滨垢<E6BBA8>啣<EFBFBD>
|
||
- [ ] <20>?.env <20><>辣撌脫溶<E884AB>惩<EFBFBD> .gitignore
|
||
- [ ] <20>?<3F><><EFBFBD>㗇<EFBFBD><E39787>煺縑<E785BA>舀𧊋<E88880>𣂷漱<F0A382B7>蚣it
|
||
|
||
---
|
||
|
||
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>獢<EFBFBD><EFBFBD>**
|
||
- [01-<2D>臬<EFBFBD><E887AC>滨蔭<E6BBA8><E894AD><EFBFBD>.md](./01-<2D>臬<EFBFBD><E887AC>滨蔭<E6BBA8><E894AD><EFBFBD>.md) - 霂衣<E99C82><E8A1A3><EFBFBD><EFBFBD>蝵株秩<E6A0AA>?
|
||
- [<5B>唳旿摨栞<E691A8><E6A09E>仿<EFBFBD>蝵孫(../09-<2D>嗆<EFBFBD>摰墧鴌/02-<2D>唳旿摨栞<E691A8><E6A09E>仿<EFBFBD>蝵?md) - <20>唳旿摨㮖<E691A8>憿寥<E686BF>蝵?
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|