What a migration does to your prompts
Seventy specific things that change when the model underneath a prompt changes — formatting habits, refusals, arithmetic, personas, length.
A model migration is usually planned as an integration job. The API shapes differ, the SDK differs, the streaming events differ, and all of that is real work with a definite end. Then the integration lands, the tests go green, and the actual migration begins: the summariser starts emitting bullet points where it used to emit paragraphs, the extraction step trips over a fenced code block that was never there before, the agent finishes in four turns instead of eleven, and the red-team suite reports a pass rate nobody can interpret. None of that is a bug. It is the second half of the job, and it is the half nobody scoped.
These pages are about that half. The prompt string is the only part of the system that appears not to have changed, which is why it is the last place anyone looks — but a prompt is not a program, it is an input to a function whose entire behaviour was fixed by somebody else’s post-training. Change the function and every unstated assumption the prompt was leaning on is renegotiated at once. The cluster works through those assumptions one at a time: the formatting habits downstream code parses, the refusal boundary tests measure, the instruction literalism agents budget against, the personas, the lengths, and the operational scaffolding — cost attribution, runbooks, alert thresholds, contracts — that was quietly calibrated to one provider and has to be recalibrated to another.
Migrating an Internal Style Guide for Prompts Between Model Families
The four independent layers between a prompt string and a model's behaviour, and how to rewrite a house prompt-writing guide so it survives the next swap too.
10 min read
What a Migration Does to Existing Prompt Injection Test Baselines
Why a red-team suite's pass rate is not comparable across a model swap, how much of an apparent move is sampling noise, and the procedure that produces a real baseline.
10 min read
Migrating Prompt Chains Built Around One Model's Output Format Habits
The parse errors a multi-step chain throws when a later step's model changes its default formatting, and the three levels of fix from extractor patch to format contract.
10 min read
What “Knowledge Cutoff” Differences Mean for a Migration
How a shifted training cutoff changes model behaviour in ways that survive retrieval, and how to audit a prompt library for the places it actually matters.
9 min read
Migrating an Internal Prompt Testing Dataset to Cover a New Provider
How to extend an existing prompt regression suite with cases that probe the specific differences a migration exposes, instead of re-running an old suite that cannot see them.
11 min read
What Changes About Streaming Backpressure When You Switch Providers
Where backpressure actually lives in a streaming completion, why most SDK iterators remove it entirely, and what breaks in a client that assumed one provider's behaviour.
10 min read
Migrating a Client Library's Connection Pool Settings Between Providers
Why a pool sized for one provider's latency profile queues on another, derived from Little's law, plus the keepalive race that turns into duplicate side effects.
10 min read
What a Provider's Regional Endpoint Structure Means for a Migration
The three shapes regional endpoints come in, a worked round-trip estimate for getting the region wrong, and the residency question that only one of the three raises.
10 min read
Migrating a Prompt Library's Version Control Branching Strategy
Why a branch per provider guarantees silent drift, and a base-plus-overlay layout with a recorded base hash that makes drift a CI failure instead.
10 min read
What Changes in an Agent's Planning Behaviour After a Model Migration
Why a task-decomposition pattern shifts after a model swap, traced to reasoning-trace training and eagerness rather than to a prompt bug, and how to re-tune the budget.
10 min read
Re-Tuning an Agent's Step Limit After a Model Migration
Why a max-step ceiling that never fired on the old model starts throwing on the new one, and how to re-derive the number instead of doubling it.
9 min read
Migrating a Prompt Compression or Summarization Preprocessor
A compressor drops what its own scoring model finds predictable, which is not the same as what your new serving model can do without.
9 min read
What a Migration Does to an Existing Jailbreak Defense Test Suite
A green jailbreak suite after a model swap usually means the detectors are matching the old model's refusal phrasing, not that the new model refused.
9 min read
Migrating Cost Attribution From Per-Provider to Unified Tracking
Builds a normalized usage record that ingests three providers' differently-shaped usage objects without losing the distinction between cached, written and fresh input tokens.
10 min read
What Breaks in an Internal Chargeback Model After a Provider Migration
Team totals that no longer sum to the invoice after a migration, traced to a usage-field assumption and a price table keyed on a model string that stopped appearing.
9 min read
Migrating a Prompt A/B Testing Framework's Metric Definitions
Why a judged metric like helpfulness moves on a migration for reasons that have nothing to do with helpfulness, and how to separate metric drift from model drift.
9 min read
What a Deprecation Grace Period Actually Gives You Time to Do
Schedules a real notice period backwards from the retirement date into inventory, testing, dual-run and cutover, and shows where the time actually goes.
10 min read
Migrating Away From a Model That's Being Sunset Mid-Contract
What to do when a specific model version is retired while a commercial commitment still has months to run, and which clause types decide how much leverage you have.
9 min read
What a Provider Outage During a Migration Window Means for Your Rollback
The target provider degrades halfway through a cutover, and the rollback trigger you wrote does not fire because the SDK is retrying the failures away.
9 min read
Migrating a Prompt Injection Canary System Between Model Families
A canary marker detects extraction only when the model quotes it, and a model that paraphrases or spells it out defeats an exact-string comparison silently.
9 min read
What a Fine-Tune's Data Format Requirements Are Across Providers
The dataset shape each provider expects, the five decisions a converter has to make, and the requirement that is not a format at all.
9 min read
Migrating a RAG Reranker's Input Format Between Providers
What changes in a RAG pipeline's reranking step when the reranker changes provider, and why the tuned score threshold is the part that breaks.
9 min read
What a Provider Migration Means for Existing Rate-Limit Increases
Why an elevated limit does not travel with you, what determines the lead time on the target, and how to size a cutover to the limit you actually have.
9 min read
Migrating a Prompt Engineering Team's Internal Documentation
Which parts of a prompt wiki go wrong after a provider migration, why they go wrong silently, and how to convert the fragile ones into things that fail loudly.
9 min read
What Happens to a Custom Model Alias After the Model Is Retired
The 404 and the silent version change are the same bug seen twice; here is the audit that finds both before production does.
9 min read
Migrating a Prompt Template Engine's Variable Syntax
Why moving a template library between engines is not a rename, what the brace collision does to prompts containing JSON, and the render-diff that makes the move safe.
9 min read
Moving a Project Off a Free Tier Without an Outage
The quota discontinuity, the data-handling clause and the key rotation that come with leaving a free tier, and a staged cutover with a measurable rollback trigger.
10 min read
Migrating an Internal Prompt Approval Workflow
What a reviewer can honestly approve on once the model they had in their head is gone, and how to end a dual-provider review period rather than living in it.
9 min read
Does a Knowledge Cutoff Matter If You Are Using RAG?
It matters exactly where the retrieved passage contradicts what the model already believes, which makes it a property of your corpus rather than of the model.
10 min read
Migrating Few-Shot Examples From JSON to Markdown or Back
What each vendor's prompting guide recommends for example formatting, the three traps in the rewrite, and a decision rule for whether the new format is actually better.
10 min read
What Support Escalation Changes When You Move Provider
The incident evidence your escalation runbook collects is provider-shaped, and half of it stops existing the day you cut over.
9 min read
Retuning an Injection-Detection Threshold After a Migration
Why an injection alert goes silent rather than noisy after a model change, and the replay procedure that gives you a defensible new threshold.
10 min read
What a Migration Does to Your Fine-Tuning Artifacts
A hosted fine-tune is a model id on somebody else's serving stack, not a file you own; here is what you can actually carry across and what you have to rebuild.
9 min read
Migrating an Internal Glossary of Model-Specific Terminology
The dangerous glossary entries are the words two providers share and use differently; here is a table schema that makes those visible and a lint that keeps docs honest.
9 min read
Updating Uptime Monitoring for a New Model Provider
A synthetic check written against the old provider's response shape goes green forever after a cutover; here is how to rebuild it so it fails when inference does.
10 min read
Output Got Longer (or Empty) After the Model Change
Two unrelated causes produce the same complaint after a migration; one is a token-budget definition that changed, the other is trained verbosity, and they are fixed differently.
10 min read
Why the Retry Branch Stopped Firing After the Migration
Error-recovery branches encode a status code and an error type; both are provider vocabulary, and the wrong mapping produces either no retries at all or an infinite one.
10 min read
Locale Handling Moves in Three Places at a Migration
Nothing about your internationalisation lives inside the model; it lives in the tokenizer, the instruction that names the language, and the output format contract, and all three move independently.
10 min read
Retesting a Content Filter After a Fine-Tune Migration
Three filters sit in the request path and a fine-tune migration moves two of them; without attribution you cannot tell which one blocked, and tuning becomes guesswork.
10 min read
Rebuilding an Internal Cost-Per-Token Lookup Table
A table keyed on input and output rates cannot express cache writes, reasoning tokens or per-request tool charges, and the naive multiplication is wrong in opposite directions on different providers.
11 min read
What Changes About On-Call Runbooks After a Provider Migration
How to re-point an incident runbook's diagnostic steps at a new provider's error taxonomy, so the person paged at 3am is not reading instructions for a system that no longer exists.
9 min read
Migrating an Internal Prompt Injection Bug Bounty Scope
What in a prompt-injection bounty scope document stops being true when the underlying model changes, and how to draw the boundary around your trust boundary instead of the model's behaviour.
9 min read
What a Migration Does to Existing Prompt Caching Cost Projections
Re-derives an expected prompt-caching saving from first principles under a new provider's write multiplier, read multiplier, minimum prefix and cache lifetime, because the old percentage does not carry.
10 min read
Migrating a Team's Prompt Review Checklist for a New Model's Quirks
Adds the migration-specific items to a prompt review checklist, starting with the question of whether each few-shot example is anchoring a format or teaching a task.
10 min read
What a Provider's Content Policy Differences Mean for Existing Use Cases
Separates the three layers people collapse into 'content policy' and gives the procedure for re-reading a new provider's usage policy against a use case that was approved under a different one.
9 min read
Migrating an Internal Model Capability Matrix
Rebuilds the internal table of which models support which features as a generated artefact, using a probe suite for the providers whose model listing carries no capability data.
9 min read
What Breaks in a Voice Assistant's Latency Budget After a Migration
Diagnoses the audible pause that appears after moving a voice assistant to a new provider, and shows why time to first token measured at the SSE layer misses the regression entirely.
9 min read
Migrating a Prompt's Refusal-Handling Fallback Logic
Why code that detects a refusal by matching apology phrasing stops working after a model change, and the structural signals to branch on instead.
9 min read
What a Provider Migration Means for an Existing Prompt Cost Ceiling Alert
Rebuilds a per-request or per-session cost alert around a normalized usage shape and a versioned price table, because the old threshold and the field names it reads both stop being valid.
10 min read
Migrating an Internal Model Zoo Reference Doc Across a Provider Swap
Why the internal list of every model in active use rots, and how generating it from a registry the code actually reads turns a migration into one edit instead of tribal knowledge.
9 min read
What a Migration Does to an Existing Synthetic Data Generation Pipeline
Why a synthetic-data generator's output distribution shifts when the generating model changes, and the four distribution checks to run before the new batch reaches anything downstream.
9 min read
Migrating a Prompt's Citation and Source-Attribution Format
Why a downstream citation parser stops matching after a model swap, and the move from regex-over-prose to a structured citation channel that cannot drift.
9 min read
What a Migration Does to an Existing Prompt Compression Ratio
Works the arithmetic for a compression ratio measured on one tokenizer and re-evaluated on another, and shows why the ratio can shrink even though the compressed text is unchanged.
9 min read
Migrating an Internal Model Selection Decision Tree
Rebuilds a hard-coded routing tree so its leaves are capability predicates resolved at startup rather than model names typed into an if-chain.
10 min read
What Happens to a Feature Flag Gating a Model Version When It's Deprecated
Diagnoses the 404 that fires the first time a dormant flag variant is toggled back on, and the audit that catches a retired model id inside flag configuration.
9 min read
Migrating a Prompt's Handling of Multi-Turn Context Truncation
Re-derives a conversation-truncation budget for a target model with a different window, and explains why a bigger window changes where the model looks rather than only how much fits.
10 min read
What a Provider Migration Means for an Existing Prompt Injection Bounty Payout Structure
Why the payout tiers of a prompt-injection bounty need revisiting when the underlying model changes, and how to adjust them without repricing work researchers have already done.
9 min read
Migrating a Client's Exponential Backoff Parameters Between Providers
Re-derives base delay, cap and attempt count from the new provider's own rate-limit signals, and fixes the retry-multiplication bug that a migration usually introduces.
10 min read
What a Migration Does to an Existing Prompt's Persona Consistency
Traces a chatbot's post-migration personality drift to the parts of the persona the old model supplied for free, and gives the prompt changes and countable tests that pin it back down.
9 min read
Migrating an Internal Prompt Injection Severity Classification Scheme
Explains which inputs to an injection severity label a model swap actually changes, and the replay procedure that re-validates the scheme against demonstrated exploitability.
9 min read
What a Provider Migration Does to Your Prompt Caching TTL Assumptions
How long a cached prefix stays reusable is defined differently by each provider, and a request batcher tuned to one definition silently stops paying for itself on another.
10 min read
Migrating a Prompt's Handling of Ambiguous or Underspecified Requests
Why the ask-a-question-versus-guess balance shifts on a new model, and how to move that decision out of the model's defaults and into your output schema.
9 min read
What a Migration Does to a Prompt's Formatting Consistency Score
How to define, sample and size a format-conformance measurement so that a drop after a migration is a result rather than an impression.
10 min read
Migrating an On-Call Escalation Policy for AI Incident Types
Rewrite the severity matrix so on-call classification reflects the failure modes the migration target actually has, including the two that only exist while you are dual-running.
10 min read
What a Migration Does to a Prompt's Multi-Language Consistency
Why a prompt that behaved evenly across languages on one model degrades unevenly on another, and the per-locale checks to run before rollout rather than after.
10 min read
Migrating a Prompt That Depends on the Model Doing Arithmetic
Why a prompt that relied on a model getting sums right needs re-testing after every migration, and why the durable fix is to stop asking it to compute at all.
9 min read
What a Migration Does to Deeply Nested or Conditional Instructions
Why the innermost clause of a nested rule is the one that disappears on a new model, and how to restructure prose rules into a decision table the schema can enforce.
9 min read
Extending an Edge-Case Test Suite With Cases Found on the New Model
Harvest target-specific failures during dual-running, triage them into three buckets, and store them with the provenance that lets you retire them later without guessing.
10 min read
What to Pull From a Migration Target's Model Card, and What to Update
The specific fields worth extracting from a published model card before rollout, which internal documents each one invalidates, and the questions a card cannot answer.
9 min read
Migrating a Prompt Library's Linting Rules Between Model Families
A rule-set storage shape that carries which models each rule applies to, a resolution rule for lint time, and an explicit condition for deleting a rule rather than disabling it.
10 min read
Other topics
- LLM fundamentals & architecture
- Tokens, tokenization & context windows
- Prompt engineering
- Reasoning models & test-time compute
- Multimodal AI: vision, audio, video
- RAG & retrieval
- Embeddings & vector search
- AI agents & tool use
- Structured output & function calling
- Fine-tuning & post-training
- Local inference errors, string by string
- Running local models day to day
- Testing code that calls an LLM
- Snapshot and property testing for model output
- Regression suites for prompts
- Eval gates in CI
- Flaky tests against a model
- Determinism and the cost of testing
- Contract and streaming tests
- Testing tool calls and retrieval
- Inference, serving & latency
- Rolling out a prompt change
- Testing AI systems in practice
- Forecasting a time series
- Machine learning on tabular data
- Geospatial data and models
- Understanding audio that is not speech
- Understanding video
- Core computer vision tasks
- Machine learning on graphs
- Point clouds and 3D
- Evaluation, benchmarks & LLM-as-judge
- Sensor and IoT data
- Logs and event streams
- Models over biological sequences
- Machine learning on molecules
- Embedding and searching code
- Extracting invoices and purchase orders
- Receipts, statements and tax forms
- Insurance policies and contracts
- Deeds, court filings and patents
- Extracting from medical records
- Observability & LLMOps
- CVs, certificates and identity documents
- Shipping, customs and technical documents
- Meetings, email, chat and filled-in forms
- Building an extraction pipeline
- Business, property and inspection documents
- Contract clauses and insurance claims
- Regulated and compliance documents
- Consumer, travel and closing documents
- Mapping one chat API onto another
- SDK and framework migrations
- Hallucination & failure modes
- Re-embedding and model deprecation
- Cutting over between providers
- Parity gaps, shims and legacy endpoints
- Moving between model versions
- Migrating vector stores and caches
- Mapping capabilities and parameters
- Migrating pipelines and agents
- Contracts, runbooks and rollback
- Auditing a codebase before a cutover
- Compliance and fine-tune migration
- LLM cost engineering
- Routing, cost tracking and multi-tenancy
- AI security & prompt injection
- Privacy, compliance & data residency
- AI governance, policy & society
- Building reliable AI applications
- AI hardware, GPUs & compute
- Open-weight models & local inference
- AI for developers & coding agents
- AI in industry: vertical playbooks
- AGI, superintelligence, alignment & the long future
- Machine learning foundations
- NLP fundamentals & classical tasks
- Data engineering for AI
- Synthetic data & dataset curation
- AI product design & UX
- Search, ranking & recommendation
- Enterprise adoption & change management
- AI careers, skills & teams
- Reading AI research
- AI in science & discovery
- Robotics & embodied AI
- AI economics, markets & business models
- AI myths, hype & media literacy
- Context engineering
- Shipping AI features: patterns & anti-patterns
- Build it: end-to-end AI tutorials
- Python for AI: hands-on recipes
- TypeScript, React and the web
- Frameworks and SDKs
- Errors and troubleshooting
- AI facts, numbers and statistics
- The history of AI
- The maths behind AI
- Architectures beyond the transformer
- Reinforcement learning
- Diffusion and generative media
- Speech, audio and voice engineering
- Benchmarks, one at a time
- AI search visibility
- Infrastructure and operations
- Databases and storage for AI
- Knowledge graphs and structured knowledge
- Classical ML in production
- Regulation, jurisdiction by jurisdiction
- Prompt recipes and pattern library
- AI for people who do not write code
- Writing, media and creative work
- Edge and on-device AI
- Interpretability and model internals
- Field notes
- OpenAI model behaviour
- Claude model behaviour
- Gemini model behaviour
- Llama model behaviour
- Mistral model behaviour
- Qwen model behaviour
- DeepSeek model behaviour
- Cohere model behaviour
- Grok model behaviour
- Small model behaviour
- Hybrid model architectures
- Token cost by language and script
- Transliteration, romanization and script handling
- Locale-correct output
- Multilingual generation quality
- Multilingual pipelines
- The EU AI Act, article by article
- AI under the GDPR and EU data law
- US AI regulation, state and sector
- International AI governance and standards
- AI litigation and enforcement
- Running AI workloads on AWS
- Running AI workloads on Google Cloud
- Running AI workloads on Azure
- AI at the edge: Workers, Vercel and Netlify
- Serving models on Kubernetes
- Operating AI infrastructure
- Quantization formats and what they cost
- llama.cpp, flag by flag
- Ollama and the desktop local-model runtimes
- Local models on Apple Silicon
- Hardware for local inference
- Running speech and embedding models locally
- Model files, adapters and conversion
- VRAM arithmetic for local models