Image Generation Components¶
This directory contains AI image-generation components that provide text-to-image generation, image editing, and image style repainting.
📋 Component List¶
1. ImageGeneration - Image Generation Component¶
An AI art service that generates images based on text descriptions.
Prerequisites:
Valid DashScope API key required
Normal network connection
Input Parameters (ImageGenInput):
prompt(str): Text description for image generationsize(str, optional): Image dimensions, defaults to model default sizen(int, optional): Number of images to generate, defaults to 1ctx(Optional[Context]): Context information
Output Parameters (ImageGenOutput):
results(List[str]): List of generated image URLsrequest_id(Optional[str]): Request ID
2. ImageEdit - Image Editing Component¶
Provides various AI image editing capabilities, including repair, replacement, and image extension.
Prerequisites:
Valid DashScope API key required
Base image and mask image (required for some functions)
Input Parameters (ImageGenInput):
function(str): Type of editing functionbase_image_url(str): Base image URLmask_image_url(Optional[str]): Mask image URLprompt(str): Editing instruction descriptionsize(str, optional): Output image dimensionsn(int, optional): Number of images to generate
Output Parameters (ImageGenOutput):
results(List[str]): List of edited image URLsrequest_id(Optional[str]): Request ID
3. ImageStyleRepaint - Image Style Repainting Component¶
Specialized service for portrait-style repainting.
Prerequisites:
Valid DashScope API key required
Input portrait image
Style reference image
Input Parameters (ImageStyleRepaintInput):
image_url(str): URL of portrait image to be repaintedstyle_index(int): Style indexstyle_ref_url(str): Style reference image URL
Output Parameters (ImageStyleRepaintOutput):
results(List[str]): List of style-repainted image URLsrequest_id(Optional[str]): Request ID
🔧 Environment Variable Configuration¶
Environment Variable |
Required |
Default |
Description |
|---|---|---|---|
|
✅ |
- |
DashScope service API key |
|
❌ |
wanx2.1-t2i-turbo |
Image generation model name |
🚀 Usage Examples¶
from agentscope_runtime.tools.generations.image_generation import ImageGeneration
import asyncio
# Initialize component
image_gen = ImageGeneration()
# Generate image
async def generate_image():
result = await image_gen.arun({
"prompt": "A cute kitten playing in a garden",
"size": "1024x1024",
"n": 1
})
print("Generated image URL:", result.results[0])
# Run example
asyncio.run(generate_image())
📦 Dependencies¶
dashscope: DashScope SDKaiohttp: Async HTTP clientasyncio: Async programming support
⚠️ Considerations¶
All components require a valid DashScope API key configuration
Image generation may take some time; we recommend setting an appropriate timeout duration
Generated image URLs have limited validity; recommend timely download or save
Some features may have usage frequency limitations. Please control call frequency reasonably