创建图片生成器实例 Args: provider: 服务商类型 ('google_genai', 'openai', 'openai_compatible') config: 配置字典 Returns: 图片生成器实例 Raises: ValueError: 不支持的服务商类型
(cls, provider: str, config: Dict[str, Any])
| 19 | |
| 20 | @classmethod |
| 21 | def create(cls, provider: str, config: Dict[str, Any]) -> ImageGeneratorBase: |
| 22 | """ |
| 23 | 创建图片生成器实例 |
| 24 | |
| 25 | Args: |
| 26 | provider: 服务商类型 ('google_genai', 'openai', 'openai_compatible') |
| 27 | config: 配置字典 |
| 28 | |
| 29 | Returns: |
| 30 | 图片生成器实例 |
| 31 | |
| 32 | Raises: |
| 33 | ValueError: 不支持的服务商类型 |
| 34 | """ |
| 35 | if provider not in cls.GENERATORS: |
| 36 | available = ', '.join(cls.GENERATORS.keys()) |
| 37 | raise ValueError( |
| 38 | f"不支持的图片生成服务商: {provider}\n" |
| 39 | f"支持的服务商类型: {available}\n" |
| 40 | "解决方案:\n" |
| 41 | "1. 检查 image_providers.yaml 中的 active_provider 配置\n" |
| 42 | "2. 确认 provider.type 字段是否正确\n" |
| 43 | "3. 或使用环境变量 IMAGE_PROVIDER 指定服务商" |
| 44 | ) |
| 45 | |
| 46 | generator_class = cls.GENERATORS[provider] |
| 47 | return generator_class(config) |
| 48 | |
| 49 | @classmethod |
| 50 | def register_generator(cls, name: str, generator_class: type): |