Skip to main content
Version: 2.31

Comet API

haystack_integrations.components.generators.cometapi.chat.chat_generator

CometAPIChatGenerator

Bases: OpenAIChatGenerator

A chat generator that uses the CometAPI for generating chat responses.

This class extends Haystack's OpenAIChatGenerator to specifically interact with the CometAPI. It sets the api_base_url to the CometAPI endpoint and allows for all the standard configurations available in the OpenAIChatGenerator.

init

python
__init__(
*,
api_key: Secret = Secret.from_env_var("COMET_API_KEY"),
model: str = "gpt-5-mini",
streaming_callback: StreamingCallbackT | None = None,
generation_kwargs: dict[str, Any] | None = None,
timeout: int | None = None,
max_retries: int | None = None,
tools: list[Tool | Toolset] | Toolset | None = None,
tools_strict: bool = False,
http_client_kwargs: dict[str, Any] | None = None
) -> None

Creates a CometAPIChatGenerator instance.

Parameters:

  • api_key (Secret) – The API key for authenticating with the CometAPI.
  • model (str) – The name of the model to use for chat generation (e.g., "gpt-5-mini", "grok-3-mini").
  • streaming_callback (StreamingCallbackT | None) – An optional callable invoked with each chunk of a streaming response.
  • generation_kwargs (dict[str, Any] | None) – Optional keyword arguments passed to the underlying generation API call.
  • timeout (int | None) – The maximum time in seconds to wait for a response from the API.
  • max_retries (int | None) – The maximum number of times to retry a failed API request.
  • tools (list[Tool | Toolset] | Toolset | None) – An optional list of tools the model can use.
  • tools_strict (bool) – If True, the model is forced to use one of the provided tools.
  • http_client_kwargs (dict[str, Any] | None) – Optional keyword arguments passed to the HTTP client.

to_dict

python
to_dict() -> dict[str, Any]

Serialize this component to a dictionary.

Returns:

  • dict[str, Any] – The serialized component as a dictionary.