基于🍌Nano Banana Pro🍌的一站式小红书图文生成器,能够实现“一句话一张图片生成小红书图文”,帮助用户快速生成小红书平台所需的图文内容。

Github地址

https://github.com/HisMax/RedInk

img

img

功能特点

  • 一键生成图文:用户只需输入一句话的主题,即可快速生成小红书图文内容,包括封面页和多页内容大纲。
  • 自定义编辑:生成的大纲和图片内容可以进行编辑和调整,用户可以根据自己的需求修改描述词、重新生成不满意的部分等,以满足个性化需求。
  • 上传参考图片:支持上传参考图片,有助于保持品牌视觉风格的统一性,适合品牌方使用。
  • 高并发模式:可选择开启高并发模式,同时生成多张图片,提高生成效率,但需确保 API 支持高并发。
  • 配置灵活:支持 Web 界面配置和 YAML 文件配置两种方式,用户可以根据自己的喜好和需求进行配置。
  • 历史记录管理:优化了历史记录管理功能,方便用户查看和管理已生成的图文内容。

部署方式

  • Docker 部署(推荐)

    • 使用一行命令即可启动服务,访问 Web 界面后在设置页面配置 API Key 即可使用。
    • 支持持久化生成的图片,可选挂载自定义配置文件。
    • 官方 Docker 镜像地址:histonemax/redink
  • 本地开发部署

    • 前置要求:Python 3.11+、Node.js 18+、pnpm、uv。
    • 需要克隆项目、配置 API 服务、安装后端和前端依赖,然后启动服务。

🏗️ 技术架构

后端

  • 语言: Python 3.11+
  • 框架: Flask
  • AI 模型:
    • Gemini 3 (文案生成)
    • 🍌Nano banana Pro (图片生成)
  • 包管理: uv

前端

  • 框架: Vue 3 + TypeScript
  • 构建: Vite
  • 状态管理: Pinia

📦 如何自己部署

方式一:Docker 部署(推荐)

最简单的部署方式,一行命令即可启动:

1
docker run -d -p 12398:12398 -v ./output:/app/output histonemax/redink:latest

访问 http://localhost:12398,在 Web 界面的设置页面配置你的 API Key 即可使用。

使用 docker-compose(可选):

下载 docker-compose.yml 后:

1
docker-compose up -d

Docker 部署说明:

  • 容器内不包含任何 API Key,需要在 Web 界面配置
  • 使用 -v ./output:/app/output 持久化生成的图片
  • 可选:挂载自定义配置文件 -v ./text_providers.yaml:/app/text_providers.yaml

方式二:本地开发部署

前置要求:

  • Python 3.11+
  • Node.js 18+
  • pnpm
  • uv

1. 克隆项目

1
2
git clone https://github.com/HisMax/RedInk.git
cd RedInk

2. 配置 API 服务

复制配置模板文件:

1
2
cp text_providers.yaml.example text_providers.yaml
cp image_providers.yaml.example image_providers.yaml

编辑配置文件,填入你的 API Key 和服务配置。也可以启动后在 Web 界面的设置页面进行配置。

3. 安装后端依赖

1
uv sync

4. 安装前端依赖

1
2
cd frontend
pnpm install

5. 启动服务

启动后端:

1
uv run python -m backend.app

访问: http://localhost:12398

启动前端:

1
2
cd frontend
pnpm dev

访问: http://localhost:5173


🎮 使用指南

基础使用

  1. 输入主题: 在首页输入想要创作的主题,如”如何在家做拿铁”
  2. 生成大纲: AI 自动生成 6-9 页的内容大纲
  3. 编辑确认: 可以编辑和调整每一页的描述
  4. 生成图片: 点击生成,实时查看进度
  5. 下载使用: 一键下载所有图片

进阶使用

  • 上传参考图片: 适合品牌方,保持品牌视觉风格
  • 修改描述词: 精确控制每一页的内容和构图
  • 重新生成: 对不满意的页面单独重新生成

🔧 配置说明

配置方式

项目支持两种配置方式:

  1. Web 界面配置(推荐):启动服务后,在设置页面可视化配置
  2. YAML 文件配置:直接编辑配置文件

文本生成配置

配置文件: text_providers.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 当前激活的服务商
active_provider: openai

providers:
# OpenAI 官方或兼容接口
openai:
type: openai_compatible
api_key: sk-xxxxxxxxxxxxxxxxxxxx
base_url: https://api.openai.com/v1
model: gpt-4o

# Google Gemini(原生接口)
gemini:
type: google_gemini
api_key: AIzaxxxxxxxxxxxxxxxxxxxxxxxxx
model: gemini-2.0-flash

图片生成配置

配置文件: image_providers.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 当前激活的服务商
active_provider: gemini

providers:
# Google Gemini 图片生成
gemini:
type: google_genai
api_key: AIzaxxxxxxxxxxxxxxxxxxxxxxxxx
model: gemini-3-pro-image-preview
high_concurrency: false # 高并发模式

# OpenAI 兼容接口
openai_image:
type: image_api
api_key: sk-xxxxxxxxxxxxxxxxxxxx
base_url: https://your-api-endpoint.com
model: dall-e-3
high_concurrency: false

高并发模式说明

  • 关闭(默认):图片逐张生成,适合 GCP 300$ 试用账号或有速率限制的 API
  • 开启:图片并行生成(最多15张同时),速度更快,但需要 API 支持高并发

⚠️ GCP 300$ 试用账号不建议启用高并发,可能会触发速率限制导致生成失败。


⚠️ 注意事项

  1. API 配额限制:
    • 注意 Gemini 和图片生成 API 的调用配额
    • GCP 试用账号建议关闭高并发模式
  2. 生成时间:
    • 图片生成需要时间,请耐心等待(不要离开页面)