talk: finish pres and yt script

This commit is contained in:
Stevan Freeborn
2026-02-09 13:51:03 -06:00
parent af2230d91f
commit 606335c7c1
2 changed files with 263 additions and 0 deletions
+162
View File
@@ -0,0 +1,162 @@
---
title: Why LLMs Don't Make Decisions
theme: default
layout: center
class: text-center
fonts:
sans: "CaskaydiaCove Nerd Font Mono"
---
# Why LLMs don't make decisions
---
layout: center
---
# The Narrative vs. The Reality
<div class="grid grid-cols-2 gap-12 mt-16 text-left">
<v-click>
<div class="border-l-4 border-purple-500 pl-6">
<h3 class="text-purple-400 text-2xl font-bold mb-2">The "Agentic" Narrative</h3>
<ul class="list-disc pl-4 text-gray-400 space-y-2">
<li>"The agent <span class="text-white">decided</span> to call the tool."</li>
<li>"The model <span class="text-white">assessed</span> the PRD."</li>
<li>"It <span class="text-white">chose</span> the execution path."</li>
</ul>
</div>
</v-click>
<v-click>
<div class="border-l-4 border-green-500 pl-6">
<h3 class="text-green-400 text-2xl font-bold mb-2">The Engineering Reality</h3>
<ul class="list-disc pl-4 text-gray-400 space-y-2">
<li>It is <span class="text-white">completing a pattern</span>.</li>
<li>It is <span class="text-white">statistically mapping</span> tokens.</li>
<li>It is <span class="text-white">following constraints</span>.</li>
</ul>
</div>
</v-click>
</div>
<v-click>
<div class="mt-12 text-center text-gray-400 italic">
"We mistake highly accurate mapping for decision making."
</div>
</v-click>
---
layout: center
---
# The Domino Analogy
<div class="mt-10">
<p class="text-2xl leading-relaxed">
"If I set up a long row of dominos... and the last domino falls and hits a bell..."
</p>
<v-click>
<div class="text-4xl font-bold text-red-400 mt-8 mb-8">
Did the last domino <span class="underline decoration-white">decide</span> to ring the bell?
</div>
</v-click>
<v-click>
<p class="text-xl text-gray-400">Of course not.</p>
</v-click>
</div>
---
layout: default
---
# The functional reality of LLMs
If we strip away the magic, an LLM is effectively a **pure, stateless function**.
```csharp {all|1|3-6|8}
ProbabilityDistribution PredictNext(int[] contextTokens, float[] fixedWeights)
{
// 1. Input: Static sequence of integers (Tokens)
// 2. Process: Fixed graph of matrix operations (Weights)
// Matrix Multiplication Magic...
return probabilities; // 3. Output: Probability scores
}
```
<div class="grid grid-cols-2 gap-8 mt-8">
<v-click>
<div class="bg-gray-800 p-4 rounded border-t-2 border-blue-400">
<div class="font-bold mb-1">No "Pondering"</div>
<div class="text-sm text-gray-400">There is no loop where it weighs pros and cons. It is a single, deterministic forward pass.</div>
</div>
</v-click>
<v-click>
<div class="bg-gray-800 p-4 rounded border-t-2 border-green-400">
<div class="font-bold mb-1">The "Choice" is External</div>
<div class="text-sm text-gray-400">The <b>Sampler</b> picks the token based on temperature. The model just provides the stats.</div>
</div>
</v-click>
</div>
---
layout: center
---
# Where the logic actually lives
<div class="flex flex-col items-center justify-center mt-8">
<div class="grid grid-cols-2 gap-4">
<div class="p-6 border border-gray-700 rounded-lg bg-gray-900 text-center">
<h3 class="text-blue-400 font-bold text-xl mb-2">Prompt Engineering</h3>
<p class="text-sm text-gray-400">Rigging the machine so it pays out the exact token we need 99% of the time.</p>
</div>
<div class="p-6 border border-gray-700 rounded-lg bg-gray-900 text-center">
<h3 class="text-green-400 font-bold text-xl mb-2">The Agentic Loop</h3>
<p class="text-sm text-gray-400">Engineering the context so the "next token" is useful JSON, not hallucinated poetry.</p>
</div>
</div>
</div>
---
layout: center
---
# Why the distinction matters
<div class="mt-8 space-y-6">
<v-click>
<div class="flex items-start gap-4">
<div class="bg-blue-500 text-white rounded-full w-8 h-8 flex items-center justify-center font-bold shrink-0">1</div>
<div>
<h3 class="text-xl font-bold text-blue-400">Constrain the Context</h3>
<p class="text-gray-400">Reduce the search space so the "right" token is the only probable one.</p>
</div>
</div>
</v-click>
<v-click>
<div class="flex items-start gap-4">
<div class="bg-purple-500 text-white rounded-full w-8 h-8 flex items-center justify-center font-bold shrink-0">2</div>
<div>
<h3 class="text-xl font-bold text-purple-400">Rig the Inputs</h3>
<p class="text-gray-400">Format prompts so the pattern that <i>needs</i> to be completed leads to your output.</p>
</div>
</div>
</v-click>
<v-click>
<div class="flex items-start gap-4">
<div class="bg-green-500 text-white rounded-full w-8 h-8 flex items-center justify-center font-bold shrink-0">3</div>
<div>
<h3 class="text-xl font-bold text-green-400">Verify the Output</h3>
<p class="text-gray-400">It didn't "choose" based on belief. It made a statistical guess. Always validate.</p>
</div>
</div>
</v-click>
</div>
---
layout: center
---
# Conclusion
<div class="text-2xl mt-10 mb-10 mx-auto text-gray-300">The "Decision" is just the inevitable result of the constraints and context <b>you</b> fed into the prediction engine.</div>
+101
View File
@@ -0,0 +1,101 @@
[Face to Camera]
"There is a dangerous idea spreading in software engineering right now. It's the idea that Large Language Models are 'Decision Makers'."
"We treat them like junior employees. We think they 'choose' to call a tool, or 'decide' how to fix a bug."
[Switch to Presentation]
"But today, I want to show you why that mental model is wrong—and how it leads to fragile software."
[CLICK]
"We need to distinguish between the Narrative and the Reality."
[CLICK]
"The narrative—the marketing fluff—says things like: 'The agent decided to call the tool.' Or 'The model assessed the PRD and chose a path.'"
"This language implies agency. It implies intent."
[CLICK]
"But the engineering reality is boring. The model is simply completing a pattern. It is statistically mapping tokens based on weights. It is following constraints we set."
[CLICK]
"We mistake highly accurate mapping for decision making."
[CLICK]
"Think of it this way."
"If I set up a long row of dominos... and the last domino falls and hits a bell..."
[CLICK]
"Did the last domino decide to ring the bell?"
[CLICK]
"Of course not. It just followed the physics of the environment I built."
"The 'decision' to ring the bell wasn't made by the domino. It was made by the person who set it up."
[CLICK]
"If we strip away the magic, an LLM is effectively a pure, stateless function."
[CLICK]
"You give it a static sequence of tokens."
[CLICK]
"It pushes those integers through a fixed graph of matrix operations."
[CLICK]
"And it returns a probability distribution. Not a choice. A list of percentages."
[CLICK]
"There is no 'pondering' inside that function. There is no while loop where it weighs the pros and cons. It is a single, deterministic forward pass."
[CLICK]
"The actual 'choice' happens outside the model. The Sampler picks the token based on temperature. The model didn't 'decide' to output a JSON bracket; it just assigned it a 99% probability because you rigged the prompt."
[CLICK]
"So if the model isn't deciding, where does the logic actually live?"
"It lives in two places."
"First, Prompt Engineering. This isn't 'whispering to AI'. It is rigging the slot machine so it pays out the exact token we need 99% of the time."
"Second, The Agentic Loop. We engineer the context so that the only statistically probable next token is useful JSON, not hallucinated poetry."
[CLICK]
"This distinction matters because it changes how you build software."
[CLICK]
"If you know it's not a decision maker, you focus on Constraining the Context. You reduce the search space so the 'right' token is the only probable one."
[CLICK]
"You Rig the Inputs. You format your prompts so the pattern that needs to be completed inevitably leads to your desired output."
[CLICK]
"And crucially, you Verify the Output. You never trust the model's 'belief', because it has none. It made a statistical guess. You must validate it."
[CLICK]
"The bottom line is this: The 'Decision' is just the inevitable result of the constraints and context you fed into the prediction engine."
"You are the decision maker. The model is just the domino."
"Thanks for watching."