aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/litellm/llms/base_llm/anthropic_messages/transformation.py
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/litellm/llms/base_llm/anthropic_messages/transformation.py')
-rw-r--r--.venv/lib/python3.12/site-packages/litellm/llms/base_llm/anthropic_messages/transformation.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/litellm/llms/base_llm/anthropic_messages/transformation.py b/.venv/lib/python3.12/site-packages/litellm/llms/base_llm/anthropic_messages/transformation.py
new file mode 100644
index 00000000..7619ffbb
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/litellm/llms/base_llm/anthropic_messages/transformation.py
@@ -0,0 +1,35 @@
+from abc import ABC, abstractmethod
+from typing import TYPE_CHECKING, Any, Optional
+
+if TYPE_CHECKING:
+ from litellm.litellm_core_utils.litellm_logging import Logging as _LiteLLMLoggingObj
+
+ LiteLLMLoggingObj = _LiteLLMLoggingObj
+else:
+ LiteLLMLoggingObj = Any
+
+
+class BaseAnthropicMessagesConfig(ABC):
+ @abstractmethod
+ def validate_environment(
+ self,
+ headers: dict,
+ model: str,
+ api_key: Optional[str] = None,
+ ) -> dict:
+ pass
+
+ @abstractmethod
+ def get_complete_url(self, api_base: Optional[str], model: str) -> str:
+ """
+ OPTIONAL
+
+ Get the complete url for the request
+
+ Some providers need `model` in `api_base`
+ """
+ return api_base or ""
+
+ @abstractmethod
+ def get_supported_anthropic_messages_params(self, model: str) -> list:
+ pass