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:
-
messages
(Json
) –A list of messages comprising the conversation so far.
-
model
(String
) –ID of the model to use. (See overview here: https://console.groq.com/docs/models)
-
model_kwargs
(Optional[Json]
, default:None
) –Additional keyword args for the Groq
chat/completions
API. For details on the available parameters, see: https://console.groq.com/docs/api-reference#chat-create
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()
.