The cheapest AI model is not always the cheapest AI architecture.
The real optimization target is cost per successful business
outcome.
If you are a DevOps, Platform, or Cloud engineer moving into AI
architecture, one of the hardest questions is no longer:
"Which LLM is the smartest?"
It is:
"Which model gives the required quality, latency, reliability and
security at the lowest total cost?"
This article builds a practical framework for answering that question.
1. The AI Cost Stack
Think of an AI system as a stack rather than a single API call.
flowchart TB
U[User / Application] --> G[API Gateway]
G --> R[Model Router]
R --> P[Prompt + Context]
P --> M1[Small / Fast Model]
P --> M2[Balanced Model]
P --> M3[Frontier Reasoning Model]
M1 --> O[Output]
M2 --> O
M3 --> O
P --> C[Prompt Cache]
C --> R
O --> E[Evaluation / Guardrails]
E --> U
subgraph Hidden Cost
INF[Inference Tokens]
RET[Retrieval / Vector Search]
NET[Network]
GPU[GPU / Dedicated Inference]
OBS[Observability]
SEC[Security / Governance]
end
A useful mental model is:
AI TCO
=
Model inference
+ Retrieval
+ Embeddings
+ GPU / compute
+ Storage
+ Network
+ Observability
+ Security
+ Engineering
+ Failure / retry cost
Do not compare model prices alone. Compare the complete workload.
2. First Principle: Model Cost ≠ Application Cost
A model may cost \$1 per million input tokens and still produce an
expensive application if it requires:
- huge prompts
- repeated retrieval
- excessive output
- retries
- multiple agent steps
- expensive vector search
- dedicated GPU infrastructure
- human review
The better metric is:
flowchart LR
A[Model Price] --> B[Cost / Request]
B --> C[Cost / Successful Task]
C --> D[Cost / Business Outcome]
The metric that matters
Cost per successful task
=
Total AI system cost
÷
Number of successful business outcomes
For example:
100,000 requests
× $0.002/request
= $200
But if only 70% succeed:
$200 / 70,000
= $0.00286 per successful task
A slightly more expensive model with a much higher success rate can
therefore be cheaper at the business level.
3. Token Economics
Most hosted LLM APIs fundamentally charge according to tokens.
flowchart LR
I[Input Tokens] --> PRICE[Token Pricing]
O[Output Tokens] --> PRICE
CACHE[Cached Tokens] --> PRICE
PRICE --> COST[Request Cost]
A simple approximation:
Request Cost
=
(input_tokens / 1M × input_price)
+
(output_tokens / 1M × output_price)
For a workload with:
Input = 10,000 tokens
Output = 2,000 tokens
and a model priced at:
Input = $1 / 1M
Output = $6 / 1M
the request costs approximately:
10,000 / 1,000,000 × $1
+
2,000 / 1,000,000 × $6
= $0.010 + $0.012
= $0.022
That is why output-token control can be extremely important for
reasoning-heavy applications.
4. Current Example: OpenAI Model Tiers
As of the current OpenAI API model documentation, the GPT-5.6 family is
positioned as:
GPT-5.6 Sol
↓
Maximum intelligence / complex reasoning
GPT-5.6 Terra
↓
Balanced intelligence + cost
GPT-5.6 Luna
↓
Cost-sensitive / high-volume workloads
Current published standard pricing is approximately:
Model Input / 1M Output / 1M Typical role
GPT-5.6 Sol \$5 \$30 Complex reasoning
GPT-5.6 Terra \$2.50 \$15 General production
GPT-5.6 Luna \$1 \$6 High-volume workloads
Prices change frequently, so always verify the provider's current
pricing before making a production decision.
Official references:
- OpenAI model catalog: https://developers.openai.com/api/docs/models
- OpenAI model comparison: https://developers.openai.com/api/docs/models/compare
quadrantChart
title Model Selection
x-axis Lower Cost --> Higher Cost
y-axis Lower Capability --> Higher Capability
quadrant-1 "Frontier / Complex"
quadrant-2 "Sweet Spot"
quadrant-3 "Cheap / Simple"
quadrant-4 "Expensive / Specialized"
"Luna": [0.25, 0.45]
"Terra": [0.50, 0.70]
"Sol": [0.85, 0.95]
5. Never Use the Biggest Model for Everything
This is one of the most important architectural principles.
A common anti-pattern is:
flowchart LR
A[Every Request] --> B[Most Powerful Model]
A better design is:
flowchart TD
A[Incoming Request] --> B{Classify Task}
B -->|Simple| C[Small / Cheap Model]
B -->|Normal| D[Balanced Model]
B -->|Complex| E[Reasoning Model]
C --> F[Response]
D --> F
E --> F
Example routing policy
Task Recommended tier
Intent classification Small
Spam detection Small
FAQ Small / balanced
Summarization Small / balanced
RAG Q&A Balanced
Code generation Balanced / reasoning
Architecture design Reasoning
Complex debugging Reasoning
Multi-step planning Reasoning
High-risk autonomous decision Strong model + human control
6. The 80/20 Model Routing Pattern
In many real systems, the majority of requests do not require frontier
reasoning.
pie title Illustrative AI Request Distribution
"Simple tasks" : 60
"Normal tasks" : 30
"Complex tasks" : 10
If:
60% → cheap model
30% → balanced model
10% → frontier model
the average inference cost can be dramatically lower than:
100% → frontier model
This is the core idea behind intelligent model routing.
Do not optimize the model.
Optimize the model portfolio.
7. Build a Model Router
For production AI platforms, model selection can become an
infrastructure capability.
flowchart TD
APP[Application] --> GW[AI Gateway]
GW --> CLASS[Task Classifier]
CLASS -->|Low complexity| SMALL[Small Model]
CLASS -->|Medium complexity| MED[Balanced Model]
CLASS -->|High complexity| LARGE[Reasoning Model]
SMALL --> EVAL[Quality Gate]
MED --> EVAL
LARGE --> EVAL
EVAL -->|Pass| RESP[Response]
EVAL -->|Fail| FALLBACK[Fallback / Escalation]
FALLBACK --> LARGE
The router can consider:
task_type
+
complexity
+
latency requirement
+
budget
+
data sensitivity
+
model availability
+
quality score
8. A Practical Routing Algorithm
if task == "classification":
use small_model
elif task == "simple_qa":
use small_model
elif task == "rag_qa":
use balanced_model
elif task == "code_generation":
use balanced_model
elif task == "complex_reasoning":
use frontier_model
if quality_score < threshold:
escalate_to_next_model()
A production implementation should add:
budget limits
timeouts
rate limits
fallback models
provider failover
circuit breakers
evaluation
audit logging
9. Cloud Choice: AWS vs Azure vs Google Cloud vs Direct API
The question should not be:
"Which cloud is best for AI?"
Instead ask:
"Where is the rest of the workload already running, and what AI
capabilities does that environment provide?"
flowchart TD
START[AI Workload] --> Q1{Existing Cloud?}
Q1 -->|AWS| AWS[Amazon Bedrock / SageMaker]
Q1 -->|Azure| AZ[Azure AI / Foundry / OpenAI]
Q1 -->|GCP| GCP[Vertex AI / Gemini]
Q1 -->|None| API[Direct Model APIs]
AWS --> DECIDE{Enterprise Requirements}
AZ --> DECIDE
GCP --> DECIDE
API --> DECIDE
DECIDE --> DATA[Data Residency]
DECIDE --> IAM[IAM / Identity]
DECIDE --> SEC[Security]
DECIDE --> COST[Cost]
DECIDE --> OPS[Operations]
10. When AWS Makes Sense
AWS becomes attractive when the organization already has:
EKS
+
S3
+
RDS
+
CloudWatch
+
IAM
+
VPC
+
Existing AWS contracts
and wants AI integrated into that environment.
Amazon Bedrock provides access to foundation models from multiple
providers and supports different inference pricing tiers and batch
options.
Useful AWS building blocks:
flowchart LR
APP[Application] --> BED[Amazon Bedrock]
BED --> FM[Foundation Models]
APP --> S3[S3]
APP --> RDS[RDS]
BED --> KB[Knowledge Bases]
IAM[IAM] --> BED
CW[CloudWatch] --> BED
Reference:
https://aws.amazon.com/bedrock/pricing/
11. When Azure Makes Sense
Azure can be especially compelling when the enterprise already depends
heavily on:
Microsoft Entra ID
Azure Kubernetes Service
Azure SQL
Microsoft 365
Power Platform
Enterprise Microsoft contracts
Architecture:
flowchart LR
USER[Users] --> API[API / App]
API --> AI[Azure AI Platform]
AI --> MODEL[Hosted Models]
API --> AKS[AKS]
AI --> DATA[Enterprise Data]
ID[Entra ID] --> API
ID --> AI
The strongest argument is often enterprise integration, not merely
model price.
12. When Google Cloud Makes Sense
Google Cloud is particularly interesting for workloads centered around:
Gemini
BigQuery
Data Analytics
Vertex AI
GKE
Dataflow
Google Workspace
Architecture:
flowchart LR
APP[Application] --> VA[Vertex AI]
VA --> GEM[Gemini Models]
DATA[BigQuery / GCS] --> RAG[RAG]
RAG --> VA
GKE[GKE] --> APP
IAM[Cloud IAM] --> VA
Google's generative AI pricing is token-based for supported Gemini
workloads, with different pricing for model families and batch modes.
Reference:
https://cloud.google.com/vertex-ai/generative-ai/pricing
13. When Direct Model APIs Make Sense
Sometimes the simplest architecture wins.
flowchart LR
APP[Application] --> API[Model API]
API --> MODEL[LLM]
MODEL --> APP
Advantages:
- simpler
- faster to prototype
- fewer cloud abstractions
- easier model experimentation
- potentially lower platform overhead
But you may need to build more yourself:
IAM
observability
model governance
data controls
network controls
multi-provider routing
enterprise policy
14. Cloud Choice Decision Matrix
Requirement AWS Azure GCP Direct API
Existing AWS ⭐⭐⭐⭐⭐ ⭐⭐ ⭐⭐ ⭐⭐⭐
estate
Existing ⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐ ⭐⭐⭐
Microsoft
estate
Existing ⭐⭐ ⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐
Google/data
estate
Multi-model ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
access
Fast ⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐⭐
prototype
Enterprise ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐
governance
Kubernetes ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐
integration
Lowest ⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐⭐
operational
complexity
Important: this is an architectural comparison, not a universal
ranking. Contract pricing, region, model availability and existing
infrastructure can completely change the result.
15. Managed API vs Self-Hosted Model
This is another major architecture decision.
flowchart TD
AI[AI Workload] --> Q{Deployment Model}
Q --> MANAGED[Managed API]
Q --> SELF[Self-hosted]
MANAGED --> A1[Pay per token]
MANAGED --> A2[Low Ops]
MANAGED --> A3[Fast Scaling]
SELF --> B1[GPU Cost]
SELF --> B2[Inference Ops]
SELF --> B3[More Control]
Managed API
Best when:
traffic is variable
+
team is small
+
time-to-market matters
+
model quality changes rapidly
Self-hosted
Best when:
traffic is predictable
+
model is open-weight
+
GPU utilization can remain high
+
data/control requirements are strong
16. The GPU Utilization Trap
Self-hosting often looks cheap on paper.
"Open model = no API fee"
But the real equation is:
GPU cost
+
GPU idle time
+
storage
+
network
+
orchestration
+
model serving
+
scaling
+
patching
+
observability
+
engineering
Architecture:
flowchart LR
REQ[Requests] --> LB[Load Balancer]
LB --> K8S[Kubernetes]
K8S --> GPU1[GPU Worker]
K8S --> GPU2[GPU Worker]
K8S --> GPU3[GPU Worker]
GPU1 --> MODEL[Model Server]
GPU2 --> MODEL
GPU3 --> MODEL
MON[Monitoring] --> K8S
If traffic is highly variable, GPUs can sit idle.
That idle capacity is still a bill.
17. Batch vs Real-Time Inference
Not every workload needs synchronous responses.
flowchart TD
JOB[AI Workload] --> Q{Latency Requirement}
Q -->|Milliseconds / Seconds| RT[Real-time inference]
Q -->|Minutes / Hours| BATCH[Batch inference]
RT --> HIGH[Higher responsiveness]
BATCH --> CHEAP[Potentially lower cost]
Examples of batch workloads:
- document classification
- nightly summarization
- log analysis
- data enrichment
- embedding generation
- offline evaluation
If users are not waiting for the result, batch processing can be a
major cost optimization.
18. Prompt Caching
Repeated context is expensive.
Imagine:
System prompt = 8K tokens
Company policy = 20K tokens
User question = 500 tokens
Sending 28.5K tokens on every request is wasteful when 28K tokens never
change.
flowchart LR
STATIC[Static Context] --> CACHE[Prompt Cache]
DYNAMIC[User Input] --> REQ[Request]
CACHE --> REQ
REQ --> MODEL[LLM]
Optimize for:
cache stable context
+
send only dynamic context
19. RAG Can Reduce Cost --- If Designed Properly
A naive RAG system can actually increase cost.
flowchart LR
USER[Question] --> EMB[Embedding]
EMB --> SEARCH[Vector Search]
SEARCH --> DOCS[Top Documents]
DOCS --> PROMPT[Huge Prompt]
PROMPT --> LLM[LLM]
The optimization is:
retrieve fewer documents
+
rerank
+
compress context
+
remove duplicates
+
send only relevant passages
Better:
flowchart LR
Q[Question] --> RET[Retriever]
RET --> RR[Reranker]
RR --> CP[Context Compression]
CP --> LLM[LLM]
20. Context Window Is Not Free
A model having a huge context window does not mean:
"Put the entire database into the prompt."
Think:
More context
↓
More input tokens
↓
Higher cost
↓
Potentially worse signal-to-noise
The goal is:
Maximum useful context, not maximum context.
21. Agentic AI Changes the Cost Equation
A chatbot may execute:
1 request → 1 model call
An agent may execute:
1 request
↓
planning
↓
tool call
↓
retrieval
↓
reasoning
↓
tool call
↓
verification
↓
final answer
flowchart TD
USER[User Request] --> PLAN[Planning]
PLAN --> TOOL1[Tool]
TOOL1 --> R1[Reasoning]
R1 --> TOOL2[Tool]
TOOL2 --> R2[Reasoning]
R2 --> VERIFY[Verification]
VERIFY --> ANSWER[Answer]
If every step invokes an expensive reasoning model:
1 user request
×
6 model calls
=
6× inference exposure
Therefore:
Agent architecture is also a cost architecture.
22. Control Agent Cost
Use a bounded state machine.
stateDiagram-v2
[*] --> Classify
Classify --> Execute
Execute --> Verify
Verify --> Complete
Verify --> Execute
Execute --> Failed
Failed --> [*]
Complete --> [*]
Set limits:
max_iterations = 5
max_tool_calls = 10
max_tokens = budget
max_latency = SLA
max_cost = request_budget
This prevents an agent from becoming an uncontrolled token generator.
23. Cost Optimization Hierarchy
Use this order.
flowchart TD
A[Reduce Unnecessary AI Calls]
A --> B[Reduce Context]
B --> C[Use Smaller Model]
C --> D[Cache]
D --> E[Batch]
E --> F[Optimize Retrieval]
F --> G[Optimize Infrastructure]
G --> H[Negotiate / Commit Capacity]
Why this order?
Because the biggest saving is often:
NO INFERENCE
rather than:
CHEAPER INFERENCE
24. AI Gateway Architecture
For a serious enterprise platform, put an AI gateway between
applications and models.
flowchart TB
A[Application A] --> GW[Enterprise AI Gateway]
B[Application B] --> GW
C[Application C] --> GW
GW --> AUTH[Auth / Policy]
GW --> ROUTER[Model Router]
GW --> CACHE[Cache]
GW --> LIMIT[Rate / Budget Limits]
GW --> OBS[Observability]
ROUTER --> OAI[Provider A]
ROUTER --> AWS[Provider B]
ROUTER --> GCP[Provider C]
ROUTER --> SELF[Self-hosted Model]
This creates a useful abstraction:
Application
↓
AI Platform
↓
Model providers
Applications no longer need to know every model's API.
25. Observability Must Include Cost
Traditional application monitoring:
CPU
Memory
Latency
Errors
Throughput
AI monitoring needs:
Input tokens
Output tokens
Cached tokens
Model
Provider
Cost
Latency
Quality
Retries
Tool calls
RAG context size
flowchart LR
REQ[AI Request] --> MET[AI Telemetry]
MET --> TOK[Token Metrics]
MET --> COST[Cost Metrics]
MET --> LAT[Latency]
MET --> QUAL[Quality]
MET --> ERR[Errors]
TOK --> DASH[AI FinOps Dashboard]
COST --> DASH
LAT --> DASH
QUAL --> DASH
ERR --> DASH
26. Build a Cost-per-Request Dashboard
A useful dashboard should answer:
Which application costs the most?
Which model costs the most?
Which team consumes the most tokens?
Which prompts are inefficient?
Which requests are unusually expensive?
Which model provides the best quality/cost ratio?
Example:
Application: Customer Support
Requests 2.4M
Input tokens 9.2B
Output tokens 1.1B
Average cost/request $0.0041
Failure rate 1.8%
Escalation rate 7.2%
27. AI FinOps
AI needs its own FinOps discipline.
flowchart TD
USAGE[AI Usage] --> TAG[Tag by Application / Team]
TAG --> ALLOC[Cost Allocation]
ALLOC --> BUDGET[Budgets]
BUDGET --> ALERT[Alerts]
ALERT --> ACTION[Optimization]
ACTION --> ROUTING[Change Model Routing]
ACTION --> PROMPT[Optimize Prompts]
ACTION --> CACHE[Increase Caching]
Every production AI request should ideally be attributable to:
application
team
environment
model
provider
feature
customer / tenant
28. A Practical Model Selection Scorecard
Don't choose a model using benchmark scores alone.
Score:
Quality
Cost
Latency
Reliability
Context capability
Tool calling
Structured output
Multimodal support
Data controls
Regional availability
Rate limits
A simple weighted model:
Total Score =
0.35 × Quality
+ 0.20 × Cost efficiency
+ 0.15 × Latency
+ 0.10 × Reliability
+ 0.10 × Security
+ 0.10 × Developer experience
The weights should come from the business requirement.
29. Use Your Own Evaluation Set
Public benchmarks are useful.
Production decisions should be driven by your workload.
flowchart LR
DATA[Real Production Examples] --> SET[Evaluation Dataset]
SET --> M1[Model A]
SET --> M2[Model B]
SET --> M3[Model C]
M1 --> SCORE[Quality + Cost + Latency]
M2 --> SCORE
M3 --> SCORE
SCORE --> DECIDE[Production Choice]
Build a dataset containing:
100–1000 representative requests
+
expected answers / grading criteria
+
edge cases
+
long-context examples
+
failure cases
Then measure:
quality
cost
latency
failure rate
30. The Real Model Selection Loop
flowchart TD
A[Define Business Task]
--> B[Define Quality Threshold]
--> C[Create Evaluation Set]
--> D[Test Multiple Models]
--> E[Measure Cost]
--> F[Measure Latency]
--> G{Meets Threshold?}
G -->|No| H[Reject]
G -->|Yes| I[Production Candidate]
I --> J[Shadow / Canary]
J --> K[Monitor]
K --> L[Optimize]
This is much better than:
"I heard Model X is the best."
31. A Reference Production Architecture
flowchart TB
USER[Users] --> CDN[CDN / WAF]
CDN --> API[API Gateway]
API --> APP[Application]
APP --> AIGW[AI Gateway]
AIGW --> ROUTER[Model Router]
ROUTER --> FAST[Fast Model]
ROUTER --> BAL[Balanced Model]
ROUTER --> REASON[Reasoning Model]
APP --> RAG[RAG Service]
RAG --> VDB[Vector DB]
RAG --> STORE[Object Storage]
AIGW --> CACHE[Prompt / Response Cache]
AIGW --> OBS[Observability]
OBS --> FINOPS[AI FinOps]
APP --> DB[Application DB]
IAM[Identity / Policy] --> API
IAM --> AIGW
32. The Golden Architecture Pattern
For many enterprises, a strong starting point is:
┌─────────────────────┐
│ Application │
└──────────┬──────────┘
│
┌──────▼──────┐
│ AI Gateway │
└──────┬──────┘
│
┌─────────────┼─────────────┐
│ │ │
┌────▼────┐ ┌────▼────┐ ┌────▼────┐
│ Cheap │ │ Balanced│ │ Frontier│
│ Model │ │ Model │ │ Model │
└─────────┘ └─────────┘ └─────────┘
│ │ │
└─────────────┼─────────────┘
│
┌──────▼──────┐
│ Evaluation │
└──────┬──────┘
│
┌──────▼──────┐
│ Observability│
└─────────────┘
The key is not the specific models.
The key is the architecture around the models.
33. Decision Tree: Which Model Should You Choose?
flowchart TD
START[New AI Use Case] --> Q1{Simple deterministic task?}
Q1 -->|Yes| SMALL[Small / specialized model]
Q1 -->|No| Q2{High reasoning requirement?}
Q2 -->|Yes| REASON[Reasoning / frontier model]
Q2 -->|No| Q3{High volume?}
Q3 -->|Yes| CHEAP[Cost-optimized model]
Q3 -->|No| BAL[Balanced model]
SMALL --> EVAL[Evaluate]
REASON --> EVAL
CHEAP --> EVAL
BAL --> EVAL
EVAL --> Q4{Quality threshold met?}
Q4 -->|No| UPGRADE[Upgrade model]
Q4 -->|Yes| PROD[Production]
34. Decision Tree: Which Cloud?
flowchart TD
START[Choose AI Platform] --> Q1{Existing enterprise cloud?}
Q1 -->|AWS| AWS[Start with Bedrock / AWS AI stack]
Q1 -->|Azure| AZ[Start with Azure AI stack]
Q1 -->|GCP| GCP[Start with Google AI stack]
Q1 -->|No| Q2{Need enterprise cloud integration?}
Q2 -->|Yes| COMPARE[Compare AWS / Azure / GCP]
Q2 -->|No| DIRECT[Evaluate direct model APIs]
AWS --> EVAL[Run workload benchmark]
AZ --> EVAL
GCP --> EVAL
DIRECT --> EVAL
COMPARE --> EVAL
EVAL --> DECIDE[Choose based on TCO + quality + governance]
35. Cost Optimization Checklist
Before production:
[ ] Is every AI call necessary?
[ ] Is the smallest acceptable model being used?
[ ] Is model routing implemented?
[ ] Are prompts optimized?
[ ] Is static context cached?
[ ] Is RAG context minimized?
[ ] Are output tokens constrained?
[ ] Can jobs run in batch?
[ ] Are retries bounded?
[ ] Are agent iterations bounded?
[ ] Are AI costs tagged?
[ ] Are budgets enforced?
[ ] Are model quality metrics measured?
[ ] Is provider failover required?
[ ] Is data residency satisfied?
[ ] Is the deployment model appropriate?
36. The DevOps Engineer's New AI Skill Set
A traditional DevOps engineer thinks:
Infrastructure
→
Deployment
→
Monitoring
→
Reliability
An AI Platform engineer adds:
Model selection
→
Prompt lifecycle
→
Evaluation
→
Model routing
→
Token economics
→
AI observability
→
AI FinOps
→
GPU orchestration
flowchart LR
DEVOPS[DevOps] --> PLATFORM[AI Platform Engineering]
PLATFORM --> MLOPS[MLOps]
PLATFORM --> LLMOPS[LLMOps]
PLATFORM --> FINOPS[AI FinOps]
PLATFORM --> AIOBS[AI Observability]
PLATFORM --> SECURITY[AI Security]
37. The Most Important Interview Answer
If an interviewer asks:
"How would you choose an AI model?"
A strong answer is:
"I would start with the business task and define the minimum
acceptable quality, latency and security requirements. Then I would
create a representative evaluation dataset and benchmark multiple
models. I would compare not only token pricing, but cost per
successful task, latency, reliability, context requirements, tool
support and operational overhead. For production, I would implement
model routing so simple high-volume workloads use cheaper models while
complex reasoning is escalated to stronger models. Finally, I would
continuously measure quality and cost through AI observability and
FinOps."
That answer demonstrates architecture, not just model knowledge.
38. The Architecture Mindset
The biggest shift is this:
Old mindset
"Which model is best?"
becomes:
New mindset
"Which combination of models, infrastructure,
routing and controls produces the best
business outcome at acceptable TCO?"
flowchart TD
MODEL[Model] --> ARCH[Architecture]
CLOUD[Cloud] --> ARCH
DATA[Data] --> ARCH
ROUTE[Routing] --> ARCH
COST[Cost] --> ARCH
SEC[Security] --> ARCH
OBS[Observability] --> ARCH
ARCH --> OUTCOME[Business Outcome]
39. Final Mental Model
Remember this sequence:
BUSINESS PROBLEM
│
▼
QUALITY TARGET
│
▼
EVALUATION SET
│
▼
MODEL PORTFOLIO
│
▼
MODEL ROUTER
│
▼
┌───────────┼───────────┐
▼ ▼ ▼
CHEAP BALANCED FRONTIER
│ │ │
└───────────┼───────────┘
▼
AI GATEWAY
│
▼
CLOUD / INFRASTRUCTURE
│
▼
OBSERVABILITY + AI FINOPS
│
▼
CONTINUOUS
EVALUATION
The one-line rule
Choose the cheapest model that reliably satisfies the business
requirement, then build the platform so expensive models are used only
when they add measurable value.
References
- OpenAI Models: https://developers.openai.com/api/docs/models
- OpenAI Model Comparison: https://developers.openai.com/api/docs/models/compare
- Amazon Bedrock Pricing: https://aws.amazon.com/bedrock/pricing/
- Amazon Bedrock Foundation Models: https://docs.aws.amazon.com/bedrock/latest/userguide/foundation-models-reference.html
- Google Cloud Vertex AI Generative AI Pricing: https://cloud.google.com/vertex-ai/generative-ai/pricing
- Microsoft Azure AI pricing/documentation: https://azure.microsoft.com/pricing/
Pricing changes quickly. Treat every price in this article as a
point-in-time reference and verify provider pricing before making a
production commitment.
About the Author
Shakthi Vinayak is a Senior Platform Engineer with 20+ years of experience across DevOps, cloud infrastructure, Kubernetes, automation, and AI-assisted platform engineering.
He writes about DevOps, AI/LLM architecture, cloud platforms, Kubernetes, AI FinOps, and the evolution of platform engineering.
🔗 LinkedIn: https://in.linkedin.com/in/vinayak-jois
Top comments (1)
The "cost per successful task" framing is the right lens — I have seen teams switch from a frontier model to a small fast one and actually save money and improve latency, purely because the success rate held up. One thing worth adding to the routing algorithm: measure retry amplification. A model that fails 30% of the time does not just cost more per success — it also multiplies your downstream retry and human-review load, which is where the hidden costs in that stack diagram really live. Do you factor prompt-cache hit rate into your router decisions, or is that still a post-hoc metric?