Red Hat AI Provider

July 7, 2026 · View on GitHub

Abbenay includes a dedicated redhat engine for connecting to Red Hat AI inference endpoints. It supports two deployment profiles that both expose an OpenAI-compatible REST API:

ProfileProductTypical endpoint
Inference ServerRed Hat AI Inference (vLLM)http://127.0.0.1:8000/v1
MaaSRed Hat OpenShift AI Models-as-a-Servicehttps://maas.apps.cluster.example.com/v1

Both speak the same protocol, so Abbenay routes them through @ai-sdk/openai-compatible — no additional SDK packages are required.


Profile A — Inference Server

Red Hat AI Inference Server is a standalone vLLM instance running locally, on a RHEL AI host, or in an OpenShift container.

Quick start

  1. Start the server — it must serve at least one model at the default local endpoint http://127.0.0.1:8000/v1:

    curl http://127.0.0.1:8000/v1/models
    
  2. Configure Abbenay (~/.config/abbenay/config.yaml on Linux, ~/Library/Application Support/abbenay/config.yaml on macOS):

    providers:
      redhat-inference:
        engine: redhat
        models:
          RedHatAI/Llama-3.2-1B-Instruct-FP8: {}
    

    Replace the model ID with whatever your server's /v1/models reports.

  3. Chat:

    aby start
    aby chat -m redhat-inference/RedHatAI/Llama-3.2-1B-Instruct-FP8
    

Authentication

Inference Server auth is optional — it depends on whether the server was started with the --api-key flag.

No key (default):

providers:
  redhat-inference:
    engine: redhat
    models:
      RedHatAI/Llama-3.2-1B-Instruct-FP8: {}

With key:

providers:
  redhat-inference:
    engine: redhat
    api_key_env_var_name: "REDHAT_AI_API_KEY"
    models:
      RedHatAI/Llama-3.2-1B-Instruct-FP8: {}
export REDHAT_AI_API_KEY="your-server-api-key"

Custom base URL

Override the default for non-standard ports, remote hosts, or OpenShift routes:

providers:
  redhat-inference:
    engine: redhat
    base_url: "http://192.168.1.100:8080/v1"
    models:
      RedHatAI/Llama-3.2-1B-Instruct-FP8: {}

For servers with self-signed or internal CA certificates:

export NODE_EXTRA_CA_CERTS="/path/to/ca-bundle.crt"

Profile B — OpenShift AI MaaS

OpenShift AI 3.4 delivers Models-as-a-Service (MaaS): a centrally governed, self-service AI gateway with token quotas, rate limiting, and usage tracking. MaaS exposes an OpenAI-compatible /v1/chat/completions endpoint that can route to locally hosted models (vLLM) or external providers.

Configuration

MaaS typically requires an API key (self-service MaaS keys issued by the platform):

providers:
  redhat-maas:
    engine: redhat
    base_url: "https://maas.apps.cluster.example.com/v1"
    api_key_env_var_name: "REDHAT_AI_API_KEY"
    models:
      llama-3.1-8b-instruct: {}
export REDHAT_AI_API_KEY="your-maas-api-key"

Key differences from Inference Server

AspectInference ServerMaaS
AuthOptional (--api-key)Typically required (self-service keys)
Base URLhttp://127.0.0.1:8000/v1Cluster route, e.g. https://maas.apps.…/v1
GovernanceNone (bare metal)Token quotas, rate limiting, showback
Model routingSingle modelGateway can route to multiple backends

Model Discovery

aby list-models --discover redhat

# Or directly:
curl http://127.0.0.1:8000/v1/models

The web dashboard Add Provider wizard also supports model discovery when you select the redhat engine.


Tool Calling

Tool calling support depends on the model being served. Models like Llama 3.2 Instruct support tool calling; others may not. If the served model does not support tools, chat will still work but tool calls will not be executed.


Container Usage

When running Abbenay inside a container and the Inference Server is on the host:

providers:
  redhat-inference:
    engine: redhat
    base_url: "http://host.containers.internal:8000/v1"
    models:
      RedHatAI/Llama-3.2-1B-Instruct-FP8: {}

Validation Checklist

#ScenarioHow to test
1Auth (no key)Start server without --api-key; omit key fields
2Auth (with key)Start server with --api-key; set REDHAT_AI_API_KEY
3Missing keyOmit key when server requires it; expect 401
4MaaS endpointSet base_url to MaaS route; provide API key
5Model discovery (CLI)aby list-models --discover redhat
6Model discovery (web)Add Provider wizard → select redhat
7Chat completionsaby chat -m redhat-inference/<model>
8Streamingcurl http://localhost:8787/v1/chat/completions with "stream": true
9Tool callingaby chat with tools enabled (if model supports it)
10VS Code LM APIConfigure Provider → select model → chat

References