惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
Recent Announcements
Recent Announcements
雷峰网
雷峰网
The GitHub Blog
The GitHub Blog
罗磊的独立博客
月光博客
月光博客
J
Java Code Geeks
A
About on SuperTechFans
Microsoft Security Blog
Microsoft Security Blog
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Fortinet All Blogs
U
Unit 42
C
Check Point Blog
Martin Fowler
Martin Fowler
有赞技术团队
有赞技术团队
博客园 - 叶小钗
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
Blog — PlanetScale
Blog — PlanetScale
大猫的无限游戏
大猫的无限游戏
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
阮一峰的网络日志
阮一峰的网络日志
MyScale Blog
MyScale Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Optimizing LLM Model Performance: Best Practices and Tech...
shashank ms · 2026-06-17 · via DEV Community

Production LLM workloads rarely fail because of model intelligence. They fail when latency spikes, context windows overflow, or inference costs scale faster than user growth. Optimizing large language model performance requires a systems-level view: prompt design, model selection, request architecture, and infrastructure behavior all interact to determine throughput and cost. This article covers practical techniques that improve latency, reduce waste, and keep agentic pipelines stable at scale.

Prompt Compression and Context Hygiene

Long prompts are not inherently bad, but unstructured context is. Redundant system instructions, repeated few-shot examples, and verbose XML tagging inflate input size without improving output quality. Start by deduplicating static content. Move immutable instructions, such as personality definitions or safety guidelines, into a persistent system message rather than repeating them in every user turn.

If you are building retrieval-augmented generation pipelines, rerank retrieved chunks before injecting them into the prompt. Sending the top-three chunks instead of the top-ten can cut input length by 70 percent without sacrificing accuracy.

On token-based platforms, long inputs trigger nonlinear cost growth. Oxlo.ai uses request-based pricing: one flat cost per API call regardless of prompt length. That removes the budget penalty for long-context agent workflows, but latency and model attention still benefit from concise, well-structured prompts. Clean context is a performance win even when cost is flat.

Model Selection and Quantization

The most expensive optimization mistake is using a flagship model for every task. Route requests by complexity. Simple classification, summarization, or entity extraction run efficiently on smaller models, while deep reasoning and multi-step coding require larger parameter counts.

Oxlo.ai offers 45-plus models across seven categories, which makes routing straightforward. For agentic workflows and multilingual reasoning, Qwen 3 32B is a strong default. General-purpose chat and reasoning scale well on Llama 3.3 70B. When you need deep reasoning or complex coding, DeepSeek R1 671B MoE or Kimi K2.6 provide advanced chain-of-thought capabilities. For coding-specific latency sensitivity, Oxlo.ai Coder Fast or Qwen 3 Coder 30B are purpose-built alternatives.

Quantization also matters. Many production workloads do not need full FP16 precision. Where Oxlo.ai provides quantized variants, test them against your evaluation set. A well-quantized 32B model often outperforms an unquantized 8B model on both accuracy and throughput.

Caching and Request Deduplication

LLM inference is stateless. If your application resends the same system prompt, conversation history, or document context across multiple turns, you are paying for redundant compute. Implement a prompt cache for static prefixes, and deduplicate parallel requests that ask identical questions.

For conversational agents, truncate history aggressively. Keep only the last N turns or use a summarization step to compress older dialogue into a rolling context block. This reduces both input size and the risk of attention drift.

Here is a minimal pattern for maintaining a lean conversation context with the OpenAI SDK against Oxlo.ai:

import openai

client = openai.OpenAI(
    base_url="https://api.oxlo.ai/v1",
    api_key="YOUR_API_KEY"
)

system_msg = {"role": "system", "content": "You are a precise code reviewer."}
history = []

def chat_turn(user_input, max_history=4):
    # Rotate history to keep only recent turns
    history.append({"role": "user", "content": user_input})
    messages = [system_msg] + history[-max_history:]
    
    resp = client.chat.completions.create(
        model="qwen-3-32b",
        messages=messages,
        stream=False
    )
    
    assistant_msg = resp.choices[0].message
    history.append({"role": "assistant", "content": assistant_msg.content})
    return assistant_msg.content

Unstructured text forces downstream parsers to guess. JSON mode and function calling eliminate that ambiguity, reduce retry loops, and shrink effective latency because the model is constrained to valid output schemas.

When using tools, define narrow functions with explicit parameter types. A single catch-all tool with optional fields performs worse than three specialized tools with required arguments. Oxlo.ai supports function calling and JSON mode across its chat models, so you can enforce structure without custom post-processing.

Example using JSON mode for a structured extraction task:

import json

response = client.chat.completions.create(
    model="llama-3.3-70b",
    messages=[{
        "role": "user",
        "content": "Extract the meeting date, attendees, and action items."
    }],
    response_format={"type": "json_object"},
    stream=False
)

data = json.loads(response.choices[0].message.content)

Streaming and Latency Optimization

Time-to-first-token and time-between-tokens are the metrics users actually feel. For interactive applications, always enable streaming. It does not reduce total generation time, but it improves perceived performance and allows your UI to render partial results immediately.

Oxlo.ai supports streaming across its chat and reasoning models with no cold starts on popular deployments, which means time-to-first-token remains consistent even after idle periods. Here is a streaming request pattern:

stream = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Explain MoE architecture."}],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

If you are running batch workloads, disable streaming and increase concurrency rather than serializing requests. Parallelism saturates throughput more effectively than oversized individual prompts.

Infrastructure: Cold Starts and Dedicated Capacity

Serverless inference often hides a latency tax. Cold starts, where GPU containers spin up after idle time, can add seconds to time-to-first-token. For agentic systems that chain multiple LLM calls, a single cold start in the middle of a workflow breaks user trust.

Oxlo.ai eliminates cold starts on its popular models, so request number 1001 behaves like request 1. For teams running sustained high-volume workloads, the Enterprise tier offers dedicated GPU capacity with guaranteed pricing below your current provider. That removes queue contention and makes latency predictable.

Conclusion

Optimizing LLM performance is not a single configuration change. It is a stack of decisions: compress prompts, match model size to task complexity, cache static context, enforce structured output, stream interactive responses, and remove infrastructure friction.

Oxlo.ai simplifies several of these layers. Request-based pricing decouples cost from prompt length, so you can use the context windows you actually need. A broad model catalog lets you route tasks precisely instead of defaulting to one oversized endpoint. OpenAI SDK compatibility means these optimizations drop into existing codebases with a one-line base URL change to https://api.oxlo.ai/v1. For details on plans and throughput limits, see https://oxlo.ai/pricing.