slidedeckai.helpers.llm_helper#


Helper functions to access LLMs using LiteLLM.

get_langchain_llm

Get a LiteLLM-compatible object for streaming.

get_litellm_llm

Get a LiteLLM-compatible object for streaming.

get_litellm_model_name

Convert provider and model to LiteLLM model name format.

get_provider_model

Parse and get LLM provider and model name from strings like [provider]model/name-version.

is_valid_llm_provider_model

Verify whether LLM settings are proper.

stream_litellm_completion

Stream completion from LiteLLM.

Helper functions to access LLMs using LiteLLM.

slidedeckai.helpers.llm_helper.get_langchain_llm(provider: str, model: str, max_new_tokens: int, api_key: str = '', azure_endpoint_url: str = '', azure_deployment_name: str = '', azure_api_version: str = '') object | None#

Get a LiteLLM-compatible object for streaming.

Parameters:
  • provider – The LLM provider.

  • model – The name of the LLM.

  • max_new_tokens – The maximum number of tokens to generate.

  • api_key – API key or access token to use.

  • azure_endpoint_url – Azure OpenAI endpoint URL.

  • azure_deployment_name – Azure OpenAI deployment name.

  • azure_api_version – Azure OpenAI API version.

Returns:

A LiteLLM-compatible object for streaming; None in case of any error.

slidedeckai.helpers.llm_helper.get_litellm_llm(provider: str, model: str, max_new_tokens: int, api_key: str = '', azure_endpoint_url: str = '', azure_deployment_name: str = '', azure_api_version: str = '') object | None[source]#

Get a LiteLLM-compatible object for streaming.

Parameters:
  • provider – The LLM provider.

  • model – The name of the LLM.

  • max_new_tokens – The maximum number of tokens to generate.

  • api_key – API key or access token to use.

  • azure_endpoint_url – Azure OpenAI endpoint URL.

  • azure_deployment_name – Azure OpenAI deployment name.

  • azure_api_version – Azure OpenAI API version.

Returns:

A LiteLLM-compatible object for streaming; None in case of any error.

slidedeckai.helpers.llm_helper.get_litellm_model_name(provider: str, model: str) str | None[source]#

Convert provider and model to LiteLLM model name format.

Note: Azure OpenAI models are handled separately in stream_litellm_completion() and should not be passed to this function.

Parameters:
  • provider – The LLM provider.

  • model – The model name.

Returns:

LiteLLM-compatible model name, or None if provider is not supported.

slidedeckai.helpers.llm_helper.get_provider_model(provider_model: str, use_ollama: bool) tuple[str, str][source]#

Parse and get LLM provider and model name from strings like [provider]model/name-version.

Parameters:
  • provider_model – The provider, model name string from GlobalConfig.

  • use_ollama – Whether Ollama is used (i.e., running in offline mode).

Returns:

The provider and the model name; empty strings in case no matching pattern found.

slidedeckai.helpers.llm_helper.is_valid_llm_provider_model(provider: str, model: str, api_key: str, azure_endpoint_url: str = '', azure_deployment_name: str = '', azure_api_version: str = '') bool[source]#

Verify whether LLM settings are proper. This function does not verify whether api_key is correct. It only confirms that the key has at least five characters. Key verification is done when the LLM is created.

Parameters:
  • provider – Name of the LLM provider.

  • model – Name of the model.

  • api_key – The API key or access token.

  • azure_endpoint_url – Azure OpenAI endpoint URL.

  • azure_deployment_name – Azure OpenAI deployment name.

  • azure_api_version – Azure OpenAI API version.

Returns:

True if the settings “look” OK; False otherwise.

slidedeckai.helpers.llm_helper.stream_litellm_completion(provider: str, model: str, messages: list, max_tokens: int, api_key: str = '', azure_endpoint_url: str = '', azure_deployment_name: str = '', azure_api_version: str = '') Iterator[str][source]#

Stream completion from LiteLLM.

Parameters:
  • provider – The LLM provider.

  • model – The name of the LLM.

  • messages – List of messages for the chat completion.

  • max_tokens – The maximum number of tokens to generate.

  • api_key – API key or access token to use.

  • azure_endpoint_url – Azure OpenAI endpoint URL.

  • azure_deployment_name – Azure OpenAI deployment name.

  • azure_api_version – Azure OpenAI API version.

Returns:

Iterator of response chunks.