图像生成组件 (Generations)¶
本目录包含AI图像生成相关的组件,提供文本到图像生成、图像编辑和图像风格重绘功能。
📋 组件列表¶
1. ImageGeneration - 图像生成组件¶
基于文本描述生成图像的AI绘画服务。
前置使用条件:
需要有效的DashScope API密钥
网络连接正常
输入参数 (ImageGenInput):
prompt(str): 图像生成的文本描述size(str, 可选): 图像尺寸,默认为模型默认尺寸n(int, 可选): 生成图像数量,默认为1ctx(Optional[Context]): 上下文信息
输出参数 (ImageGenOutput):
results(List[str]): 生成的图像URL列表request_id(Optional[str]): 请求ID
2. ImageEdit - 图像编辑组件¶
提供多种AI图像编辑功能,包括修复、替换、扩图等。
前置使用条件:
需要有效的DashScope API密钥
基础图像和掩码图像(部分功能需要)
输入参数 (ImageGenInput):
function(str): 编辑功能类型base_image_url(str): 基础图像URLmask_image_url(Optional[str]): 掩码图像URLprompt(str): 编辑指令描述size(str, 可选): 输出图像尺寸n(int, 可选): 生成图像数量
输出参数 (ImageGenOutput):
results(List[str]): 编辑后的图像URL列表request_id(Optional[str]): 请求ID
3. ImageStyleRepaint - 图像风格重绘组件¶
专门用于人像风格重绘的服务。
前置使用条件:
需要有效的DashScope API密钥
输入人像图像
风格参考图像
输入参数 (ImageStyleRepaintInput):
image_url(str): 待重绘的人像图像URLstyle_index(int): 风格索引style_ref_url(str): 风格参考图像URL
输出参数 (ImageStyleRepaintOutput):
results(List[str]): 风格重绘后的图像URL列表request_id(Optional[str]): 请求ID
🔧 环境变量配置¶
环境变量 |
必需 |
默认值 |
说明 |
|---|---|---|---|
|
✅ |
- |
DashScope服务API密钥 |
|
❌ |
wanx2.1-t2i-turbo |
图像生成模型名称 |
🚀 使用示例¶
from agentscope_runtime.tools.generations.image_generation import ImageGeneration
import asyncio
# 初始化组件
image_gen = ImageGeneration()
# 生成图像
async def generate_image():
result = await image_gen.arun({
"prompt": "一只可爱的小猫咪在花园里玩耍",
"size": "1024x1024",
"n": 1
})
print("生成的图像URL:", result.results[0])
# 运行示例
asyncio.run(generate_image())
📦 依赖包¶
dashscope: DashScope SDKaiohttp: 异步HTTP客户端asyncio: 异步编程支持
⚠️ 注意事项¶
所有组件都需要配置有效的DashScope API密钥
图像生成可能需要一定时间,建议设置合适的超时时间
生成的图像URL有效期有限,建议及时下载或保存
部分功能可能存在使用频率限制,请合理控制调用频率