|
@@ -2,6 +2,8 @@ from typing import IO, Optional
|
|
|
|
|
|
from openai import OpenAI
|
|
|
|
|
|
+from core.model_runtime.entities.common_entities import I18nObject
|
|
|
+from core.model_runtime.entities.model_entities import AIModelEntity, FetchFrom, ModelType
|
|
|
from core.model_runtime.errors.validate import CredentialsValidateFailedError
|
|
|
from core.model_runtime.model_providers.__base.speech2text_model import Speech2TextModel
|
|
|
from core.model_runtime.model_providers.openai._common import _CommonOpenAI
|
|
@@ -58,3 +60,18 @@ class OpenAISpeech2TextModel(_CommonOpenAI, Speech2TextModel):
|
|
|
response = client.audio.transcriptions.create(model=model, file=file)
|
|
|
|
|
|
return response.text
|
|
|
+
|
|
|
+ def get_customizable_model_schema(self, model: str, credentials: dict) -> AIModelEntity | None:
|
|
|
+ """
|
|
|
+ used to define customizable model schema
|
|
|
+ """
|
|
|
+ entity = AIModelEntity(
|
|
|
+ model=model,
|
|
|
+ label=I18nObject(en_US=model),
|
|
|
+ fetch_from=FetchFrom.CUSTOMIZABLE_MODEL,
|
|
|
+ model_type=ModelType.SPEECH2TEXT,
|
|
|
+ model_properties={},
|
|
|
+ parameter_rules=[],
|
|
|
+ )
|
|
|
+
|
|
|
+ return entity
|