Writing

Library cublas64_12.dll Is Not Found: faster-whisper Loads, Then Dies on the First Transcribe

The model loads cleanly and fails at the first encode, because CTranslate2 wants CUDA 12 while the PyTorch build is on 13.

Notes

If you are here from the error message, the short version is this. Your PyTorch build and your CTranslate2 build disagree about which CUDA they want, and nothing tells you until the first audio frame hits the encoder.

The full error I got:



The part that wasted my afternoon

The model loads. It loads cleanly, in about two seconds, and the log says the model is ready. If you have a startup check that loads the model and calls it healthy, that check passes.

The failure arrives later, on the first real  call, inside the encode step. So the shape of the bug is "GPU works, then suddenly does not", which sends you looking at your audio pipeline instead of your install.

Why the versions disagree

I had PyTorch installed from the cu130 wheels. That is fine on its own. But faster-whisper does not use PyTorch for inference, it uses CTranslate2, and CTranslate2 ships its own expectations. The CTranslate2 installation docs say the published Python wheels are built for CUDA 12.x, and that models with convolutional layers, which includes speech recognition, also want a cuDNN 8 build compatible with CUDA 12.x.

So the DLL it wants is literally named after the major version: . A CUDA 13 runtime on the machine does not satisfy it. There is no fallback and no warning, only a missing library at the moment of use.

The fix, including the half that is not obvious

Install the CUDA 12 libraries from pip:



Then, before  is imported, point the process at the  folders under . Here is the part I got wrong the first time. You have to do both of these for each folder:

  • 
  • prepend the same folder to 

Adding the DLL directory alone did not work for me, and I expected it to. Python 3.8 changed how extension modules resolve their native dependencies on Windows: the docs describe loading dependencies only from trusted locations, which includes paths registered with . That covers the import.

It does not cover what CTranslate2 does later. cuBLAS is opened at encode time through its own library load, and that call goes through the ordinary Windows search order, which still reads PATH. One mechanism serves the import, the other serves the runtime load, and you need both. That is why the error can appear after a successful import.

What it does once it runs

large-v3-turbo at float16 on an RTX 4090 transcribes at roughly 61 times real time. I measured that over an archive of about 1,400 voice recordings, so it includes file handling and model warm-up, not just the kernel.

That number is the reason to fight with the DLLs rather than fall back to CPU. On CPU the same job is a different kind of project.

If you are debugging this now

Check the CUDA major version your CTranslate2 wheel expects before you check anything in your own code. Then confirm the load actually happened rather than assuming it did, by running one short file through  at startup instead of only constructing the model. A health check that stops at model construction will report green on a machine that cannot transcribe a single second of audio.

More

Other write-ups

16 September 2026 position: fixed Stopped Working Because a Parent Had an Entry Animation A decorative slide-up animation left an identity transform on an ancestor, which made it the containing block for everything fixed inside it. 2 min read 15 September 2026 Approval Is Not Publication Thirty seven items in the queue, one approved, nothing published. The last arrow in the diagram is the only one that pays. 2 min read 14 September 2026 Neural Rendering Is Crossing From Reconstruction Into Synthesis Reconstruction filled in what sparse sampling missed. DLSS 5 generates appearance the renderer never computed. 6 min read 14 September 2026 The Renderer Is Becoming a Training Data Engine The renderer used to sit at the end of the pipeline. Physical AI gives the same scene a second job: teaching a model. 6 min read 14 September 2026 One add_header in a location Block Deleted Every Security Header on That Page Inheritance applies only if the current level has no add_header at all, so a single cache directive removed four security headers. 2 min read 13 September 2026 Local AI Is Becoming a Compute Fabric Local AI meant one model on one machine. Routing inference across the devices already on a network changes the unit. 6 min read 12 September 2026 Agent Infrastructure Is Becoming a Product Category Every team used to build the loop, the store, the sandbox. That layer is being sold rather than written. 6 min read 12 September 2026 Choosing a local model with a stopwatch, not a benchmark Three models, five hard tasks, code actually executed. The official build was 2.4 times faster and more accurate than a community repack of the same model. 3 min read 12 September 2026 We measured real time lighting against baked light, and baked won A 3D product simulation that had to look like an offline render. The real time version ran at 60 frames per second and looked like clay. Here is the measurement and the architecture that replaced it. 4 min read 12 September 2026 What actually broke in an agency run by agents Three failures from a delivery stack that runs on AI. None of them were the model's fault, and all three reported success while producing nothing. 4 min read 11 September 2026 A Task Without A Check Command Is Not Automated If a task has no command that can fail, the pipeline advances on the appearance of work. 2 min read 10 September 2026 A Gate The Model Writes Is A Gate The Model Loosens Three quality gates returned green while the work behind them was wrong, each for a different reason. 2 min read 10 September 2026 Two Python Servers Listened on the Same Port on Windows and the Requests Split Between Them SO_REUSEADDR is on by default in http.server, and on Windows that lets a second process bind a port that is already being listened on. 2 min read 8 September 2026 The Scoring Model Was Wrong And It Put The Worst Lead First A weighted sum let one axis substitute for the other, so a company with money and no problem ranked in the top twenty. 2 min read 5 September 2026 Building Software Got Easy. Getting Value Out Of It Did Not Aristo took weeks to build. Everything after the build is still in progress, and that gap is the whole story. 3 min read 4 September 2026 Capability Is Becoming an Operational Risk Surface Safety questions used to be about the text. Once a model can act, the capability itself becomes something to operate. 6 min read 4 September 2026 font: 600 14px/1 inherit Is Invalid, and Your Button Quietly Becomes 13.3px Arial The declaration is dropped whole, and form controls fall back to the browser default because they never inherited the page font. 2 min read 24 July 2026 The Scene Graph Is Becoming an API for AI A scene graph exists for artists and software. Agents are becoming another consumer, and they need structure rather than pixels. 6 min read 23 July 2026 Animation Is Moving From Clips to Motion Priors Authored keyframes and blended clips are giving way to asking which constraints define acceptable motion. 6 min read 22 July 2026 Materials Are Becoming Learned Programs A material is texture maps, parameters and shader code. It is starting to become a small learned program that answers a rendering question. 6 min read 16 July 2026 Procedural Systems Are Expanding Beyond Geometry Geometry Nodes started with a narrow name. Blender 5.2 puts physics, sound and object data through the same graph. 6 min read 29 June 2026 The Unit of AI Work Is Becoming the Task, Not the Turn Chat taught us to think one turn at a time. Long-running agents make the task the thing that is scheduled, resumed and reviewed. 6 min read 24 June 2026 Game Engines Are Becoming Operating Systems for Worlds Engines have been judged on what they render and simulate. The Unreal 6 roadmap points at operating a world rather than drawing one. 6 min read 11 June 2026 The Model Is Becoming a Replaceable Backend Choosing a provider used to mean choosing an architecture. A stable interface makes replacement possible and evaluation makes it safe. 6 min read 17 April 2026 The Harness Is Part of the Capability The same model behaves differently depending on context policy, tool design and execution feedback. That surrounding software is not neutral. 6 min read 19 March 2026 Physics Engines Are Becoming Trainable Components A simulator predicts what happens next. A differentiable one can answer which parameter should change to stop the failure. 6 min read 13 March 2026 The Agent Needs an Environment, Not Just Tools A search function and a database query were enough for short loops. Longer work needs a place to stand. 6 min read 9 February 2026 Coding Agents Are Becoming General-Purpose Computer Workers Repositories were a friendly environment: text in, terminal actions, checkable results. That was a starting point, not a boundary. 6 min read 11 December 2025 Open Standards Outlive Model Generations A year after the MCP bet, the argument can be checked against what happened rather than what was hoped. 7 min read 20 November 2025 Colour Management Is a Pipeline Contract Blender 5.0 reads as better display options. Giving a file an explicit working colour space is an architectural change. 6 min read 11 August 2025 The Best Model May Be a Router, Not a Model GPT-5 moves model selection inside the system. The interesting unit stops being which model and becomes which compute policy. 6 min read 8 August 2025 World Models Are Not Game Engines Yet Genie 3 generates a navigable 720p world at 24 fps. Production work needs state you can inspect when something goes wrong. 6 min read 26 May 2025 Memory Is Becoming a System Capability A follow-up to the long-context argument. Storing, selecting and expiring facts is turning into a named part of the product. 6 min read 19 May 2025 Coding Agents Change the Unit of Software Work AI coding tools have been judged where code appears on screen. The boundary moves when the agent owns a task instead of a snippet. 6 min read 11 April 2025 Agents Need Protocols Between Each Other, Not Just Tools Tool calling solves the inside of the loop. It says nothing about one agent reaching another built by a different team on another platform. 7 min read 13 March 2025 Agents Need a Runtime, Not a Prompt Loop An agent is no longer well described as a prompt inside a while loop. The useful abstraction owns execution around the model. 6 min read 28 February 2025 Reasoning Is Not the Only Path to Better Models Longer thinking improves maths and code. A model that solves a logic puzzle and misreads ordinary intent is not the better production model. 6 min read 9 January 2025 Rendering Is Becoming a Reconstruction Stack Sparse samples, motion data and lower-resolution frames become a larger final result. Debugging becomes layered when reconstruction sits in the middle. 6 min read 16 December 2024 Agent Reliability Is an Evaluation Problem, Not a Prompting Problem When an agent misses a step, the usual fix is a stricter prompt. The failure is more often in how completion is detected. 6 min read 29 November 2024 MCP Might Matter More Than Another Model Release A model can reason well and still be useless inside a company if it cannot reach the files, repositories and tools where work lives. 6 min read 28 October 2024 Computer Use Is the Missing Layer Between Models and Software Most integrations assume useful software exposes the right API. Much of real software never did. 6 min read 19 September 2024 Inference-Time Compute Is a New Scaling Axis o1 improves when it is allowed to spend longer on a problem. A benchmark score without a compute budget is an incomplete number. 6 min read 15 August 2024 The Final Pixel Won't Come From the Renderer Geometry, camera and scene structure stay reliable ground truth. More of final appearance is moving into learned systems. 6 min read 29 July 2024 Open Models Are Becoming Research Infrastructure Llama 3.1 gets discussed as a benchmark result. The licence terms change which experiments are possible at all. 6 min read 24 June 2024 The Model Is Becoming a Runtime Function calling, code execution and structured output turn inference into a loop. The model stops being a text generator and starts being a control layer. 6 min read 16 May 2024 Multimodality Changes the Architecture, Not Just the Interface GPT-4o is easy to read as a faster interface. Training one model end to end across text, vision and audio is an architectural change. 7 min read 11 March 2024 Benchmark Scores Are Not Model Capability Claude 3 posts 86.8% on MMLU and 50.4% on GPQA Diamond. The chart is useful and it is not the same thing as capability. 6 min read 20 February 2024 Long Context Is Not Memory Gemini 1.5 makes a million tokens usable. A larger working set is not a system that decides what should survive the session. 6 min read