base.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. from typing import Optional
  2. from embedchain.helpers.json_serializable import register_deserializable
  3. @register_deserializable
  4. class BaseEmbedderConfig:
  5. def __init__(
  6. self,
  7. model: Optional[str] = None,
  8. deployment_name: Optional[str] = None,
  9. vector_dimension: Optional[int] = None,
  10. endpoint: Optional[str] = None,
  11. api_key: Optional[str] = None,
  12. api_base: Optional[str] = None,
  13. ):
  14. """
  15. Initialize a new instance of an embedder config class.
  16. :param model: model name of the llm embedding model (not applicable to all providers), defaults to None
  17. :type model: Optional[str], optional
  18. :param deployment_name: deployment name for llm embedding model, defaults to None
  19. :type deployment_name: Optional[str], optional
  20. :param vector_dimension: vector dimension of the embedding model, defaults to None
  21. :type vector_dimension: Optional[int], optional
  22. :param endpoint: endpoint for the embedding model, defaults to None
  23. :type endpoint: Optional[str], optional
  24. :param api_key: hugginface api key, defaults to None
  25. :type api_key: Optional[str], optional
  26. :param api_base: huggingface api base, defaults to None
  27. :type api_base: Optional[str], optional
  28. """
  29. self.model = model
  30. self.deployment_name = deployment_name
  31. self.vector_dimension = vector_dimension
  32. self.endpoint = endpoint
  33. self.api_key = api_key
  34. self.api_base = api_base