* docs: add deployment, performance tuning guides and streamline getting started - Add deployment-options.md: Library vs. Microservice decision guide - Add inference-architecture.md: Separation of concerns with LLM servers - Add performance-tuning.md: Concurrency and batching optimization guide - Streamline index.md: Merge installation, add quick example, simplify - Remove quick-start.md: Content merged into welcome page - Remove installation.md: Content merged into welcome page - Update model docs: Add concurrency control sections and cross-references - Update mkdocs.yml: Add new Architecture section to navigation * docs: add tasteful emojis to new documentation pages * docs: consolidate redundant concurrency and troubleshooting content - Remove duplicate max_parallel_requests tables from model-configs.md and inference-parameters.md - Remove duplicate Concurrency Control section from model-configs.md - Simplify Concurrency Control in inference-parameters.md to link to performance-tuning.md - Remove Troubleshooting section from inference-architecture.md (covered in performance-tuning.md) - performance-tuning.md is now the authoritative source for tuning guidance * Simplified doc additions * Switched default model to nemotron 3 nano * Addressed feedback * Added first blog draft
2.9 KiB
Model Providers
Model providers are external services that host and serve models. Data Designer uses the ModelProvider class to configure connections to these services.
Overview
A ModelProvider defines how Data Designer connects to a provider's API endpoint. When you create a ModelConfig, you reference a provider by name, and Data Designer uses that provider's settings to make API calls to the appropriate endpoint.
ModelProvider Configuration
The ModelProvider class has the following fields:
| Field | Type | Required | Description |
|---|---|---|---|
name |
str |
Yes | Unique identifier for the provider (e.g., "nvidia", "openai", "openrouter") |
endpoint |
str |
Yes | API endpoint URL (e.g., "https://integrate.api.nvidia.com/v1") |
provider_type |
str |
No | Provider type (default: "openai"). Uses OpenAI-compatible API format |
api_key |
str |
No | API key or environment variable name (e.g., "NVIDIA_API_KEY") |
extra_body |
dict[str, Any] |
No | Additional parameters to include in the request body of all API requests to the provider. |
extra_headers |
dict[str, str] |
No | Additional headers to include in all API requests to the provider. |
API Key Configuration
The api_key field can be specified in two ways:
-
Environment variable name (recommended): Set
api_keyto the name of an environment variable (e.g.,"NVIDIA_API_KEY"). Data Designer will automatically resolve it at runtime. -
Plain-text value: Set
api_keyto the actual API key string. This is less secure and not recommended for production use.
# Method 1: Environment variable (recommended)
provider = ModelProvider(
name="nvidia",
endpoint="https://integrate.api.nvidia.com/v1",
api_key="NVIDIA_API_KEY", # Will be resolved from environment
)
# Method 2: Direct value (not recommended)
provider = ModelProvider(
name="nvidia",
endpoint="https://integrate.api.nvidia.com/v1",
api_key="nvapi-abc123...", # Direct API key
)
See Also
- Model Configurations: Learn about configuring models
- Inference Parameters: Detailed guide to inference parameters and how to configure them
- Default Model Settings: Pre-configured providers and model settings included with Data Designer
- Custom Model Settings: Learn how to create custom providers and model configurations
- Model Configurations: Learn about configuring models
- Inference Parameters: Detailed guide to inference parameters and how to configure them
- Configure Model Settings With the CLI: Use the CLI to manage providers and model settings
- Getting Started: Installation and basic usage example