A section names the GCP project (required) and location (default us-central1), both provider-specific keys, and may set apiKey to a path to a service-account credential file - Vertex authenticates with OAuth2, not an API key. With no apiKey it uses Application Default Credentials. It therefore has no llm4s.credentials.vertexai block: there is no vendor API key to share.
Until #1215 the project was read from endpoint and the location from organization. Both still work as deprecated aliases, with a warning, and will be removed in a later release.
Constructs the client for a ProviderConfig this provider produced.
Constructs the client for a ProviderConfig this provider produced.
config is whatever the caller passed, so implementations must check the type rather than cast — ProviderDescriptor.expectConfig does that and produces the standard mismatch error.
Turns a validated config section into the runtime ProviderConfig for this provider.
Turns a validated config section into the runtime ProviderConfig for this provider.
The section has already been checked against configSpec, so required fields are present and section.extras holds exactly the declared provider-specific keys that have a value (defaults applied, deprecated aliases resolved). A Left here means something configSpec cannot express (a malformed value, say).
Value parameters
providerName
the user's instance name (llm4s.providers.<name>), for error messages.