---
name: inference-inf-list-models
title: Listing models
description: Discover which foundation models are accessible in your project and understand their capabilities, so you can use the best model for your specific use case and optimize for factors like response quality, speed, or cost.
last-updated: 2026-10-05
---

> ## Documentation Index
> The table of contents for this documentation set is at https://cloud.ibm.com/docs/inference?format=markdown
> The index for all IBM Cloud docs is at: https://cloud.ibm.com/docs/llms.txt
> Use these files to discover more information as needed.

# Listing models
{: #inf-list-models}

Discover which foundation models are accessible in your project and understand their capabilities, so you can use the best model for your specific use case and optimize for factors like response quality, speed, or cost.
{: shortdesc}

## Before you begin
{: #inf-list-models-prereqs-ui}
{: ui}

* Create a Pay-As-You-Go or Subscription IBM Cloud account. Trial accounts are not supported. For more information or to upgrade your account, see [Account types](https://cloud.ibm.com/docs/account?topic=account-accounts&format=markdown#compare).

* Create [a Red Hat AI Inference project](https://cloud.ibm.com/docs/inference?topic=inference-project&format=markdown).

* Make sure that you have the Writer role or greater on the Red Hat AI Inference service. For more information, see [Managing IAM access](https://cloud.ibm.com/docs/inference?topic=inference-iam&interface=ui&format=markdown).

## Before you begin
{: #inf-list-models-prereqs-api}
{: api}

* Create a Pay-As-You-Go or Subscription IBM Cloud account. Trial accounts are not supported. For more information or to upgrade your account, see [Account types](https://cloud.ibm.com/docs/account?topic=account-accounts&format=markdown#compare).

* Create [a Red Hat AI Inference project](https://cloud.ibm.com/docs/inference?topic=inference-project&format=markdown).

* Make sure that you have the Writer role or greater on the Red Hat AI Inference service. For more information, see [Managing IAM access](https://cloud.ibm.com/docs/inference?topic=inference-iam&interface=ui&format=markdown).

* [Authenticate to the API](https://cloud.ibm.com/docs/inference?topic=inference-inf-auth&format=markdown).

* Get your API endpoint. All API requests use the following base URL format:

   
   ```text
   https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference
   ```
   {: codeblock}

   

   Replace `<project_id>` with your project ID. To find it, go to [Red Hat AI Inference projects](https://cloud.ibm.com/instructlab/projects) and open your project.

## Listing models by using the console
{: #inf-list-models-ui}
{: ui}

The console provides an interactive playground where you can experiment with different models, test prompts, and refine your AI interactions before integrating them into your applications.

The playground does not support embeddings. Use the API to [create embeddings](https://cloud.ibm.com/docs/inference?topic=inference-inf-create-embeddings&format=markdown).
{: note}

1. In the console, open the [Red Hat AI Inference service](https://cloud.ibm.com/inference/overview){: external}.
1. Click **Model catalog** to explore the available models.

## Listing models by using the API
{: #inf-list-models-api}
{: api}

The following example shows how to list models. For a complete list of the available parameters, see [OpenAI List Models](https://developers.openai.com/api/reference/resources/models/methods/list){: external}.



```bash
curl -L 'https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/models' \
-H 'Accept: application/json' -H "Authorization: Bearer <bearer_token>"
```
{: codeblock}
{: curl}

```python
from openai import OpenAI
client = OpenAI(
  api_key="<bearer_token>",
  base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)

models = client.models.list()
print(models)
```
{: codeblock}
{: python}



If `supports_embeddings` is `true` in the model response, the model can be used to create embeddings.
{: note}

## Getting a model by ID by using the API
{: #inf-get-model}
{: api}

Retrieving detailed information about a specific model helps you understand its characteristics, capabilities, and limitations before using it in your application.

The following example shows how to get a model by ID. For a complete list of the available parameters, see [Retrieve Model](https://developers.openai.com/api/reference/resources/models/methods/retrieve){: external}.



```bash
curl -L 'https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/models/<model>' \
-H 'Accept: application/json' -H "Authorization: Bearer <bearer_token>"
```
{: codeblock}
{: curl}

```python
from openai import OpenAI
client = OpenAI(
  api_key="<bearer_token>",
  base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)

model = client.models.retrieve("<model>")  # for example, "granite-4-0-h-small"
print(model)
```
{: codeblock}
{: python}




If `supports_embeddings` is `true` in the model response, the model can be used to create embeddings.
{: note}