一个现代化的AI图像生成Web应用,支持多个AI平台,提供实时图像生成、下载和管理功能。
部署到腾讯云 EdgeOne Pages。
克隆项目
git clone <repository-url>
cd generate-graph
安装依赖
npm install
# 或
yarn install
配置环境变量
创建 .env 文件并添加以下配置(可以不完全添加):
# Hugging Face API Token HF_TOKEN=your_huggingface_token_here # Nebius API Token NEBIUS_TOKEN=your_nebius_token_here # Replicate API Token REPLICATE_TOKEN=your_replicate_token_here # OPENAI API Key OPENAI_API_KEY=your_openai_api_key_here # FAL API Key FAL_KEY=your_fal_key_here
EdgeOne Pages 部署控制台环境变量配置同上述 .env 文件保持一致。
启动开发服务器
npm run dev
# 或
yarn dev
访问应用 打开浏览器访问 http://localhost:3000
HF_TOKEN 环境变量NEBIUS_TOKEN 环境变量REPLICATE_TOKEN 环境变量应用会自动检查各平台令牌的可用性,并在界面上显示状态:
选择模型
输入提示词
生成图像
下载图像
端点: POST /v1/generate
请求体:
{
"image": "图像描述文本",
"platform": "huggingface",
"model": "模型标识符"
}
响应:
{
"success": true,
"prompt": "原始提示词",
"imageData": "base64编码的图像数据或URL",
"message": "生成成功消息"
}
端点: GET /v1/token-status
响应:
{
"hfToken": true,
"nebiusToken": true,
"replicateToken": false
}
所有API接口都包含统一的错误处理:
400 - 请求参数错误或内容违规429 - 请求频率超限500 - 服务器内部错误generate-graph/ ├── functions/ # EdgeOne函数 │ ├── v1/ │ │ ├── generate/ # 图像生成API │ │ │ ├── index.js # 主处理逻辑 │ │ │ ├── fetch_utils.js # API调用工具 │ │ │ └── nfsw_limit.js # 内容过滤 │ │ └── token-status/ # 令牌状态API │ └── helloworld/ # 示例函数 ├── src/ │ ├── components/ # React组件 │ │ ├── ImageDisplay.tsx # 图像显示组件 │ │ └── ModelDropdown.tsx # 模型选择组件 │ ├── pages/ # Next.js页面 │ │ ├── _app.tsx # 应用入口 │ │ ├── _document.tsx # 文档配置 │ │ └── index.tsx # 主页面 │ └── styles/ # 样式文件 │ └── globals.css # 全局样式 ├── public/ # 静态资源 ├── package.json # 项目配置 ├── next.config.ts # Next.js配置 ├── tailwind.config.js # Tailwind配置 └── README.md # 项目文档