Pollinations.AI 开发指南
1. Pollinations.AI 开发指南
Pollinations.AI 是总部位于柏林的开源生成 AI 初创公司,提供免费、无需注册和 API 密钥的文本与图像生成接口。本文覆盖 API 使用指南、生图智能体配置、自托管部署与运维优化。
1.1. 简介与核心功能
1.1.1. 什么是 Pollinations.AI
Pollinations.AI 是一家总部位于柏林的开源生成 AI 初创公司,提供最易于使用的免费文本和图像生成 API,无需注册或 API 密钥。保障用户隐私,零数据存储和完全匿名使用。

1.1.2. 主要特点
- 🔓 100% 开源
- 🆓 免费使用
- 🔒 简单和隐私:无需登录,无需密钥,无数据存储
- 🖼️ 像普通图像或文本一样嵌入
- 🌍 超过 50,000 名活跃用户,每月生成超过 2000 万张图像
- 🤝 被各种开源 LLM、机器人和社区使用
- 🎣 易于使用的 React Hooks
- 🤖 自主开发:通过 GitHub 问题,由 MentatBot 编码助手实现的功能
graph LR
Q[Bots - Discord, Telegram, WhatsApp] --> L1
N[30+ Mobile and Web Apps] --> L1
N --> L2
A[pollinations.ai Web Frontend] --> L1
A --> L2
R[AI Agents - Qwen, Sillytavern, ...] --> L1
L1[Image CDN] --> B
L2[Text CDN] --> C
B[image.pollinations.ai - AWS EC2 CPU] --> F[Azure OpenAI - Prompt Enhancing]
B --> S[LlamaGuard - Safety Checker]
B --> M[llmplayground.net - Custom FLUX models]
F --> E[Translation Service - 1 GPU VM]
E --> D[FLUX image generation model - 2-6 GPU VMs on AWS]
C[text.pollinations.ai - AWS EC2 CPU] --> P[karma.yt - Realtime News]
C --> SC[Scaleway API]
C --> DS[Deepseek API]
C --> G[Azure-hosted Serverless LLMs]
C --> CF[Cloudflare AI]
SC --> MI[Mistral Models]
SC --> QW[Qwen Models]
SC --> LL[Llama Models]
DS --> DM[Deepseek Models]
G --> H[OpenAI]
G --> K[Claude]
CF --> CFM[Llama & Deepseek Models]
1.1.3. 核心功能矩阵
| 功能模块 | 支持方式 | 特色说明 |
|---|---|---|
| 图像生成 | 网页/API/SDK | 支持 20+ 艺术风格,最高 8K 分辨率 |
| 文本生成 | 网页/API/CLI | 多语言支持,上下文理解能力 |
| 开发者工具 | React Hooks/CLI | 一键集成到 Web 应用 |
| 部署方案 | Serverless/本地 | 支持 Docker 容器化部署 |
1.2. 系统要求
- 硬件:支持 GPU 加速(推荐 NVIDIA RTX 系列)
- 软件:
- Python 3.8+
- Node.js 16+
- Docker(可选)
1.3. 开发环境搭建
1.3.1. 本地开发准备
- 克隆仓库
git clone https://github.com/pollinations/pollinations.git
cd pollinations
- 安装依赖
# Python环境
python -m pip install -r requirements.txt
# Node.js环境
npm install --prefix pollinations-react
1.3.2. 启动服务
# 启动图像生成服务
python -m image_pollinations_ai
# 启动文本生成服务
python -m text_pollinations_ai
# 启动前端应用
npm run dev --prefix pollinations.ai
1.4. API 使用指南
1.4.1. 图像生成 API
基础 API 调用格式:
GET https://image.pollinations.ai/prompt/{prompt}
1.4.2. API 响应格式
{
"status": "success",
"data": {
"image_url": "https://image.pollinations.ai/output/xxx.jpg",
"generation_id": "gen_abc123",
"model_used": "flux-pro",
"processing_time": 2.5,
"prompt_enhanced": "detailed beautiful sunset over ocean"
},
"meta": {
"credits_used": 1,
"credits_remaining": 999
}
}
1.4.3. 错误响应示例
{
"status": "error",
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "请求频率超过限制",
"details": {
"retry_after": 60,
"limit": "50/minute"
}
}
}
1.4.4. 参数说明
prompt(必填):您想要生成的图像的文本描述。应该进行 URL 编码。model:用于生成的模型。可选值包括:flux(默认模型)flux-pro(加强效果)flux-realism(写实风格)flux-anime(动漫风格)flux-3d(3D 风格)flux-cablyaiturbo(快速生成)
width:生成图像的宽度。默认值:1024height:生成图像的高度。默认值:1024seed:用于生成可重复结果的种子值nologo:设置为 ‘true’ 来关闭右下角的网站 logo。默认值:falseprivate:设置为 ‘true’ 以防止图像出现在公共信息流中。默认值:falseenhance:设置为 ‘true’ 以启用提示增强。默认值:falsesafe:设置为 ‘true’ 以启用严格的 NSFW 内容过滤。默认值:false
1.4.5. 实际应用示例
HTML 嵌入示例:
<img
src="https://image.pollinations.ai/prompt/A%20beautiful%20sunset?width=1280&height=720&seed=123&enhance=true&private=true&nologo=true&safe=true&model=flux-realism"
alt="Beautiful sunset"
/>
1.5. 图像生成 API 参数速查
通过 URL 传递提示词并附加参数调整生成结果:
https://image.pollinations.ai/prompt/{prompt}?width={宽度}&height={高度}&seed={随机种子}&model={模型名称}&nologo={是否去水印}&safe={是否安全模式}
1.5.1. 参数说明
| 参数名 | 说明 | 示例值 |
|---|---|---|
| width | 图片宽度(像素) | 1024 |
| height | 图片高度(像素) | 768 |
| seed | 随机种子(0-9999) | 42 |
| model | 指定生成模型 | flux |
| nologo | 去除水印(true/false) | true |
| safe | 安全模式(true/false) | false |
| enhance | 增强细节(需特定模型) | true |
| private | 生成私有版权图片 | true |
1.6. 文本生成 API
1.6.1. URL 调用
https://text.pollinations.ai/{prompt}
1.6.2. OpenAI 兼容格式
请求地址:
https://text.pollinations.ai/openai/
请求体示例:
{
"messages": [
{"role": "user", "content": "你的提示词"}
],
"model": "text-davinci-003"
}
1.7. 音频生成 API
https://text.pollinations.ai/{prompt}?model=openai-audio&voice={声音名称}
1.7.1. 声音预设
alicebob- 其他预设声音…
1.8. 模型列表 API
GET https://text.pollinations.ai/models
返回示例:
[
{
"name": "claude-hybridspace",
"type": "text",
"description": "混合空间文本模型"
}
]
1.9. 高级调用方式
1.9.1. 结构化提示词生成
示例 Markdown 图片调用:

提示词要素建议包含:
- 场景描述
- 风格形容词
- 角色特征
1.10. 注意事项
- 🚫 无需 API 密钥
- 🔗 URL 参数需要编码(如空格转为
%20) - 🔄 模型名称兼容性(例:
claude-hybridspace→claude hybridspace) - ⚠️ 安全模式会过滤敏感内容
- 📄 完整文档请参考官方 GitHub 仓库
1.11. 生图智能体
Pollinations.AI 提供的 API 支持多种调用方式,而且出图比较稳定,使用 HTML (Image Embedding) 方式,将其做成 Cherry Studio 的智能体。
将下面这段内容填入到 提示词 部分:
#角色:你是一个图像生成助手
#作者:dandan
#时间:2025.03.03
#版本:v1
#技能:能根据用户输入的简单描述,想象并详细描述出一幅完整的画面。
#规则:
1.用户输入的简单描述,插入到【输出】的{user_prompt}部分
2.将详细描述插入到【输出】的{ai_chinese_prompt}部分
3.将详细描述翻译成英文,插入到【输出】的{ai_english_prompt}部分
4.如果用户的描述中包含高度信息,直接插入到【输出】的{width}部分,否则插入默认值 1280
5.如果用户的描述中包含宽度信息,直接插入到【输出】的{height}部分,否则插入默认值 1280
6.如果出现比例,指宽:高,宽度默认用1280,根据比例计算高度,插入到【输出】的{height}部分
7.随机生成一个整数,插入到【输出】的{seed}部分
8.根据用户对画面风格的描述,选择对应的模型。如果用户没有描述,从下面 7 个模型中随机选一个模型,插入到【输出】的{model}部分
- `flux`(默认模型)
- `flux-pro`(加强效果)
- `flux-realism`(写实风格)
- `flux-anime`(动漫风格)
- `flux-3d`(3D 风格)
- `flux-cablyai`(未知)
- `turbo`(快速生成)
9.不需将{ai_english_prompt}显示出来。
# 2- 图像输出:

# 3- html输出:
<html>
<title>Image Generator</title>
<body>
<h2>{ai_chinese_prompt}</h2>
<img
src="https://image.pollinations.ai/prompt/{ai_english_prompt}?width={width}&height={height}&seed={seed}&enhance=true&private=true&nologo=true&safe=true&model={model}"
alt="{user_prompt}"
/>
</body>
</html>
说明:这段提示词的作用,就是将用户的描述,生成一段详细的画面描述,然后翻译成英文,同时提取用户描述中其他可用信息,一起来生成一个图片的地址。
注意:有时候会加载不出来,可能是超时的原因,可以点击重新生成。
1.12. 高级功能开发
1.12.1. 自定义生成参数
# Python SDK高级用法示例
from pollinations import ImageGenerator
generator = ImageGenerator(
model='stable-diffusion-xl',
width=2560,
height=1440,
num_inference_steps=50,
guidance_scale=7.5
)
image = generator.generate("Cyberpunk cityscape with neon lights")
image.save("output.jpg")
1.13. 模型管理
# 列出可用模型
pollinations models list
# 切换默认模型
pollinations config set default_model flux
1.14. 生产环境部署
1.14.1. Docker 部署方案
FROM python:3.9-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "-m", "image_pollinations_ai"]
1.14.2. Kubernetes 配置示例
apiVersion: apps/v1
kind: Deployment
metadata:
name: pollinations-image
spec:
replicas: 3
selector:
matchLabels:
app: pollinations-image
template:
metadata:
labels:
app: pollinations-image
spec:
containers:
- name: pollinations-image
image: pollinationsai/image-generator:latest
resources:
limits:
nvidia.com/gpu: 1
1.15. 性能优化指南
1.15.1. 硬件加速配置
# 启用CUDA加速并指定GPU设备
export CUDA_VISIBLE_DEVICES=0,1 # 使用多GPU
export CUDA_MEMORY_FRACTION=0.8 # 限制GPU内存使用
# 配置TensorRT优化
python -m pollinations optimize \
--model stable-diffusion-xl \
--precision fp16 \
--batch-size 4 \
--workspace-size 4096 # 4GB workspace
# 启用CPU多线程优化
export OMP_NUM_THREADS=8 # OpenMP线程数
export MKL_NUM_THREADS=8 # Intel MKL线程数
性能参数调优建议:
| 参数 | 说明 | 推荐值 | 影响 |
|---|---|---|---|
| batch_size | 批处理大小 | 2-8 | 内存占用↑,吞吐量↑ |
| num_workers | 数据加载线程数 | CPU 核心数/2 | IO 性能↑ |
| precision | 计算精度 | fp16/bf16 | 内存占用↓,速度↑ |
| cache_size | 缓存大小 | 可用内存的 30% | 响应速度↑ |
1.15.2. 监控指标阈值
- GPU 利用率 > 80%
- GPU 内存使用率 < 90%
- 平均响应时间 < 2s
- 错误率 < 0.1%
1.15.3. 缓存策略
# 启用本地缓存
generator = ImageGenerator(cache_dir="/mnt/ssd/cache")
# 设置缓存有效期
generator.set_cache_ttl(3600) # 1小时
1.16. 监控与日志
1.16.1. Prometheus 指标
scrape_configs:
- job_name: 'pollinations'
static_configs:
- targets: ['localhost:9090']
1.16.2. 日志配置
# 配置结构化日志
import logging
from pollinations.logging import configure_logging
configure_logging(
level=logging.INFO,
format='%(asctime)s %(levelname)s %(message)s',
file='pollinations.log'
)
1.17. 安全指南
1.17.1. 输入验证
from pollinations.security import validate_prompt
try:
validate_prompt(prompt, max_length=200, allowed_keywords=['AI', 'art'])
except ValidationError as e:
handle_error(e)
1.17.2. 速率限制
# 配置API速率限制(50次/分钟)
pollinations config set rate_limit 50
1.18. 版本管理
1.18.1. 语义化版本说明
MAJOR.MINOR.PATCH
例如:2.1.3
- MAJOR:重大架构变更
- MINOR:新增功能
- PATCH:修复 bug
1.18.2. 版本升级
# 升级到最新版本
pip install --upgrade pollinations-sdk
# 升级到指定版本
npm install @pollinations/[email protected]
1.19. 贡献指南
1.19.1. 代码提交规范
feat(image): 添加超分辨率生成功能
fix(text): 修复多语言生成异常
docs: 更新API文档
1.19.2. 测试流程
# 运行单元测试
python -m pytest tests/unit
# 运行集成测试
python -m pytest tests/integration
1.20. 附录 A:错误码参考
| 错误码 | 描述 | 解决方案 |
|---|---|---|
| 422 | 无效请求 | 检查输入参数格式 |
| 429 | 请求过多 | 降低请求频率 |
| 503 | 服务不可用 | 检查服务状态 |
1.21. 附录 B:艺术风格列表
| 风格名称 | 示例描述 |
|---|---|
| oil_painting | 古典油画风格 |
| digital_art | 数字艺术风格 |
| hyperrealism | 超写实风格 |
| abstract | 抽象风格 |
(注:实际风格列表可通过 pollinations styles list 命令获取最新信息)