feat: add provider-scoped environment overrides (#5807)
This commit is contained in:
@@ -38,6 +38,7 @@ Unified LLM API with automatic model discovery, provider configuration, token an
|
||||
- [Browser Usage](#browser-usage)
|
||||
- [Browser Compatibility Notes](#browser-compatibility-notes)
|
||||
- [Environment Variables](#environment-variables-nodejs-only)
|
||||
- [Provider-Scoped Environment Overrides](#provider-scoped-environment-overrides)
|
||||
- [Checking Environment Variables](#checking-environment-variables)
|
||||
- [OAuth Providers](#oauth-providers)
|
||||
- [Vertex AI](#vertex-ai)
|
||||
@@ -1145,6 +1146,24 @@ const response = await complete(model, context, {
|
||||
});
|
||||
```
|
||||
|
||||
### Provider-Scoped Environment Overrides
|
||||
|
||||
Pass `env` in stream options to scope provider configuration to a request. Values in `env` are used before process environment variables for API key discovery and provider configuration such as Cloudflare account IDs, Azure OpenAI settings, Vertex project/location, Bedrock settings, `PI_CACHE_RETENTION`, and `HTTP_PROXY`/`HTTPS_PROXY`.
|
||||
|
||||
```typescript
|
||||
const model = getModel('cloudflare-ai-gateway', 'workers-ai/@cf/moonshotai/kimi-k2.6');
|
||||
|
||||
const response = await complete(model, context, {
|
||||
env: {
|
||||
CLOUDFLARE_API_KEY: '...',
|
||||
CLOUDFLARE_ACCOUNT_ID: 'account-id',
|
||||
CLOUDFLARE_GATEWAY_ID: 'gateway-id'
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
Use this when one process needs different provider settings per request, or when ambient environment variables should not leak into a provider call.
|
||||
|
||||
### Checking Environment Variables
|
||||
|
||||
```typescript
|
||||
|
||||
Reference in New Issue
Block a user