mcpField
F
fal-text-to-image

fal-text-to-image

github.com/delorenj创意与媒体18184 次安装今天更新
代码仓库

关于 fal-text-to-image

fal-text-to-image 是一组基于 fal.ai 的图像生成与编辑技能,面向需要从文本生成图像、转换现有图片或局部修图的创作者。它通过多个模型与命令行工具支持生成、风格重混、遮罩编辑和参考图风格迁移。

主要功能

  1. 01根据文本提示生成图像
  2. 02重混现有图像并调整转换强度
  3. 03使用遮罩进行局部修图与对象移除
  4. 04通过参考图进行风格迁移
  5. 05按任务选择或自动选择 fal.ai 模型
  6. 06将提示词与模型参数写入图像元数据

适用场景

  1. 01为海报或 Logo 生成含文字的图像
  2. 02将照片转换为插画或绘画风格
  3. 03移除图像对象或替换指定区域
  4. 04根据风格参考图制作新图像

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/delorenj/skills --skill fal-text-to-image

安装后在 Claude Code 中输入/fal-text-to-image确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.source.yaml
CHEATSHEET.md
fal-image-edit
fal-image-remix
pyproject.toml
README.md
uv.lock
fal-text-to-image/
.env.example
.gitignore
fal-text-to-image
references/
model-comparison.md
usage-examples.md

详细介绍

fal.ai 图像生成与编辑技能

使用 fal.ai 的先进模型打造专业的 AI 图像工作流,包括 FLUX、Recraft V3、Imagen4 等。

三种操作模式

1. 文生图(fal-text-to-image)

使用文本提示词从零生成图像

2. 图像重混(fal-image-remix)

在保留构图的同时转换现有图像

3. 图像编辑(fal-image-edit)

针对性地进行图像修补和蒙版编辑

何时使用此技能

在用户出现以下需求时触发:

  • 根据文本描述生成图像
  • 使用 AI 转换或重混现有图像
  • 编辑图像的特定区域(图像修补)
  • 创建特定风格的图像(矢量、写实、排版)
  • 需要高分辨率专业图像(最高 2K)
  • 使用参考图像进行风格迁移
  • 提及 FLUX、Recraft 或 Imagen 等特定模型
  • 请求生成徽标、海报或品牌风格图像
  • 移除对象或进行针对性修改

快速入门

文生图:从零生成
# Basic generation
uv run python fal-text-to-image "A cyberpunk city at sunset with neon lights"

# With specific model
uv run python fal-text-to-image -m flux-pro/v1.1-ultra "Professional headshot"

# With style reference
uv run python fal-text-to-image -i reference.jpg "Mountain landscape" -m flux-2/lora/edit
图像重混:转换现有图像
# Transform style while preserving composition
uv run python fal-image-remix input.jpg "Transform into oil painting"

# With strength control (0.0=original, 1.0=full transformation)
uv run python fal-image-remix photo.jpg "Anime style character" --strength 0.6

# Premium quality remix
uv run python fal-image-remix -m flux-1.1-pro image.jpg "Professional portrait"
图像编辑:针对性修改
# Edit with mask image (white=edit area, black=preserve)
uv run python fal-image-edit input.jpg mask.png "Replace with flowers"

# Auto-generate mask from text
uv run python fal-image-edit input.jpg --mask-prompt "sky" "Make it sunset"

# Remove objects
uv run python fal-image-edit photo.jpg mask.png "Remove object" --strength 1.0

# General editing (no mask)
uv run python fal-image-edit photo.jpg "Enhance lighting and colors"

模型选择指南

脚本会根据任务上下文智能选择最佳模型:

flux-pro/v1.1-ultra(高分辨率默认选择)
  • 最适合:专业摄影、高分辨率输出(最高 2K)
  • 优势:照片级真实感、专业品质
  • 适用场景:用户需要可直接用于出版的图像
  • 端点:fal-ai/flux-pro/v1.1-ultra
recraft/v3/text-to-image(业界顶尖品质)
  • 最适合:排版、矢量艺术、品牌风格图像、长文本
  • 优势:业界领先的基准测试成绩、精准的文本渲染
  • 适用场景:创建徽标、海报或以文本为主的设计
  • 端点:fal-ai/recraft/v3/text-to-image
flux-2(最佳平衡)
  • 最适合:通用图像生成
  • 优势:更强的真实感、清晰的文本、原生编辑能力
  • 适用场景:常规图像生成需求
  • 端点:fal-ai/flux-2
flux-2/lora(自定义风格)
  • 最适合:特定领域的风格、微调后的变体
  • 优势:自定义风格适配
  • 适用场景:用户需要特定艺术风格
  • 端点:fal-ai/flux-2/lora
flux-2/lora/edit(风格迁移)
  • 最适合:使用风格参考图像进行图生图编辑
  • 优势:专门的风格迁移能力
  • 适用场景:用户通过 -i 标志提供参考图像
  • 端点:fal-ai/flux-2/lora/edit
imagen4/preview(Google 品质)
  • 最适合:高品质通用图像
  • 优势:Google 品质最高的模型
  • 适用场景:用户明确指定 Imagen 或 Google 模型
  • 端点:fal-ai/imagen4/preview
stable-diffusion-v35-large(排版与风格)
  • 最适合:复杂提示词、排版、风格控制
  • 优势:先进的提示词理解能力、资源利用高效
  • 适用场景:包含多个元素的复杂构图
  • 端点:fal-ai/stable-diffusion-v35-large
ideogram/v2(排版专家)
  • 最适合:海报、徽标、以文本为主的设计
  • 优势:卓越的排版能力、写实的输出
  • 适用场景:文本准确性至关重要
  • 端点:fal-ai/ideogram/v2
bria/text-to-image/3.2(商用安全)
  • 最适合:需要使用许可训练数据的商业项目
  • 优势:可安全用于商业用途,文本渲染出色
  • 适用场景:涉及法律或许可问题
  • 端点:fal-ai/bria/text-to-image/3.2

命令行界面

uv run python fal-text-to-image [OPTIONS] PROMPT

Arguments:
  PROMPT                    Text description of the image to generate

Options:
  -m, --model TEXT         Model to use (see model list above)
  -i, --image TEXT         Path or URL to reference image for style transfer
  -o, --output TEXT        Output filename (default: generated_image.png)
  -s, --size TEXT          Image size (e.g., "1024x1024", "landscape_16_9")
  --seed INTEGER           Random seed for reproducibility
  --steps INTEGER          Number of inference steps (model-dependent)
  --guidance FLOAT         Guidance scale (higher = more prompt adherence)
  --help                   Show this message and exit

身份验证设置

首次使用前,请设置 fal.ai API 密钥:

export FAL_KEY="your-api-key-here"

或者在技能目录中创建 .env 文件:

FAL_KEY=your-api-key-here

从此处获取 API 密钥:https://fal.ai/dashboard/keys

进阶示例

高分辨率专业照片
uv run python fal-text-to-image \
  -m flux-pro/v1.1-ultra \
  "Professional headshot of a business executive in modern office" \
  -s 2048x2048
徽标/排版设计
uv run python fal-text-to-image \
  -m recraft/v3/text-to-image \
  "Modern tech startup logo with text 'AI Labs' in minimalist style"
基于参考图像的风格迁移
uv run python fal-text-to-image \
  -m flux-2/lora/edit \
  -i artistic_style.jpg \
  "Portrait of a woman in a garden"
可复现生成
uv run python fal-text-to-image \
  -m flux-2 \
  --seed 42 \
  "Futuristic cityscape with flying cars"

模型选择逻辑

未指定 -m 时,脚本会自动选择最佳模型:

  1. 如果提供了 -i:使用 flux-2/lora/edit 进行风格迁移
  2. 如果提示词包含排版关键词(logo、text、poster、sign):使用 recraft/v3/text-to-image
  3. 如果提示词表明需要高分辨率(professional、portrait、headshot):使用 flux-pro/v1.1-ultra
  4. 如果提示词提及矢量图或品牌:使用 recraft/v3/text-to-image
  5. 默认:使用 flux-2 满足一般用途

输出格式

生成的图像会保存元数据:

  • 文件名包含时间戳和模型名称
  • EXIF 数据存储提示词、模型和参数
  • 控制台显示生成时间和预估费用

故障排除

问题解决方案
FAL_KEY not set导出 FAL_KEY 环境变量,或创建 .env 文件
Model not found检查模型名称是否在支持列表中
Image reference fails确保图像路径/URL 可访问
Generation timeout某些模型需要更长时间;请稍候,或尝试更快的模型
Rate limit error查看 fal.ai 控制面板中的使用限制

成本优化

  • 免费套餐:FLUX.2 提供 100 次免费请求(于 2025 年 12 月 25 日过期)
  • 按量付费:FLUX Pro 按百万像素收费
  • 经济型选项:一般用途可使用 flux-2 或 stable-diffusion-v35-large
  • 高级选项:仅在需要高分辨率时使用 flux-pro/v1.1-ultra

图像混编:模型选择指南

可用于图生图混编的模型:

flux-2/dev(默认,免费)
  • 最适合:一般混编、风格迁移、快速迭代
  • 优势:质量与速度均衡,提供 100 次免费请求
  • 适用场景:标准混编需求
  • 端点:fal-ai/flux/dev/image-to-image
flux-pro(高级品质)
  • 最适合:专业混编、高质量输出
  • 优势:卓越的质量、逼真的转换效果
  • 适用场景:专业用途或可直接发布的混编
  • 端点:fal-ai/flux-pro
flux-1.1-pro(超高级)
  • 最适合:追求最高品质和最多细节的混编
  • 优势:超高品质、出色的细节保留效果
  • 适用场景:要求尽可能出色输出的高级项目
  • 端点:fal-ai/flux-pro/v1.1
recraft/v3(矢量图/插画)
  • 最适合:矢量风格、品牌图像、插画混编
  • 优势:简洁的矢量输出、品牌风格转换
  • 适用场景:转换为插画或矢量风格
  • 端点:fal-ai/recraft/v3/text-to-image
stable-diffusion-v35(艺术风格)
  • 最适合:艺术风格、绘画效果、创意混编
  • 优势:出色的艺术风格应用效果
  • 适用场景:艺术风格或风格化转换
  • 端点:fal-ai/stable-diffusion-v35-large

图像混编:命令行界面

uv run python fal-image-remix [OPTIONS] INPUT_IMAGE PROMPT

Arguments:
  INPUT_IMAGE               Path or URL to source image
  PROMPT                    How to transform the image

Options:
  -m, --model TEXT         Model to use (auto-selected if not specified)
  -o, --output TEXT        Output filename (default: remixed_TIMESTAMP.png)
  -s, --strength FLOAT     Transformation strength 0.0-1.0 (default: 0.75)
                           0.0 = preserve original, 1.0 = full transformation
  --guidance FLOAT         Guidance scale (default: 7.5)
  --seed INTEGER           Random seed for reproducibility
  --steps INTEGER          Number of inference steps
  --help                   Show help
混编强度指南

--strength 参数用于控制转换强度:

强度效果用途
0.3-0.5细微变化轻微调整颜色、微调光照
0.5-0.7中等变化保留细节的同时体现风格特征
0.7-0.85强烈变化明显的风格迁移、大幅转换
0.85-1.0最大变化完全改变风格、大幅转换
混编示例
# Subtle artistic style (low strength)
uv run python fal-image-remix photo.jpg "Oil painting style" --strength 0.4

# Balanced transformation (default)
uv run python fal-image-remix input.jpg "Cyberpunk neon aesthetic"

# Strong transformation (high strength)
uv run python fal-image-remix portrait.jpg "Anime character" --strength 0.9

# Vector conversion
uv run python fal-image-remix -m recraft/v3 logo.png "Clean vector illustration"

# Premium quality remix
uv run python fal-image-remix -m flux-1.1-pro photo.jpg "Professional studio portrait"

图像编辑:模型选择指南

可用于定向编辑和图像修复的模型:

flux-2/redux(常规编辑)
  • 最适合:无需蒙版的一般图像编辑
  • 优势:速度快、均衡,适合整体调整
  • 适用场景:无需针对特定区域编辑
  • 端点:fal-ai/flux-2/redux
flux-2/fill(图像修复,默认)
  • 最适合:蒙版区域编辑、移除对象、填充
  • 优势:无缝图像修复、自然融合
  • 适用场景:编辑特定的蒙版区域
  • 端点:fal-ai/flux-2/fill
flux-pro-v11/fill(高级修复)
  • 最适合:追求最高质量的专业修复
  • 优势:卓越的质量、专业的效果
  • 适用场景:需要高级质量的修复
  • 端点:fal-ai/flux-pro-v11/fill
stable-diffusion-v35/inpainting(艺术风格修复)
  • 最适合:艺术编辑、创意修复
  • 优势:出色的艺术控制力、细节丰富的生成效果
  • 适用场景:艺术风格或风格化编辑
  • 端点:fal-ai/stable-diffusion-v35-large/inpainting
ideogram/v2/edit(逼真编辑)
  • 最适合:逼真修改、精确编辑
  • 优势:高度逼真、控制精确
  • 适用场景:需要逼真编辑
  • 端点:fal-ai/ideogram/v2/edit
recraft/v3/svg(矢量编辑)
  • 最适合:矢量风格编辑、简洁插画
  • 优势:简洁的矢量输出、插画风格
  • 适用场景:矢量或插画编辑
  • 端点:fal-ai/recraft/v3/svg

图像编辑:命令行界面

uv run python fal-image-edit [OPTIONS] INPUT_IMAGE [MASK_IMAGE] PROMPT

Arguments:
  INPUT_IMAGE               Path or URL to source image
  MASK_IMAGE                Path or URL to mask (white=edit, black=preserve) [optional]
  PROMPT                    How to edit the masked region

Options:
  -m, --model TEXT         Model to use (auto-selected if not specified)
  -o, --output TEXT        Output filename (default: edited_TIMESTAMP.png)
  --mask-prompt TEXT       Generate mask from text (no mask image needed)
  -s, --strength FLOAT     Edit strength 0.0-1.0 (default: 0.95)
  --guidance FLOAT         Guidance scale (default: 7.5)
  --seed INTEGER           Random seed for reproducibility
  --steps INTEGER          Number of inference steps
  --help                   Show help
编辑强度指南

--strength 参数用于控制编辑强度:

强度效果用途
0.5-0.7轻微编辑小幅修饰、颜色调整
0.7-0.9中度编辑清晰修改,同时自然融合
0.9-1.0强力编辑完全替换、移除对象
创建蒙版图像

蒙版图像用于定义编辑区域:

  • 白色(255):要编辑/修改的区域
  • 黑色(0):保持不变的区域
  • 灰色:部分融合(与亮度成比例)

可通过以下方式创建蒙版:

  • 图像编辑器(GIMP、Photoshop、Krita)
  • 绘图工具(选择区域并填充白色/黑色)
  • 文本提示词(--mask-prompt 标志)
编辑示例
# Edit with mask image
uv run python fal-image-edit photo.jpg mask.png "Replace with beautiful garden"

# Auto-generate mask from text
uv run python fal-image-edit landscape.jpg --mask-prompt "sky" "Make it sunset with clouds"

# Remove objects
uv run python fal-image-edit photo.jpg object_mask.png "Remove completely" --strength 1.0

# Seamless object insertion
uv run python fal-image-edit room.jpg region_mask.png "Add modern sofa" --strength 0.85

# General editing (no mask)
uv run python fal-image-edit -m flux-2/redux photo.jpg "Enhance lighting and saturation"

# Premium quality inpainting
uv run python fal-image-edit -m flux-pro-v11/fill image.jpg mask.png "Professional portrait background"

# Artistic modification
uv run python fal-image-edit -m stable-diffusion-v35/inpainting photo.jpg mask.png "Van Gogh style"

文件结构

fal-text-to-image/
├── SKILL.md                    # This file
├── README.md                   # Quick reference
├── pyproject.toml              # Dependencies (uv)
├── fal-text-to-image           # Text-to-image generation script
├── fal-image-remix             # Image-to-image remixing script
├── fal-image-edit              # Image editing/inpainting script
├── references/
│   └── model-comparison.md     # Detailed model benchmarks
└── outputs/                    # Generated images (created on first run)

依赖项

通过 uv 管理:

  • fal-client:fal.ai 官方 Python SDK
  • python-dotenv:环境变量管理
  • pillow:图像处理和 EXIF 元数据
  • click:CLI 界面

最佳实践

通用
  1. 模型选择:除非有特定需求,否则让脚本自动选择
  2. 提示词工程:描述越具体、详尽,输出效果越好
  3. 成本意识:在 fal.ai 控制面板中监控用量
  4. 可复现性:迭代时使用 --seed 获得一致的结果
文生图
  1. 参考图像:使用高质量参考图,以获得最佳风格迁移效果
  2. 尺寸选择:让宽高比符合预期用途(正方形、横向、纵向)
  3. 模型选择:排版文字使用 recraft/v3,专业摄影使用 flux-pro
图像混编
  1. 强度调整:从默认值(0.75)开始,根据期望的变换效果进行调整
  2. 源图像质量:质量越高的源图像,混编效果越好
  3. 迭代:使用 --seed,针对同一次生成尝试不同提示词
  4. 平衡:较低强度能保留更多细节,较高强度会带来更显著的变化
图像编辑
  1. 蒙版质量:干净、边界清晰的蒙版能带来更好的效果
  2. 创建蒙版:使用图像编辑器进行精确控制,使用 --mask-prompt 快速测试
  3. 融合:在蒙版中使用灰度可实现平滑过渡
  4. 编辑强度:移除对象使用 0.95+,修改内容使用 0.7-0.9
  5. 先行测试:创建详细蒙版前,先尝试 --mask-prompt
  6. 多次编辑:复杂修改应分阶段编辑,而不是一次完成

资源

工作流示例

完整的图像创作流程
# 1. Generate base image
uv run python fal-text-to-image -m flux-2 "Modern office space, minimalist" -o base.png

# 2. Remix to different style
uv run python fal-image-remix base.png "Cyberpunk aesthetic with neon" -o styled.png

# 3. Edit specific region
uv run python fal-image-edit styled.png --mask-prompt "desk" "Add holographic display"
迭代优化
# Generate with seed for reproducibility
uv run python fal-text-to-image "Mountain landscape" --seed 42 -o v1.png

# Remix with same seed, different style
uv run python fal-image-remix v1.png "Oil painting style" --seed 42 -o v2.png

# Fine-tune with editing
uv run python fal-image-edit v2.png --mask-prompt "sky" "Golden hour lighting" --seed 42
对象移除与替换
# 1. Remove unwanted object
uv run python fal-image-edit photo.jpg object_mask.png "Remove" --strength 1.0 -o removed.png

# 2. Fill with new content
uv run python fal-image-edit removed.png region_mask.png "Beautiful flowers" --strength 0.9

故障排除

问题解决方案工具
FAL_KEY not set导出 FAL_KEY 或创建 .env 文件全部
Model not found在文档中检查模型名称全部
Image upload fails检查文件是否存在且可读Remix、Edit
Mask not working确认蒙版为灰度 PNG(白色 = 编辑)Edit
Transformation too strong降低 --strength 值Remix、Edit
Transformation too weak提高 --strength 值Remix、Edit
Mask-prompt not precise在图像编辑器中创建手动蒙版Edit
Generation timeout尝试速度更快的模型,或等待更久全部
Rate limit error检查 fal.ai 控制面板中的用量限制全部

限制

通用
  • 需要有效的 fal.ai API 密钥
  • 受 fal.ai 速率限制和配额限制
  • 需要互联网连接
  • 某些模型需要付费使用(请查看定价)
文生图
  • 图像参考功能仅限特定模型
  • 不同模型的文字排版质量各异
图像混合
  • 源图像质量会影响输出质量
  • strength 值过高或过低都可能产生伪影
  • 某些风格与特定模型搭配效果更好
图像编辑
  • 蒙版质量对无缝效果至关重要
  • 自动生成的蒙版(--mask-prompt)不如手动蒙版精准
  • 复杂编辑可能需要多次处理
  • 某些模型不支持所有编辑功能

评论

支持 Markdown