Nexus

OpenAI-Compatible (Generic)

Connect any OpenAI-compatible API to Nexus with the generic opencompat provider.

The opencompat provider is a generic wrapper for any API that follows the OpenAI specification. Use this when a dedicated provider package is not available, or when connecting to custom/self-hosted endpoints like vLLM, text-generation-inference, or LocalAI.

Installation

import "github.com/xraph/nexus/providers/opencompat"

Quick Start

provider := opencompat.New("my-provider",
    "https://my-api.example.com/v1",
    os.Getenv("MY_API_KEY"),
)

gw := nexus.New(
    nexus.WithProvider(provider),
)

Options

OptionDescription
opencompat.WithCapabilities(caps)Override the default capabilities
opencompat.WithModels(models)Provide a list of available models

Capabilities

Default capabilities are Chat and Streaming. Override with WithCapabilities:

provider := opencompat.New("my-provider", baseURL, apiKey,
    opencompat.WithCapabilities(provider.Capabilities{
        Chat:       true,
        Streaming:  true,
        Embeddings: true,
    }),
)

Custom Models

Since opencompat has no built-in model catalog, provide models explicitly:

provider := opencompat.New("vllm", baseURL, apiKey,
    opencompat.WithModels([]provider.Model{
        {
            ID:            "meta-llama/Llama-3.1-8B-Instruct",
            Name:          "Llama 3.1 8B",
            Provider:      "vllm",
            ContextWindow: 131072,
        },
    }),
)

On this page