con un clic
gpt-image2
基于 GPT Image2 模型生成图片。支持纯文本描述生成图片,或基于参考图片进行图片生成。自动下载并保存生成的图片到当前目录。
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
基于 GPT Image2 模型生成图片。支持纯文本描述生成图片,或基于参考图片进行图片生成。自动下载并保存生成的图片到当前目录。
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
| name | gpt-image2 |
| description | 基于 GPT Image2 模型生成图片。支持纯文本描述生成图片,或基于参考图片进行图片生成。自动下载并保存生成的图片到当前目录。 |
| license | MIT |
| metadata | {"author":"mozhenghua","version":"1.0"} |
此命令基于 VectorEngine API 的 gpt-image-2:stable 模型,支持两种方式生成图片:
/gpt-image2 <图片描述>
示例:
/gpt-image2 一只可爱的橙色小猫坐在窗台上看风景
/gpt-image2 A futuristic city skyline at sunset with neon lights
/gpt-image2 image:/path/to/image.png <图片描述>
示例:
/gpt-image2 image:/Users/mozhenghua/photo.jpg 将这张照片转换为水彩画风格
/gpt-image2 image:./reference.png 保持构图,改成卡通风格
调用 VectorEngine API 的 GPT Image2 模型,支持:
生成的图片自动下载保存到当前目录。
用户需求接收格式:$ARGUMENTS
从用户输入中提取以下参数:
image:/path/to/image.pnggpt-image-2:stable1024x10241支持的尺寸选项:
1024x1024(正方形,默认)512x512(小正方形)1024x768(横版)768x1024(竖版)从 $ARGUMENTS 中提取参数:
image:/path/to/file 格式的参考图片路径model:xxx、size:xxx 或 n:xxx,则解析相应参数示例解析:
一只小猫 → image=null, prompt="一只小猫", model="gpt-image-2:stable", size="1024x1024", n=1size:512x512 一只小猫 → image=null, prompt="一只小猫", size="512x512"image:/tmp/cat.jpg 改成水彩风格 → image="/tmp/cat.jpg", prompt="改成水彩风格"n:2 一只小猫 → image=null, prompt="一只小猫", n=2如果用户提供了参考图片路径:
# 检查文件是否存在
if [ ! -f "/path/to/image.png" ]; then
echo "错误:图片文件不存在"
exit 1
fi
# 获取图片格式
image_ext="${image_path##*.}"
image_format=$(echo "$image_ext" | tr '[:upper:]' '[:lower:]')
# 映射文件扩展名到 MIME 类型
case "$image_format" in
jpg) mime_type="jpeg" ;;
jpeg) mime_type="jpeg" ;;
png) mime_type="png" ;;
webp) mime_type="webp" ;;
*) mime_type="jpeg" ;;
esac
# 使用 base64 编码图片(macOS)
image_base64=$(base64 -i "/path/to/image.png")
# 构造 data URI 格式
image_data_uri="data:image/${mime_type};base64,${image_base64}"
重要说明:
base64 命令对图片进行编码base64 -i <file>,Linux 使用 base64 -w 0 <file>data:image/[format];base64,[base64数据] 格式编码使用 Bash 工具执行 curl 命令调用 API:
curl -s -X POST "https://api.vectorengine.ai/v1/images/generations" \
-H "Authorization: Bearer $GPT_IMAGE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "<model>",
"prompt": "<prompt>",
"size": "<size>",
"n": <n>,
"format": "png"
}'
当提供参考图片时,使用 edits endpoint:
curl -s -X POST "https://api.vectorengine.ai/v1/images/edits" \
-H "Authorization: Bearer $GPT_IMAGE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "<model>",
"prompt": "<prompt>",
"image": "<image_data_uri>",
"n": "<n>",
"size": "<size>",
"quality": "auto",
"background": "auto",
"moderation": "auto"
}'
重要说明:
data:image/[format];base64,[base64数据]$GPT_IMAGE_TOKEN 作为 Bearer tokenJSON 构造技巧: 由于 prompt 和 base64 数据可能包含特殊字符,建议使用 jq 工具构造 JSON(如果可用):
# 纯文本生成(使用 jq)
curl --max-time 600 -s -X POST "https://api.vectorengine.ai/v1/images/generations" \
-H "Authorization: Bearer $GPT_IMAGE_TOKEN" \
-H "Content-Type: application/json" \
-d "$(jq -n \
--arg model "$model" \
--arg prompt "$prompt" \
--arg size "$size" \
--argjson n "$n" \
'{model: $model, prompt: $prompt, size: $size, n: $n, format: "png"}')"
# 图生图(使用 jq)
curl --max-time 600 -s -X POST "https://api.vectorengine.ai/v1/images/edits" \
-H "Authorization: Bearer $GPT_IMAGE_TOKEN" \
-H "Content-Type: application/json" \
-d "$(jq -n \
--arg model "$model" \
--arg prompt "$prompt" \
--arg image "$image_data_uri" \
--arg size "$size" \
--argjson n "$n" \
'{model: $model, prompt: $prompt, image: $image, n: $n, size: $size, quality: "auto", background: "auto", moderation: "auto"}')"
如果没有 jq,需要手动转义特殊字符(引号、换行符等)。
API 可能返回两种格式的响应:
data[].url - 图片的临时下载链接data[].b64_json - Base64 编码的图片数据需要同时支持这两种格式。
示例响应结构:
URL 格式响应:
{
"created": 1234567890,
"data": [
{
"url": "https://example.com/image1.png"
}
]
}
Base64 格式响应:
{
"created": 1234567890,
"data": [
{
"b64_json": "iVBORw0KGgoAAAANS..."
}
]
}
使用以下逻辑处理两种响应格式:
counter=1
# 检查响应中是否包含 url 字段
if echo "$response" | jq -e '.data[0].url' > /dev/null 2>&1; then
# URL 格式:下载图片
image_urls=$(echo "$response" | jq -r '.data[].url')
for url in $image_urls; do
if [ $n -eq 1 ]; then
filename="generated_$(date +%Y%m%d_%H%M%S).png"
else
filename="generated_$(date +%Y%m%d_%H%M%S)_${counter}.png"
fi
curl -s -o "$filename" "$url"
echo "已保存:$filename"
counter=$((counter + 1))
done
elif echo "$response" | jq -e '.data[0].b64_json' > /dev/null 2>&1; then
# Base64 格式:解码并保存
echo "$response" | jq -r '.data[].b64_json' | while read -r b64_data; do
if [ $n -eq 1 ]; then
filename="generated_$(date +%Y%m%d_%H%M%S).png"
else
filename="generated_$(date +%Y%m%d_%H%M%S)_${counter}.png"
fi
# 解码 base64 数据并保存
echo "$b64_data" | base64 -d > "$filename"
echo "已保存:$filename"
counter=$((counter + 1))
done
else
echo "错误:无法从响应中提取图片数据"
echo "原始响应:"
echo "$response"
exit 1
fi
说明:
base64 -d 解码 Base64 数据并保存为文件文件命名格式:
generated_YYYYMMDD_HHMMSS.pnggenerated_YYYYMMDD_HHMMSS_1.png, generated_YYYYMMDD_HHMMSS_2.png, ...输出信息应包含:
示例输出(纯文本生成):
✓ 图片生成成功!
文件路径:/path/to/generated_20260626_143025.png
模型:gpt-image-2:stable
尺寸:1024x1024
数量:1
描述:A futuristic city skyline at sunset with neon lights
示例输出(图生图,多张):
✓ 图片生成成功!
文件路径:
1. /path/to/generated_20260626_143025_1.png
2. /path/to/generated_20260626_143025_2.png
模型:gpt-image-2:stable
尺寸:1024x1024
数量:2
参考图片:/tmp/cat.jpg
描述:改成水彩风格
处理以下可能的错误情况:
环境变量未设置
$GPT_IMAGE_TOKEN 是否存在参考图片文件不存在
图片文件格式不支持
图片文件过大
API 调用失败
JSON 解析失败
图片下载失败
特殊字符转义问题
Prompt 编写建议
参考图片选择
尺寸选择
批量生成
n:2 或更大值一次生成多张变体文件管理
curl -s 静默模式避免进度输出-o 参数保存文件,而不是重定向curl:HTTP 请求工具(系统自带)date:时间戳生成(系统自带)base64:图片 Base64 编码(系统自带)jq(强烈推荐):JSON 解析和构造工具
brew install jq(macOS)或包管理器安装$GPT_IMAGE_TOKEN 环境变量格式正确:sk-YOUR_TOKEN在使用前,需要设置 API token:
# 临时设置(当前会话)
export GPT_IMAGE_TOKEN="sk-YOUR_TOKEN"
# 永久设置(添加到 ~/.bashrc 或 ~/.zshrc)
echo 'export GPT_IMAGE_TOKEN="sk-YOUR_TOKEN"' >> ~/.bashrc
source ~/.bashrc
https://api.vectorengine.ai/v1/images/generations/v1/images/edits| 特性 | text-2-image (Qwen) | gpt-image2 (GPT) |
|---|---|---|
| API 提供商 | 阿里云 Token Plan | VectorEngine |
| 模型 | qwen-image-2.0 | gpt-image-2:stable |
| 尺寸格式 | 1024*1024 | 1024x1024 |
| 批量生成 | 不支持 | 支持(n 参数) |
| 图片输入格式 | 纯 base64 | data URI 格式 |
| API 风格 | 自定义 | OpenAI 兼容 |
| 环境变量 | QWEN_AUTH_TOKEN | GPT_IMAGE_TOKEN |
$GPT_IMAGE_TOKEN 是否正确设置sk-YOUR_TOKEN