RoleResolution

sealed interface RoleResolution

What a role resolved to.

Three cases, in increasing order of how much the resolver does itself. Most applications need only Credential: say whose key is active and let the platform do the rest.

Inheritors

Types

Link copied to clipboard
data class Credential(val credential: ProviderCredential) : RoleResolution

A provider key. The platform looks the role up for that provider and builds the service through a CredentialLlmServiceFactory, caching it.

Link copied to clipboard
data class Options(val llmOptions: <Error class: unknown class>) : RoleResolution

Configured options - a model name, and optionally hyperparameters that travel with the role. Values the caller set explicitly still win.

Link copied to clipboard
data class Service(val llmService: LlmService<*>) : RoleResolution

An already-built service, for callers that construct their own.