File size: 4,214 Bytes
793e953
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# VetCopilot — AI 兽医助手

智能兽医诊疗辅助系统,集成语音转写、AI 辅助诊断、病历管理、药品管理、预约排班等功能。

## 技术栈

| 层 | 技术 |
|---|------|
| 前端 | React 18 + TypeScript + Vite + TailwindCSS |
| 后端 | Python 3.12 + FastAPI + SQLAlchemy + SQLite |
| ASR | SenseVoice (阿里免费) / Whisper / 讯飞(三引擎可切换) |
| LLM | DeepSeek / 自定义模型(OpenAI 兼容 API) |
| 数据可视化 | Recharts |
| 部署 | Docker + Nginx + Let's Encrypt HTTPS |

## 项目结构

```
can_you_help_me/
├── vetcopilot-app/          # 前端 (React + Vite)
│   ├── src/
│   │   ├── api/             # API 调用层
│   │   ├── components/      # 公共组件
│   │   ├── hooks/           # 自定义 Hooks
│   │   ├── i18n/            # 国际化 (中/英)
│   │   └── pages/           # 页面组件
│   └── vite.config.ts
├── vetcopilot-backend/      # 后端 (FastAPI)
│   ├── app/
│   │   ├── models/          # SQLAlchemy 数据模型
│   │   ├── routers/         # API 路由
│   │   ├── schemas/         # Pydantic 数据验证
│   │   ├── services/        # 业务逻辑层
│   │   │   └── asr/        # ASR 引擎 (SenseVoice/Whisper/Xunfei)
│   │   ├── config.py        # 全局配置
│   │   └── main.py          # 应用入口
│   └── requirements.txt
├── deploy/                  # 部署配置
│   ├── docker-compose.yml
│   ├── Dockerfile.backend
│   ├── Dockerfile.frontend
│   ├── nginx.conf
│   ├── nginx-site.conf
│   ├── setup-https.sh       # HTTPS 证书自动获取
│   └── .env.production.example
└── dev-log/                 # 开发日志
```

## 快速开始

### 1. 后端

```bash
cd vetcopilot-backend
python -m venv venv
venv\Scripts\activate        # Windows
# source venv/bin/activate   # Mac/Linux

pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8080 --reload
```

### 2. 前端

```bash
cd vetcopilot-app
npm install
npm run dev
```

### 3. 访问

- 前端: `http://localhost:5173`
- 后端 API 文档: `http://localhost:8080/docs`
- 测试账号: `13800000002` / `password123`

## ASR 引擎切换

编辑 `vetcopilot-backend/.env`:

```env
# 推荐:阿里 SenseVoice(免费,中文优化,约 200MB)
ASR_PROVIDER=sensevoice

# 或:Whisper(免费,多语言)
ASR_PROVIDER=whisper

# 或:讯飞(付费,高精度实时流式)
ASR_PROVIDER=xunfei
```

### 安装 SenseVoice

```bash
pip install funasr sentencepiece
# 首次使用会自动从 ModelScope 下载模型权重
```

## 对接同事调优模型

在 `.env` 中配置(任意 OpenAI 兼容 API):

```env
LLM_PROVIDER=custom
CUSTOM_LLM_ENABLED=true
CUSTOM_LLM_API_BASE=http://同事IP:端口/v1
CUSTOM_LLM_MODEL=模型名称
```

## 生产部署

参考 `deploy/` 目录下的配置文件。建议方案:

- **服务器**: 阿里云/腾讯云 教育优惠 (~100元/年)
- **域名**: 万网/DNSPod 教育优惠 (~1元/年)
- **HTTPS**: Let's Encrypt 免费证书(`setup-https.sh` 自动配置)
- **容器化**: `docker compose --env-file .env.production up -d`

```bash
# 1. 准备环境变量
cp deploy/.env.production.example deploy/.env.production
# 编辑 deploy/.env.production 填写真实密钥

# 2. 启动
cd deploy
docker compose --env-file .env.production up -d

# 3. 配置 HTTPS
sudo bash setup-https.sh your-domain.com admin@example.com
```

## 功能模块

- 语音转写:实时录音 → ASR 引擎 → 结构化病历
- AI 辅助诊断:症状输入 → LLM 分析 → 鉴别诊断 + 治疗方案
- 病历管理:结构化病历 + PDF/DOCX 导出
- 药品管理:库存/出入库/处方
- 预约排班:日历视图 + 时段管理
- 账单收费:诊疗项目 + 账单统计
- 通知中心:模板管理 + SMS/Email/Push 多渠道
- 权限管理:RBAC 角色权限控制
- 数据可视化:收入/患者/药品等多维度图表
- 超级管理员:全功能后台控制面板

## 许可证

Private — 仅供内部使用