TL;DR
你完全可以利用AI绘画(如Stable Diffusion)和免费API(如Unsplash、Pexels)搭建一个私有图片素材库,从此不再花钱买图,还能自由生成符合需求的免版权图片,适合自媒体配图、电商主图等场景。
前置条件
- 账号:GitHub账号(用于部署)、Hugging Face或Replicate账号(获取AI模型API)
- 环境:Node.js 16+、Git、一个云服务器或Vercel/Netlify免费账户
- 成本:API调用免费额度(如Replicate每月$5免费额度),图片存储可先用本地或免费对象存储(如Cloudflare R2)
- 时间:约2小时完成搭建
分步操作
1. 注册并获取免费API密钥
- 访问 Unsplash Developers 注册应用,获取Access Key(用于搜索免费高清图片)。
- 访问 Replicate 注册,获取API Token(用于调用Stable Diffusion生成图片)。
- 记录下这两个密钥,后续配置需要。
2. 搭建基础图片库前端
- 在本地创建项目文件夹,初始化Node.js项目:
mkdir my-image-library
cd my-image-library
npm init -y
- 安装依赖:
npm install express axios dotenv
- 创建
index.html作为前端页面,包含搜索框、图片展示网格、上传按钮。
📸 此处需要补充截图:前端页面
3. 实现搜索与AI生成功能
- 创建
server.js,使用Express搭建后端,配置路由:
/search:调用Unsplash API搜索图片 - /generate:调用Replicate的Stable Diffusion生成图片
- 设置环境变量(
.env文件):
UNSPLASH_ACCESS_KEY=你的Key
REPLICATE_API_TOKEN=你的Token
- 编写搜索函数:
const response = await axios.get(class="code-number">039;https://api.unsplash.com/search/photosclass="code-number">039;, {
params: { query: keyword, per_page: class="code-number">20 },
headers: { Authorization: `Client-ID ${process.env.UNSPLASH_ACCESS_KEY}` }
});
- 编写生成函数:
const response = await axios.post(class="code-number">039;https://api.replicate.com/v1/predictionsclass="code-number">039;, {
version: class="code-number">039;stability-ai/stable-diffusion:db21e45d3f7023abc2a46ee38a23973f6dce16bb082a930b0c49861f96d1e5bfclass="code-number">039;,
input: { prompt: keyword }
}, {
headers: { Authorization: `Token ${process.env.REPLICATE_API_TOKEN}` }
});
4. 集成图片存储与管理
- 添加收藏功能:将用户喜欢的图片URL保存到本地JSON文件或数据库(如SQLite)。
- 实现分类标签(如“自然”、“科技”、“人物”),方便检索。
- 部署到Vercel:连接GitHub仓库,配置环境变量,自动部署。
5. 测试与优化
- 在搜索框输入“sunset”,测试能否返回Unsplash图片。
- 输入“a cat wearing a hat, digital art”,测试AI生成。
- 调整生成参数(如尺寸、负面提示词)以获得更好效果。
- 添加加载动画和错误提示,提升用户体验。
常见问题FAQ
Q1:这些图片真的免费商用吗? A:Unsplash图片遵循Unsplash License,允许商业使用;通过Stable Diffusion生成的图片版权归属用户,但需注意避免生成侵权内容。建议保留生成记录。
Q2:API免费额度够用吗? A:Unsplash每小时50次请求,Replicate每月$5免费额度(约可生成500张图片)。对于个人自媒体或小团队完全足够。
Q3:不会编程能搭建吗? A:本教程需要基础编程知识。如果完全零基础,可以使用现成工具如“DALL·E 3”+“Notion”组合,但灵活性较低。
Q4:生成的图片质量如何? A:Stable Diffusion质量取决于提示词,通过优化prompt可达到商用级。建议参考提示词工程教程。
下一步行动
- 优化提示词模板,批量生成特定风格图片。
- 添加图片编辑功能(裁剪、加水印)。
- 分享你的素材库给团队使用。