Available LLM Providers
Cuadra AI supports models from multiple providers:
| Provider | Models | Features |
|---|
| OpenAI | GPT-4o, GPT-4 Turbo, o1, o3 | Function calling, JSON mode, vision |
| Anthropic | Claude 3.5 Sonnet, Claude 3 Opus | Extended thinking, 200K context |
| Google | Gemini 1.5 Pro, Gemini 2.0 | Long context, multimodal |
Use GET /v1/models/catalog to see all available base models and their capabilities.
Quick Start
First, get a parentModelId from the catalog, then create your custom model:
# 1. List available base models
curl https://api.cuadra.ai/v1/models/catalog \
-H "Authorization: Bearer YOUR_TOKEN"
# 2. Create a model using a parent model ID
curl -X POST https://api.cuadra.ai/v1/models \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: create-model-001" \
-d '{
"parentModelId": "PARENT_MODEL_ID_FROM_CATALOG",
"displayName": "Support Bot"
}'
The parentModelId comes from GET /v1/models/catalog. These are pre-configured system models (GPT-4o, Claude 3.5 Sonnet, etc.) with standard pricing.
Linking Datasets (RAG)
Connect a knowledge base to enable retrieval-augmented generation:
curl -X POST https://api.cuadra.ai/v1/models/model_abc123/datasets \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"datasetId": "ds_xyz789", "usageType": "rag"}'
Usage Types
| Usage Type | Behavior | Best For |
|---|
rag | Search and retrieve relevant chunks per query | Large knowledge bases |
context | Always include entire dataset in context | Small, always-relevant docs |
Attaching System Prompts
Configure model behavior with a system prompt:
curl -X PATCH https://api.cuadra.ai/v1/models/model_abc123 \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"systemPromptId": "sysprompt_xyz"}'
Use the Particles API to create modular, reusable prompt components.
FAQ
Can I switch LLM providers without changing code?
Yes. Update the model’s parentModelId via PATCH to point to a different base model. Your integration code using modelId stays the same.
What’s the difference between model and parentModelId?
Your model is a Cuadra AI model (custom displayName, linked datasets, system prompt). parentModelId references the underlying base model from the catalog (e.g., GPT-4o, Claude 3.5 Sonnet).
How many datasets can I link?
No hard limit. However, more datasets = more RAG tokens = higher cost. Link only relevant datasets.
Do model changes affect existing conversations?
No. Conversations use the model configuration at creation time. Changes apply to new chats only.