docs: 完善 README.md
This commit is contained in:
200
README.md
Normal file
200
README.md
Normal file
@@ -0,0 +1,200 @@
|
|||||||
|
# 图片生成器
|
||||||
|
|
||||||
|
基于 MiniMax API 的文生图 Web 界面,支持 `image-01` 和 `image-01-live` 双模型。
|
||||||
|
|
||||||
|
**本地访问:** http://10.0.10.110:8195
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 功能特性
|
||||||
|
|
||||||
|
### 模型
|
||||||
|
|
||||||
|
| 模型 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| `image-01` | 标准文生图,支持全部比例和自定义分辨率 |
|
||||||
|
| `image-01-live` | 支持画风类型,适合风格化创作 |
|
||||||
|
|
||||||
|
### 图片参数
|
||||||
|
|
||||||
|
- **比例**:1:1 / 16:9 / 4:3 / 3:2 / 2:3 / 3:4 / 9:16 / 21:9(仅 image-01)
|
||||||
|
- **自定义分辨率**:宽度 × 高度,512-2048,必须为 8 的倍数;同时设置宽高时优先于比例
|
||||||
|
- **输出格式**:URL(24小时有效)或 Base64(直接保存)
|
||||||
|
- **生成数量**:1-9 张
|
||||||
|
- **随机种子**:输入整数用于复现,留空则随机
|
||||||
|
|
||||||
|
### 画风(仅 image-01-live)
|
||||||
|
|
||||||
|
| 画风 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| 漫画 | 漫画风格 |
|
||||||
|
| 元气 | 活力元气风格 |
|
||||||
|
| 中世纪 | 中世纪风格 |
|
||||||
|
| 水彩 | 水彩画风格 |
|
||||||
|
|
||||||
|
权重 0.1-1.0 通过滑块调节。
|
||||||
|
|
||||||
|
### 高级选项
|
||||||
|
|
||||||
|
- **自动优化 Prompt**:启用后自动优化描述
|
||||||
|
- **添加 AI 水印**:在图片中嵌入 MiniMax 水印
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## API Key 配置
|
||||||
|
|
||||||
|
首次使用需配置 MiniMax API Key:
|
||||||
|
|
||||||
|
1. 点击右上角 ⚙️ 设置按钮
|
||||||
|
2. 填写 API Key(格式:`eyJhbGciOiJIUzI1NiIsInR5...`)
|
||||||
|
3. API 地址默认 `https://api.minimaxi.com`(中国区),仅在需要代理时修改
|
||||||
|
4. 点击保存
|
||||||
|
|
||||||
|
> API Key 获取地址:https://platform.minimaxi.com/user-center/basic-information/interface-key
|
||||||
|
|
||||||
|
Key 存储在 `config.json` 中(服务进程内存,不暴露给前端)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 部署
|
||||||
|
|
||||||
|
### 环境依赖
|
||||||
|
|
||||||
|
- Node.js(已安装)
|
||||||
|
- 全局模块:`express`、`node-fetch`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 检查依赖
|
||||||
|
npm root -g # 查看全局模块路径
|
||||||
|
node -e "require('express'); require('node-fetch')" # 验证
|
||||||
|
```
|
||||||
|
|
||||||
|
### Systemd Service
|
||||||
|
|
||||||
|
```ini
|
||||||
|
# ~/.config/systemd/user/image-generator.service
|
||||||
|
[Unit]
|
||||||
|
Description=MiniMax Image Generator
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
WorkingDirectory=/home/zwbpc/image-generator
|
||||||
|
ExecStart=/home/zwbpc/image-generator/start.sh
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=5
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 启用并启动
|
||||||
|
systemctl --user daemon-reload
|
||||||
|
systemctl --user enable --now image-generator.service
|
||||||
|
|
||||||
|
# 重启
|
||||||
|
systemctl --user restart image-generator.service
|
||||||
|
|
||||||
|
# 查看日志
|
||||||
|
journalctl --user -u image-generator.service -n50 -f
|
||||||
|
```
|
||||||
|
|
||||||
|
### 手动启动
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /home/zwbpc/image-generator
|
||||||
|
export NODE_PATH=$(npm root -g)
|
||||||
|
node app.js
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 接口
|
||||||
|
|
||||||
|
### `POST /api/generate`
|
||||||
|
|
||||||
|
生成图片。
|
||||||
|
|
||||||
|
**请求体:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"model": "image-01",
|
||||||
|
"prompt": "一只赛博朋克风格的小猫",
|
||||||
|
"aspect_ratio": "16:9",
|
||||||
|
"response_format": "url",
|
||||||
|
"n": 1
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
| 参数 | 类型 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| `model` | string | `image-01` 或 `image-01-live` |
|
||||||
|
| `prompt` | string | 图片描述,最多 1500 字符 |
|
||||||
|
| `aspect_ratio` | string | 比例,如 `16:9` |
|
||||||
|
| `width` | number | 自定义宽度(512-2048,需同时设置 height) |
|
||||||
|
| `height` | number | 自定义高度(512-2048,需同时设置 width) |
|
||||||
|
| `response_format` | string | `url` 或 `base64` |
|
||||||
|
| `n` | number | 生成数量 1-9 |
|
||||||
|
| `seed` | number | 随机种子,用于复现 |
|
||||||
|
| `prompt_optimizer` | boolean | 自动优化 Prompt |
|
||||||
|
| `aigc_watermark` | boolean | 添加 AI 水印 |
|
||||||
|
| `style.style_type` | string | 画风类型(仅 image-01-live) |
|
||||||
|
| `style.style_weight` | number | 画风权重 0.1-1.0(仅 image-01-live) |
|
||||||
|
|
||||||
|
**响应:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"images": ["https://..."],
|
||||||
|
"id": "task_xxx",
|
||||||
|
"success_count": 1,
|
||||||
|
"failed_count": 0
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### `GET /api/config`
|
||||||
|
|
||||||
|
获取当前配置(不含 Key)。
|
||||||
|
|
||||||
|
### `POST /api/config`
|
||||||
|
|
||||||
|
保存配置。
|
||||||
|
|
||||||
|
### `GET /api/task/:id`
|
||||||
|
|
||||||
|
查询任务状态(预留)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 常见错误
|
||||||
|
|
||||||
|
| 错误码 | 说明 |
|
||||||
|
|--------|------|
|
||||||
|
| 1002 | 限流,请稍后再试 |
|
||||||
|
| 1004 | 账号鉴权失败,检查 API Key |
|
||||||
|
| 1008 | 账号余额不足 |
|
||||||
|
| 1026 | 内容涉及敏感词,修改 Prompt |
|
||||||
|
| 2013 | 参数异常,检查输入是否合规 |
|
||||||
|
| 2049 | 无效的 API Key |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 项目结构
|
||||||
|
|
||||||
|
```
|
||||||
|
image-generator/
|
||||||
|
├── index.html # 前端页面
|
||||||
|
├── style.css # 样式(深色主题)
|
||||||
|
├── app.js # Express 服务端
|
||||||
|
├── config.json # API Key 存储(不提交)
|
||||||
|
├── start.sh # 启动脚本(设置 NODE_PATH)
|
||||||
|
└── CHANGELOG.md # 更新日志
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 更新日志
|
||||||
|
|
||||||
|
参见 [CHANGELOG.md](./CHANGELOG.md)
|
||||||
Reference in New Issue
Block a user