mem0ai/mem0 · error · ValueError

Sarvam API key is required. Set SARVAM_API_KEY environment v

Error message

Sarvam API key is required. Set SARVAM_API_KEY environment variable or provide api_key in config.

What it means

Error "Sarvam API key is required. Set SARVAM_API_KEY environment variable or provide api_key in config." thrown in mem0ai/mem0.

Source

Thrown at mem0/llms/sarvam.py:22

import requests

from mem0.configs.llms.base import BaseLlmConfig
from mem0.llms.base import LLMBase


class SarvamLLM(LLMBase):
    def __init__(self, config: Optional[BaseLlmConfig] = None):
        super().__init__(config)

        # Set default model if not provided
        if not self.config.model:
            self.config.model = "sarvam-m"

        # Get API key from config or environment variable
        self.api_key = self.config.api_key or os.getenv("SARVAM_API_KEY")

        if not self.api_key:
            raise ValueError(
                "Sarvam API key is required. Set SARVAM_API_KEY environment variable or provide api_key in config."
            )

        # Set base URL - use config value or environment or default
        self.base_url = (
            getattr(self.config, "sarvam_base_url", None) or os.getenv("SARVAM_API_BASE") or "https://api.sarvam.ai/v1"
        )

    def generate_response(self, messages: List[Dict[str, str]], response_format=None, **kwargs) -> str:
        """
        Generate a response based on the given messages using Sarvam-M.

        Args:
            messages (list): List of message dicts containing 'role' and 'content'.
            response_format (str or object, optional): Format of the response.
                                                     Currently not used by Sarvam API.
            **kwargs: Additional provider-specific parameters forwarded to the Sarvam
                request payload (matches the ``LLMBase.generate_response`` contract).

View on GitHub (pinned to 001c235229)

Solutions

  1. Set the SARVAM_API_KEY environment variable or pass api_key in the LLM config.

When it happens

Trigger: Thrown at mem0/llms/sarvam.py:22 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of mem0ai/mem0@001c235229 (2026-08-15). Data as JSON: /api/errors/aeae73debd8c1154. Report an issue: GitHub.