Private Large Language Model Service Runtime Engines

The Private Large Language Model Service employs runtime engines, which are responsible for loading model artifacts and exposing the model's supported capabilities for inference.

Models are associated with a runtime engine through the service configuration file, config.json by default.

ONNX Runtime Engine

Use the ONNX runtime engine for embedding generation, reranking, and text classification using ONNX-format models, which must be produced using the OML4Py 2.1.1 client tool. The tool packages the model with the required tokenizer and post-processing components expected by the service. If no runtime engine is specified in the configuration file, the ONNX runtime engine is used by default.

vLLM Runtime Engine

The vLLM Runtime Engine starts one dedicated vLLM server instance per configured vLLM-backed model. A single vLLM-backed model is supported per container instance.

Note:

The Private AI Services Container version 26.2.1.0.0 ships with vLLM 0.21.0.

You must provide metadata in the config.json file to indicate a model's capabilities. The property, capabilities, is used to specify the service that the model provides, for example TEXT_GENERATION or TEXT_EMBEDDING. For vLLM, exactly one capability must be specified in the format of a list. Additionally, the vLLM service derives a default --convert argument from the declared capability, which is passed to vLLM on startup.

The following are supported values for the capabilities property:

Capability Goal --convert Argument Value
TEXT_GENERATION The model is capable of generating text. The model takes text as input and produces text as output. For example, LLMs. auto
TEXT_RERANK Rerank text related to a query. The model takes a single text input (query) and a list of texts (documents), and returns the rank for each document based on its relevance to the query. For example, reranker models. classify
TEXT_EMBEDDINGS The model is capable of generating embeddings for textual input. embed
TEXT_CLASSICATION The model is capable of classifying text. The model takes text as input and produces a sequence of labels and probabilities as output. For example, models that perform sentiment analysis. classify

Llama.cpp Runtime Engine

The llama.cpp runtime engine starts one dedicated llama-server instance per configured llama.cpp-backed model. Llama.cpp models are loaded from GGUF files, which tend to be memory efficient. Still, a single llama.cpp-backed model is supported per container instance.

Note:

The Private AI Services Container version 26.2.1.0.0 ships with llama.cpp b9370.

Similar to the vLLM runtime engine, the llama.cpp runtime engine uses the capabilities property to specify what a given llama.cpp-backed model is capable of doing. The llama.cpp runtime engine allows only a single capability to be listed. The following are valid capabilities values:

Capability Goal
TEXT_GENERATION The model is capable of generating text. The model takes text as input and produces text as output. For example, LLMs.
TEXT_RERANK Rerank text related to a query. The model takes a single text input (query) and a list of texts (documents), and returns the rank for each document based on its relevance to the query. For example, reranker models.
TEXT_EMBEDDINGS The model is capable of generating embeddings for textual input.