Models
Camel.models.anthropic model
strip_trailing_whitespace_from_messages
Strip trailing whitespace from all message contents in a list of messages. This is necessary because the Anthropic API doesn’t allow trailing whitespace in message content.
Parameters:
- messages (List[OpenAIMessage]): List of messages to process
Returns:
List[OpenAIMessage]: The processed messages with trailing whitespace removed
AnthropicModel
Anthropic API in a unified OpenAICompatibleModel interface.
Parameters:
- model_type (Union[ModelType, str]): Model for which a backend is created, one of CLAUDE_* series.
- model_config_dict (Optional[Dict[str, Any]], optional): A dictionary that will be fed into
openai.ChatCompletion.create()
. If :obj:None
, :obj:AnthropicConfig().as_dict()
will be used. (default: :obj:None
) - api_key (Optional[str], optional): The API key for authenticating with the Anthropic service. (default: :obj:
None
) - url (Optional[str], optional): The url to the Anthropic service. (default: :obj:
https://api.anthropic.com/v1/
) - token_counter (Optional[BaseTokenCounter], optional): Token counter to use for the model. If not provided, :obj:
AnthropicTokenCounter
will be used. (default: :obj:None
) - timeout (Optional[float], optional): The timeout value in seconds for API calls. If not provided, will fall back to the MODEL_TIMEOUT environment variable or default to 180 seconds. (default: :obj:
None
) - max_retries (int, optional): Maximum number of retries for API calls. (default: :obj:
3
) **kwargs (Any): Additional arguments to pass to the client initialization.
init
token_counter
Returns:
BaseTokenCounter: The token counter following the model’s tokenization style.
check_model_config
_request_chat_completion
_patch_anthropic_token_counter
Monkey patch the AnthropicTokenCounter class to handle trailing whitespace.
This patches the count_tokens_from_messages method to strip trailing whitespace from message content before sending to the Anthropic API.