4.6 KiB
团队成员与贡献
| 姓名 | 学号 | 主要贡献 |
|---|---|---|
| 王斌 | 2411020213 | (组长) Prompt 工程优化及最终项目汇报 |
| 翟宇轩 | 2411020215 | 后端架构设计 |
| 吴磊 | 2411020211 | 项目的整理,检查和编写 |
项目简介
本项目旨在打造一个零门槛、开箱即用的 AI 文生图创作平台,让每个人都能轻松实现纯文本创作专业级 AI 画作。 简单的一段文本就能轻松生成一幅画,让那些曾只存于想象或他人笔下的画面以图像的形式浮现眼前,或许会别有一番风味?
核心功能
- 🎨 智能 Prompt 生成:基于中文描述自动优化为专业英文提示词(PydanticAI 驱动结构化生成)
- 🖼️ 多风格支持:写实、动漫、油画、水彩等 10+ 预设风格
- ⚡ 实时生成:调用云端 API,无需本地显卡,秒级出图
- 💾 历史记录:自动保存生成历史,支持下载与对比
- 🎛️ 参数调优:图像尺寸、采样步数、引导系数自定义
如何运行
环境要求
- Python 3.9+
- 互联网连接(用于调用 API)
快速开始
1. 克隆仓库
git clone http://hblu.top:3000/Python2025-CourseDesign/Group-manga_generate.git
cd manga_generate
2. 安装依赖
使用 uv
uv sync
3. 配置 API Key
在程序主页配置
4. 启动应用
uv run python3 backend/app.py
打开另一个终端
uv run streamlit run frontend/main.py
浏览器自动打开 http://localhost:8501
5. 开始体验
万事俱备后,便可输入相应的信息与需要生成图像的文本,最后点击生成后便可获取相应的图像了。
开发心得
在生活中,我们常常遇到这样一个问题:有些想法的实现需要大量的技术,可大多数人往往不具备这个技术要求。所以这些想法的结果往往都是被人淡忘,直到AI的出现,这些
想法的实现开始有了转机,这也是我们做这个项目的契机之一。
文本往往不是易于理解和感受的,即使是大作家的文章也需要读者逐字逐句地细细品鉴,相比较而言,图片总是更加直观且便于理解的。若是能将枯燥的文本以另外一种方式展示
给用户,岂不是大大增加了文本的可读性?可我们并未掌握实现这一目标的全部技术,但是AI具有这个能力啊,因此,为了实现这一目标,我们小组开始行动起来。
我们首先和AI表达了我们的基本需求,而AI确实生成了一个相对应的界面,可是无法生成想要的图片、各式各样的报错以及界面杂乱不具备观赏性等等问题层出不穷。于是我们
将报错的信息告诉AI,这个问题可能确实修复了,又出现了另外一个问题,甚至这种情况多发生在AI表示已经理解了我们的需求之后,如此循环往复的过程耗费了大量的时间和
精力,也大大打击了我们的信心,甚至做到后面有一个不错的结果都没有太强的成就感。
在不断报错然后debug的过程中,我们也明白了一个道理:做出来只是第一步,而优化成预想的模样总是任重而道远。同时,我们也不得不感叹AI的强大之处:让“普通人”借助它
的能力跨越技术的阻隔来实现所设想的目标。此外,在不断协作开发的过程中,也感叹,多角度思考对解决问题确实大有裨益。
项目结构
manga_generate/
├── backend/ # 后端代码目录
│ ├── agent.py # 代理/AI逻辑实现
│ ├── app.py # 后端 API 服务入口
│ └── utils.py # 通用工具函数
├── frontend/ # 前端代码目录
│ └── main.py # Streamlit 前端主程序入口
├── data/ # 数据存储
│ └── history.json # 历史记录数据
├── images/ # 图片资源目录
│ ├── background.png # 背景图片
│ └── ... # 其他图片资源
├── .venv/ # Python 虚拟环境
├── backend.log # 后端运行日志
├── main.py # 根目录入口脚本
├── pyproject.toml # 项目配置与依赖管理
├── uv.lock # 依赖锁定文件
├── LICENSE # 开源许可证
└── README.md # 项目说明文档