201 lines
4.4 KiB
Markdown
201 lines
4.4 KiB
Markdown
# 图片生成器
|
||
|
||
基于 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)
|