def sample_text(
      self,
      prompt: str,
      *,
      max_tokens: int = DEFAULT_MAX_TOKENS,
      terminators: Collection[str] = DEFAULT_TERMINATORS,
      temperature: float = DEFAULT_TEMPERATURE,
      timeout: float = DEFAULT_TIMEOUT_SECONDS,
      seed: int | None = None,
  ) -> str:
    """Samples text from the model.

    NOTE: Sampling method is up to the underlying implementation and may not
    reflect the underlying log_probabilities.

    Args:
      prompt: the initial text to condition on.
      max_tokens: the maximum number of tokens in the response.
      terminators: the response will be terminated before any of these
        characters.
      temperature: temperature for the model.
      timeout: timeout for the request.
      seed: optional seed for the sampling. If None a random seed will be used.

    Returns:
      The sampled response (i.e. does not iclude the prompt).

    Raises:
      TimeoutError: if the operation times out.
    """
    raise NotImplementedError
Samples text from the model.

    NOTE: Sampling method is up to the underlying implementation and may not
    reflect the underlying log_probabilities.

    Args:
      prompt: the initial text to condition on.
      max_tokens: the maximum number of tokens in the response.
      terminators: the response will be terminated before any of these
        characters.
      temperature: temperature for the model.
      timeout: timeout for the request.
      seed: optional seed for the sampling. If None a random seed will be used.

    Returns:
      The sampled response (i.e. does not iclude the prompt).

    Raises:
      TimeoutError: if the operation times out.
    
concordia/language_model/language_model.py