Skip to content

groq

pixeltable.functions.groq

Pixeltable UDFs that wrap various endpoints from the Groq API. In order to use them, you must first pip install groq and configure your Groq credentials, as described in the Working with Groq tutorial.

chat_completions async

chat_completions(
    messages: Json,
    *,
    model: String,
    model_kwargs: Optional[Json] = None,
    tools: Optional[Json] = None,
    tool_choice: Optional[Json] = None
) -> Json

Chat Completion API.

Equivalent to the Groq chat/completions API endpoint. For additional details, see: https://console.groq.com/docs/api-reference#chat-create

Request throttling: Applies the rate limit set in the config (section groq, key rate_limit). If no rate limit is configured, uses a default of 600 RPM.

Requirements:

  • pip install groq

Parameters:

Returns:

  • Json

    A dictionary containing the response and other metadata.

Examples:

Add a computed column that applies the model llama3-8b-8192 to an existing Pixeltable column tbl.prompt of the table tbl:

>>> messages = [{'role': 'user', 'content': tbl.prompt}]
... tbl.add_computed_column(response=chat_completions(messages, model='llama3-8b-8192'))

invoke_tools

invoke_tools(tools: Tools, response: Expr) -> InlineDict

Converts an OpenAI response dict to Pixeltable tool invocation format and calls tools._invoke().