nimgent/providers/provider_options
This page is generated from the module’s exported API and ## documentation comments.
Portable and provider-scoped request options.
GenerationOptions
Section titled “GenerationOptions”Provider-neutral generation controls. Providers map these canonical fields to their native request names where supported.
GenerationOptions = object temperature*: Option[float] topP*: Option[float] topK*: Option[int] presencePenalty*: Option[float] frequencyPenalty*: Option[float] stopSequences*: Option[seq[string]] seed*: Option[int] reasoning*: Option[string]ProviderOptions
Section titled “ProviderOptions”Provider-specific extensions. Use extra for settings without a typed
namespace; its keys are always namespaced by provider name.
ProviderOptions = object openai*: OpenAIOptions anthropic*: AnthropicOptions google*: GoogleOptions openrouter*: OpenRouterOptions hyper*: HyperOptions extra*: JsonNode ## Additional native namespaces, e.g. {"google": {...}}.Procedures
Section titled “Procedures”toProviderJson
Section titled “toProviderJson”Serialize common settings using the selected provider’s wire names.
proc toProviderJson(value: GenerationOptions; providerName: string): JsonNode {. raises: [], tags: [], forbids: [].}Returns: JsonNode.
Arguments
Section titled “Arguments”| Name | Type | Default |
|---|---|---|
value |
GenerationOptions |
|
providerName |
string |
resolveGenerationOptions
Section titled “resolveGenerationOptions”Merge provider-specific and provider-neutral generation settings.
proc resolveGenerationOptions(options: GenerationOptions; scoped: ProviderOptions; providerName: string): JsonNode {. raises: [ProviderError, KeyError], tags: [], forbids: [].}Returns: JsonNode.
Arguments
Section titled “Arguments”| Name | Type | Default |
|---|---|---|
options |
GenerationOptions |
|
scoped |
ProviderOptions |
|
providerName |
string |
resolveOptions
Section titled “resolveOptions”Low-level merge: raw request options < namespace extra < typed namespace. Copy to keep serialization and adapter changes from mutating caller JSON.
proc resolveOptions(options: JsonNode; scoped: ProviderOptions; providerName: string): JsonNode {. raises: [ProviderError, KeyError], tags: [], forbids: [].}Returns: JsonNode.
Arguments
Section titled “Arguments”| Name | Type | Default |
|---|---|---|
options |
JsonNode |
|
scoped |
ProviderOptions |
|
providerName |
string |