用途
fal 技能用于调用 Fal.ai API 完成 AI 图像与视频生成。当用户提到「Fal.ai」「AI 图像生成」「视频生成」或 fal 模型时,可使用该技能。
主要能力
- 通过 HTTP POST 请求调用 Fal.ai 的模型端点生成图像。
- 支持多个模型:nano-banana-2(快速、质量好,推荐)、flux/schnell(快速生成)、flux-pro(高质量)、recraft-v3(高质量矢量/插画)。更多模型见 https://fal.ai/models。
- 支持自定义图像尺寸,如 square、square_hd、portrait_4_3、portrait_16_9、landscape_4_3、landscape_16_9。
- 支持从命令行 echo 或文件读取提示词,并做 JSON 转义后作为请求体。
- 支持将生成结果的图片 URL 直接下载到本地文件。
使用方式
所有调用均使用 curl 向 https://fal.run/ 下的模型端点发送 POST 请求,请求头包含 Authorization: Key $FAL_TOKEN 与 Content-Type: application/json,请求体为 JSON 文件。
- 生成图像(nano-banana-2,快速):
写入 /tmp/fal_request.json:
{
"prompt": "A futuristic city at sunset, cyberpunk style"
}
然后运行:
curl -s -X POST "https://fal.run/fal-ai/nano-banana-2" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
- 生成图像(flux/schnell,快速):
写入 /tmp/fal_request.json:
{
"prompt": "A cute cat eating a cookie"
}
然后运行:
curl -s -X POST "https://fal.run/fal-ai/flux/schnell" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
- 生成图像(recraft-v3,高质量):
写入 /tmp/fal_request.json:
{
"prompt": "Abstract art, vibrant colors"
}
然后运行:
curl -s -X POST "https://fal.run/fal-ai/recraft-v3" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
- 使用自定义尺寸生成:
写入 /tmp/fal_request.json:
{
"prompt": "Mountain landscape",
"image_size": "landscape_16_9"
}
然后运行:
curl -s -X POST "https://fal.run/fal-ai/nano-banana-2" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
- 下载生成的图像:
写入 /tmp/fal_request.json:
{
"prompt": "A minimalist workspace"
}
然后运行:
curl -s -X POST "https://fal.run/fal-ai/nano-banana-2" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url' | xargs curl -sL -o /tmp/image.png
- 从 echo 管道传入提示词(JSON 转义):
echo "A dragon breathing fire, epic fantasy art" | jq -Rs '{prompt: .}' > /tmp/fal_request.json
curl -s -X POST "https://fal.run/fal-ai/nano-banana-2" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
- 从文件管道传入提示词(JSON 转义):
cat /tmp/prompt.txt | jq -Rs '{prompt: .}' > /tmp/fal_request.json
curl -s -X POST "https://fal.run/fal-ai/nano-banana-2" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
- 管道传入并附加参数:
echo "Neon city at night" | jq -Rs '{prompt: ., image_size: "landscape_16_9"}' > /tmp/fal_request.json
curl -s -X POST "https://fal.run/fal-ai/nano-banana-2" --header "Authorization: Key $FAL_TOKEN" --header "Content-Type: application/json" -d @/tmp/fal_request.json | jq -r '.images[0].url'
可用模型
| 模型 | 说明 |
|---|---|
| nano-banana-2 | 快速、质量好(推荐) |
| flux/schnell | 快速生成 |
| flux-pro | 高质量 |
| recraft-v3 | 高质量矢量/插画 |
更多模型见:https://fal.ai/models
图像尺寸
| 尺寸 | 宽高比 |
|---|---|
| square | 1:1 |
| square_hd | 1:1(高分辨率) |
| portrait_4_3 | 4:3 |
| portrait_16_9 | 16:9 |
| landscape_4_3 | 3:4 |
| landscape_16_9 | 9:16 |
提示词建议
为获得最佳效果:
- 具体描述——清晰描述主体。
- 添加风格提示——如「modern」「minimalist」「photorealistic」「digital art」「cinematic」。
- 指定颜色/氛围——如「blue and purple gradient」「warm tones」「dark and moody」。
- 保持简洁——清晰聚焦的描述效果更好。
故障排查
如果请求失败,运行:
zero doctor check-connector --env-name FAL_TOKEN
或:
zero doctor check-connector --url https://fal.run/fal-ai/nano-banana-2 --method POST
限制
资料未提供视频生成的具体调用示例、价格、速率限制或平台支持范围等信息。