AI图像生成网页交互平台 - 基于Streamlit构建的Web应用,提供简洁的用户界面和实用的图像生成功能

应用预览

AI图像生成网页交互平台 - 基于Streamlit构建的Web应用,提供简洁的用户界面和实用的图像生成功能

AI图像生成网页交互平台 - 基于Streamlit构建的Web应用,提供简洁的用户界面和实用的图像生成功能

项目结构

showimageweb/
├── app.py                    # 主应用文件(Streamlit界面)
├── Dockerfile               # Docker构建配置
├── requirements.txt         # Python依赖包
├── docker-compose.yml       # Docker Compose配置
├── LICENSE                  # MIT许可证
├── README.md                # 项目文档
└── assets/
    └── showimage-web-demo.png # 应用预览图

技术栈

  • 前端框架: Streamlit 1.29.0+
  • 后端语言: Python 3.9+
  • 容器化: Docker & Docker Compose
  • 核心依赖: requests, streamlit, base64

特性

  • 高性能: 基于Streamlit的快速响应界面
  • 美观UI: 现代化的卡片式设计,支持自定义画廊列数
  • 响应式: 自适应不同屏幕尺寸,适配移动端
  • 历史记录: 自动保存生成记录,支持无限数量存储
  • 配置选项: 支持随机/固定种子,自定义API配置
  • 实时状态: 生成进度实时显示,带有时间统计
  • 一键下载: PNG图片直接下载,自动命名
  • 通用API: 兼容多种AI图像生成服务
  • 内存管理: 智能存储管理,自动base64优化

快速开始

部署方式

方式一:Docker 部署(推荐)

# 克隆项目
git clone https://github.com/kaima2022/showimageweb.git
cd showimageweb

# 使用 Docker Compose 启动
docker compose up -d

方式二:本地部署

# 克隆项目
git clone https://github.com/kaima2022/showimageweb.git
cd showimageweb

# 安装依赖
pip install -r requirements.txt
# 启动
streamlit run app.py --server.address=0.0.0.0 --server.port=8501

访问应用

http://localhost:8501

演示

公开KEY:sk-zKTGcw8llBFZLpXAAsxTmMSmCfY8DNfe

API配置

应用支持任意兼容的AI图像生成API:

支持的API格式

  • 请求方式: POST
  • 认证方式: Bearer Token
  • 请求格式: {"prompt": "...", "seed": ...}
  • 响应格式: {"base64": "..."}

配置说明

  1. API URL: 完整的API接口地址(如:https://api.example.com/v1/generate
  2. API Key: 您的API密钥
  3. 种子设置: 支持随机种子或固定种子复现结果

兼容的服务

  • OpenAI DALL-E API
  • Stable Diffusion API
  • 自建AI图像服务
  • 任何支持标准格式的图像生成API

配置选项

环境变量(可选)

# Streamlit配置
STREAMLIT_SERVER_ADDRESS=0.0.0.0
STREAMLIT_SERVER_PORT=8501
STREAMLIT_SERVER_HEADLESS=true

# 时区设置
TZ=Asia/Shanghai

自定义配置

  • 画廊列数: 1-4列可调
  • API超时: 默认60秒
  • 图片格式: PNG格式输出
  • 文件命名: 时间戳自动命名

贡献指南

  1. Fork 本项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request