GoogleProviderOptions
AgentPrism.Google.dllAgentPrism’s Google Gemini provider settings.
public sealed class GoogleProviderOptionsInheritance
Section titled “Inheritance”object ← GoogleProviderOptions
Inherited Members
Section titled “Inherited Members”object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Remarks
Section titled “Remarks”This type is deliberately a class, not a record: a record’s
generated ToString would print every property, exposing the API key in a
single log line.
Validation is done by hand in GoogleProviderOptionsValidator;
DataAnnotations relies on reflection and breaks AOT compatibility.
Constructors
Section titled “Constructors”GoogleProviderOptions()
Section titled “ GoogleProviderOptions()”public GoogleProviderOptions()Fields
Section titled “Fields”SectionName
Section titled “ SectionName”Full path of the configuration section settings are read from.
public const string SectionName = "AgentPrism:Providers:Google"Field Value
Section titled “Field Value”Properties
Section titled “Properties”ApiKey
Section titled “ ApiKey”Gemini Developer API key.
public string? ApiKey { get; set; }Property Value
Section titled “Property Value”Remarks
Section titled “Remarks”This value is a secret and is not written to a file. Use
dotnet user-secrets, an environment variable, or a secret manager. The
key is never written to the database, never returned by the API, and never
shown in the UI, under any condition.
ApiVersion
Section titled “ ApiVersion”API version to use. When null, the SDK default applies.
Example: v1beta.
public string? ApiVersion { get; set; }Property Value
Section titled “Property Value”DefaultModel
Section titled “ DefaultModel”Model name used when ModelBinding.Model is left empty.
public string? DefaultModel { get; set; }Property Value
Section titled “Property Value”Endpoint
Section titled “ Endpoint”Request address. When null, Google’s own address
(https://generativelanguage.googleapis.com) is used.
public Uri? Endpoint { get; set; }Property Value
Section titled “Property Value”Uri?
Models
Section titled “ Models”Model catalog shown in the UI.
public IList<ModelDescriptor> Models { get; }Property Value
Section titled “Property Value”Remarks
Section titled “Remarks”AgentPrism carries no built-in model list; the catalog comes entirely from here. This list is not a validation list: a model name absent from it can still be used.
Timeout
Section titled “ Timeout”Upper time limit for a single request. When null, the library default is used.
public TimeSpan? Timeout { get; set; }