API reference

AIProviderBase Class

Extends ScriptableObject
Base class for AI providers (cloud or device).
Centralizes capability flags, shared validation, and common utilities used by concrete providers like OpenAIProvider and UnityInferenceEngineProvider. See the "AI Building Blocks" guide for usage patterns.
Guide: AI Building Blocks Overview Providers advertise supported execution via SupportedInferenceTypes and DefaultSupportedTypes; editor tooling reads these to enable/disable features.

Protected Properties

DefaultSupportedTypes : abstract InferenceType
[Get]
Signature
abstract InferenceType DefaultSupportedTypes

Properties

SupportedInferenceTypes : InferenceType
[Get]
Signature
InferenceType SupportedInferenceTypes

Protected Methods

PrepareRequestImagesAsync ( req , supportsVision , inlineRemote , resolveRedirects , maxBytes , ct )
Prepares a ChatRequest by processing images (inline or redirect resolution).
Consolidates duplicate image prep loop that appears in OpenAI, Llama, HuggingFace providers.
Signature
async Task< ChatRequest > PrepareRequestImagesAsync(ChatRequest req, bool supportsVision, bool inlineRemote, bool resolveRedirects, int maxBytes, CancellationToken ct)
Parameters
supportsVision: bool
inlineRemote: bool
resolveRedirects: bool
maxBytes: int
ct: CancellationToken
Returns
async Task< ChatRequest >
ValidateConfiguration ( apiKey , endpoint , model )
Validates provider configuration parameters and throws descriptive exceptions if invalid.
Consolidates duplicate validation logic from all providers.
Signature
void ValidateConfiguration(string apiKey, string endpoint=null, string model=null)
Parameters
apiKey: string  API key to validate (required).
endpoint: string  Endpoint URL to validate (optional).
model: string  Model ID to validate (optional).
Returns
void
Throws
InvalidOperationException  Thrown when required parameters are missing.

Protected Static Methods

EscapeJson ( s )
Escapes string for safe JSON encoding.
Consolidates duplicate Esc() methods from multiple providers.
Signature
static string EscapeJson(string s)
Parameters
s: string  String to escape.
Returns
string  JSON-safe escaped string.
ImageInputToDataUri ( img , defaultMime )
Converts an ImageInput to a data URI string for use in API payloads.
If the image has bytes, encodes them as base64 with the appropriate MIME type. If the image has a URL, returns it as-is. Consolidates duplicate conversion logic from OpenAI, Llama, HuggingFace providers.
Signature
static string ImageInputToDataUri(ImageInput img, string defaultMime="image/png")
Parameters
img: ImageInput  Image input to convert.
defaultMime: string  Default MIME type to use if not specified (default: "image/png").
Returns
string  Data URI string or URL.
NormalizeEndpoint ( endpoint , defaultEndpoint )
Normalizes endpoint URLs by ensuring proper /v1 suffix for OpenAI-compatible APIs.
Consolidates endpoint normalization logic.
Signature
static string NormalizeEndpoint(string endpoint, string defaultEndpoint)
Parameters
endpoint: string  Endpoint URL to normalize.
defaultEndpoint: string  Default endpoint if input is empty.
Returns
string  Normalized endpoint URL.

Inner Classes

DetectionArray Class

Fields

items : ObjectDetectionPrediction[]
Signature
ObjectDetectionPrediction [] items

DetectionWrapper Class

Wrapper classes for JSON deserialization of detection results.

Fields

predictions : ObjectDetectionPrediction[]
Signature
ObjectDetectionPrediction [] predictions