fake_model_provider.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from typing import Type
  2. from core.model_providers.models.base import BaseProviderModel
  3. from core.model_providers.models.entity.model_params import ModelType, ModelKwargsRules
  4. from core.model_providers.models.llm.openai_model import OpenAIModel
  5. from core.model_providers.providers.base import BaseModelProvider
  6. class FakeModelProvider(BaseModelProvider):
  7. @property
  8. def provider_name(self):
  9. return 'fake'
  10. def _get_fixed_model_list(self, model_type: ModelType) -> list[dict]:
  11. return [{'id': 'test_model', 'name': 'Test Model'}]
  12. def get_model_class(self, model_type: ModelType) -> Type[BaseProviderModel]:
  13. return OpenAIModel
  14. @classmethod
  15. def is_provider_credentials_valid_or_raise(cls, credentials: dict):
  16. pass
  17. @classmethod
  18. def encrypt_provider_credentials(cls, tenant_id: str, credentials: dict) -> dict:
  19. return credentials
  20. def get_provider_credentials(self, obfuscated: bool = False) -> dict:
  21. return {}
  22. @classmethod
  23. def is_model_credentials_valid_or_raise(cls, model_name: str, model_type: ModelType, credentials: dict):
  24. pass
  25. @classmethod
  26. def encrypt_model_credentials(cls, tenant_id: str, model_name: str, model_type: ModelType,
  27. credentials: dict) -> dict:
  28. return credentials
  29. def get_model_parameter_rules(self, model_name: str, model_type: ModelType) -> ModelKwargsRules:
  30. return ModelKwargsRules()
  31. def get_model_credentials(self, model_name: str, model_type: ModelType, obfuscated: bool = False) -> dict:
  32. return {}