Models
Camel.models.reka model
RekaModel
Reka API in a unified OpenAICompatibleModel interface.
Parameters:
- model_type (Union[ModelType, str]): Model for which a backend is created, one of REKA_* series.
- model_config_dict (Optional[Dict[str, Any]], optional): A dictionary that will be fed into:obj:
Reka.chat.create()
. If :obj:None
, :obj:RekaConfig().as_dict()
will be used. (default: :obj:None
) - api_key (Optional[str], optional): The API key for authenticating with the Reka service. (default: :obj:
None
) - url (Optional[str], optional): The url to the Reka service. (default: :obj:
None
) - token_counter (Optional[BaseTokenCounter], optional): Token counter to use for the model. If not provided, :obj:
OpenAITokenCounter
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
)
init
_convert_reka_to_openai_response
Converts a Reka ChatResponse
to an OpenAI-style ChatCompletion
response.
Parameters:
- response (ChatResponse): The response object from the Reka API.
Returns:
ChatCompletion: An OpenAI-compatible chat completion response.
_convert_openai_to_reka_messages
Converts OpenAI API messages to Reka API messages.
Parameters:
- messages (List[OpenAIMessage]): A list of messages in OpenAI format.
Returns:
List[ChatMessage]: A list of messages converted to Reka’s format.
token_counter
Returns:
BaseTokenCounter: The token counter following the model’s tokenization style.
_run
Runs inference of Mistral chat completion.
Parameters:
- messages (List[OpenAIMessage]): Message list with the chat history in OpenAI API format.
Returns:
ChatCompletion.
check_model_config
stream
Returns:
bool: Whether the model is in stream mode.