MCPcopy Create free account
hub / github.com/HisMax/RedInk / ImageGeneratorBase

Class ImageGeneratorBase

backend/generators/base.py:6–64  ·  view source on GitHub ↗

图片生成器抽象基类

Source from the content-addressed store, hash-verified

4
5
6class ImageGeneratorBase(ABC):
7 """图片生成器抽象基类"""
8
9 def __init__(self, config: Dict[str, Any]):
10 """
11 初始化生成器
12
13 Args:
14 config: 配置字典
15 """
16 self.config = config
17 self.api_key = config.get('api_key')
18 self.base_url = config.get('base_url')
19
20 @abstractmethod
21 def generate_image(
22 self,
23 prompt: str,
24 **kwargs
25 ) -> bytes:
26 """
27 生成图片
28
29 Args:
30 prompt: 提示词
31 **kwargs: 其他参数(如分辨率、宽高比等)
32
33 Returns:
34 图片二进制数据
35 """
36 pass
37
38 @abstractmethod
39 def validate_config(self) -> bool:
40 """
41 验证配置是否有效
42
43 Returns:
44 配置是否有效
45 """
46 pass
47
48 def get_supported_sizes(self) -> list:
49 """
50 获取支持的图片尺寸
51
52 Returns:
53 支持的尺寸列表
54 """
55 return self.config.get('supported_sizes', ['1024x1024'])
56
57 def get_supported_aspect_ratios(self) -> list:
58 """
59 获取支持的宽高比
60
61 Returns:
62 支持的宽高比列表
63 """

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected