Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:Groq Groq python Models Resource

From Leeroopedia
Knowledge Sources
Domains Model_Management, API_Resource
Last Updated 2026-02-15 16:00 GMT

Overview

Concrete tool for listing, retrieving, and deleting AI models provided by the Groq Python SDK's models resource.

Description

The Models class (and its async counterpart AsyncModels) provides methods to interact with Groq's model management API. retrieve() fetches details for a specific model by ID, list() returns all available models, and delete() removes a model. All methods communicate with the /openai/v1/models endpoint family and return typed Pydantic response objects.

Usage

Use client.models.list() to discover available models before making inference requests. Use client.models.retrieve() to inspect a specific model's metadata (creation date, owner). Use client.models.delete() to remove custom or fine-tuned models.

Code Reference

Source Location

Signature

class Models(SyncAPIResource):
    def retrieve(
        self,
        model: str,
        *,
        extra_headers: Headers | None = None,
        extra_query: Query | None = None,
        extra_body: Body | None = None,
        timeout: float | httpx.Timeout | None | NotGiven = not_given,
    ) -> Model:
        """Get a specific model."""

    def list(
        self,
        *,
        extra_headers: Headers | None = None,
        extra_query: Query | None = None,
        extra_body: Body | None = None,
        timeout: float | httpx.Timeout | None | NotGiven = not_given,
    ) -> ModelListResponse:
        """Get all available models."""

    def delete(
        self,
        model: str,
        *,
        extra_headers: Headers | None = None,
        extra_query: Query | None = None,
        extra_body: Body | None = None,
        timeout: float | httpx.Timeout | None | NotGiven = not_given,
    ) -> ModelDeleted:
        """Delete a model."""

Import

from groq import Groq

client = Groq()
# Access via: client.models.retrieve(...), client.models.list(), client.models.delete(...)

I/O Contract

Inputs (retrieve)

Name Type Required Description
model str Yes Model ID to retrieve (e.g., "llama-3.3-70b-versatile")
extra_headers Headers or None No Additional HTTP headers
timeout float or Timeout or None No Per-request timeout override

Outputs (retrieve)

Name Type Description
return Model Model object with id, created, object, and owned_by fields

Inputs (list)

Name Type Required Description
extra_headers Headers or None No Additional HTTP headers
timeout float or Timeout or None No Per-request timeout override

Outputs (list)

Name Type Description
return ModelListResponse List of available Model objects

Inputs (delete)

Name Type Required Description
model str Yes Model ID to delete
extra_headers Headers or None No Additional HTTP headers
timeout float or Timeout or None No Per-request timeout override

Outputs (delete)

Name Type Description
return ModelDeleted Confirmation with id, deleted flag, and object type

Usage Examples

List Available Models

from groq import Groq

client = Groq()

# List all available models
models = client.models.list()
for model in models.data:
    print(f"{model.id} (owned by: {model.owned_by})")

Retrieve a Specific Model

from groq import Groq

client = Groq()

model = client.models.retrieve("llama-3.3-70b-versatile")
print(f"Model: {model.id}")
print(f"Created: {model.created}")
print(f"Owner: {model.owned_by}")

Delete a Model

from groq import Groq

client = Groq()

result = client.models.delete("my-custom-model")
print(f"Deleted: {result.deleted}")

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment