speech2text.py 991 B

123456789101112131415161718192021222324252627282930313233343536
  1. from typing import IO, Optional
  2. from dify_plugin.errors.model import CredentialsValidateFailedError
  3. class {{ .PluginName | SnakeToCamel }}Speech2TextModel(Speech2TextModel):
  4. """
  5. Model class for OpenAI Speech to text model.
  6. """
  7. def _invoke(self, model: str, credentials: dict,
  8. file: IO[bytes], user: Optional[str] = None) \
  9. -> str:
  10. """
  11. Invoke speech2text model
  12. :param model: model name
  13. :param credentials: model credentials
  14. :param file: audio file
  15. :param user: unique user id
  16. :return: text for given audio file
  17. """
  18. pass
  19. def validate_credentials(self, model: str, credentials: dict) -> None:
  20. """
  21. Validate model credentials
  22. :param model: model name
  23. :param credentials: model credentials
  24. :return:
  25. """
  26. try:
  27. pass
  28. except Exception as ex:
  29. raise CredentialsValidateFailedError(str(ex))