docs: 更新README,添加多LLM并发功能说明

This commit is contained in:
xiaji
2026-05-09 10:23:16 +08:00
parent b0daad7f36
commit 87cba41d01

View File

@@ -1,6 +1,6 @@
# Flomo AI
一个 AI 文本优化工具,包含 Android 原版和 Rust Windows 桌面移植版。
一个 AI 文本优化工具,支持 Android 原版和 Rust Windows 桌面版。
## 项目结构
@@ -11,7 +11,6 @@
│ │ │ └── com/example/flomo_ai/
│ │ │ ├── MainActivity.kt # 主界面
│ │ │ ├── SecondActivity.kt # 设置页面
│ │ │ ├── kwt.kt # JWT 生成工具
│ │ │ └── ui/theme/ # 主题管理
│ │ └── res/ # 布局、颜色、图标等资源
│ └── mumu-pytest/ # MuMu 模拟器自动化测试
@@ -26,10 +25,7 @@
│ │ └── llm_client.rs # LLM API 调用OpenAI 兼容格式)
│ ├── theme/
│ │ └── mod.rs # 明暗主题管理
── pages/
│ │ ├── main_page.rs # 主界面组件
│ │ └── settings_page.rs # 设置页组件
│ └── widgets/ # 可复用 UI 组件
── pages/ # 页面组件
├── .cargo/config.toml # MinGW 工具链配置
└── Cargo.toml # 依赖声明
```
@@ -37,7 +33,8 @@
## 功能特性
### 核心功能
- **多模型配置**:支持添加、编辑、删除多个大模型配置,首页可快速切换
- **多模型并发**:支持同时配置 3 个 LLM 模型,发送时并发调用所有启用的模型
- **独立测试**:每个模型可单独测试连接状态
- **LLM API 调用**:兼容 OpenAI 格式的 API支持自定义 Base URL、API Key、Model
- **自定义请求头**:可添加额外的 HTTP Header
- **提示词管理**:添加、删除、编辑系统提示词,主界面下拉选择
@@ -45,15 +42,18 @@
- **主题切换**:浅色模式 / 深色模式 / 跟随系统
- **配置持久化**JSON 格式保存到用户配置目录
- **复制结果**:一键复制优化结果到剪贴板
- **笔记保存**:支持 Flomo、Notion、Joplin 等笔记 APIAPI Key 可选)
### 界面布局
- **顶部标题栏**:显示 "AI优化" + 模型选择下拉框 + 配置按钮
- **快速操作区**:四个 emoji 快捷按钮
- **提示词选择器**:下拉菜单选择系统提示词,显示提示词内容预览
- **输入区域**多行文本输入自动增长3-10行限制
- **发送/停止**:发送按钮 + 生成中可停止
- **结果展示区**:状态标签 + 可编辑结果文本 + 复制按钮 + 保存笔记按钮
- **主界面**
- 顶部标题栏 + 配置按钮
- 提示词选择器 + 快速操作按钮
- 输入区域 + 发送按钮
- **三栏结果显示**:水平排列 3 个模型的结果卡片
- **配置页面**
- 3 个模型的独立配置启用开关、名称、URL、Key、Model
- 每个模型独立的测试按钮
- 主题设置
- 提示词管理
## 构建说明
@@ -74,7 +74,9 @@ cd flomo-ai-desktop
cargo build --release
```
编译产物:`target/release/flomo-ai.exe`~4.4MB,无控制台窗口)
或使用 `build.bat`(需先安装 MSYS2 + MinGW
编译产物:`target/release/flomo-ai.exe`~4MB无控制台窗口
### 编译配置
- `.cargo/config.toml`:指定 MinGW 链接器和 `-mwindows` 参数
@@ -83,8 +85,8 @@ cargo build --release
### 依赖
| 依赖 | 用途 |
|------|------|
| `egui` + `eframe` | GUI 框架(纯 Rust无 C 依赖) |
| `reqwest` (blocking + rustls-tls) | HTTP 客户端(纯 Rust TLS |
| `egui` + `eframe` (glow) | GUI 框架(纯 Rust无 C 依赖) |
| `reqwest` (blocking + native-tls) | HTTP 客户端 |
| `serde` + `serde_json` | 序列化 / 配置持久化 |
| `dirs` | 获取用户配置目录路径 |
| `arboard` | 剪贴板操作 |
@@ -95,11 +97,31 @@ cargo build --release
```json
{
"llm_config": {
"llm_configs": {
"models": [
{
"enabled": true,
"name": "模型1",
"base_url": "https://api.openai.com/v1",
"api_key": "",
"model": "gpt-4o"
},
{
"enabled": false,
"name": "模型2",
"base_url": "",
"api_key": "",
"model": ""
},
{
"enabled": false,
"name": "模型3",
"base_url": "",
"api_key": "",
"model": ""
}
]
},
"header_configs": [],
"prompt_configs": [
{