dalle.py 1.1 KB

123456789101112131415161718192021222324252627282930
  1. from typing import Any
  2. from core.tools.entities.values import ToolLabelEnum
  3. from core.tools.errors import ToolProviderCredentialValidationError
  4. from core.tools.provider.builtin.dalle.tools.dalle2 import DallE2Tool
  5. from core.tools.provider.builtin_tool_provider import BuiltinToolProviderController
  6. class DALLEProvider(BuiltinToolProviderController):
  7. def _validate_credentials(self, credentials: dict[str, Any]) -> None:
  8. try:
  9. DallE2Tool().fork_tool_runtime(
  10. runtime={
  11. "credentials": credentials,
  12. }
  13. ).invoke(
  14. user_id='',
  15. tool_parameters={
  16. "prompt": "cute girl, blue eyes, white hair, anime style",
  17. "size": "small",
  18. "n": 1
  19. },
  20. )
  21. except Exception as e:
  22. raise ToolProviderCredentialValidationError(str(e))
  23. def _get_tool_labels(self) -> list[ToolLabelEnum]:
  24. return [
  25. ToolLabelEnum.IMAGE, ToolLabelEnum.PRODUCTIVITY
  26. ]