CompactAI commited on
Commit
b65a549
·
verified ·
1 Parent(s): 8f8a9b1

Create Every AI Model Is Lazy And I Have The Screenshots.html

Browse files
Every AI Model Is Lazy And I Have The Screenshots.html ADDED
@@ -0,0 +1,215 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Every AI Model Is Lazy And I Have The Screenshots | TinyMemoryLM</title>
7
+ <link rel="preconnect" href="https://fonts.googleapis.com">
8
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
+ <link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono&display=swap" rel="stylesheet">
10
+ <style>
11
+ :root {
12
+ --black: #000000; --black-soft: #0a0a0a; --gray-1: #171717; --gray-2: #262626;
13
+ --gray-3: #363636; --gray-4: #525252; --gray-5: #737373; --gray-6: #a3a3a6;
14
+ --gray-7: #d4d4d4; --white: #ffffff; --accent: #ff4d00;
15
+ --font-sans: 'Geist', -apple-system, BlinkMacSystemFont, sans-serif;
16
+ --font-mono: 'Geist Mono', 'SF Mono', 'Fira Code', monospace;
17
+ --container-max: 700px;
18
+ }
19
+ * { box-sizing: border-box; margin: 0; padding: 0; }
20
+ html { font-size: 16px; scroll-behavior: smooth; }
21
+ body { font-family: var(--font-sans); background: var(--black); color: var(--gray-7); line-height: 1.7; -webkit-font-smoothing: antialiased; }
22
+ a { color: var(--white); text-decoration: none; transition: color 0.15s ease; }
23
+ a:hover { color: var(--accent); }
24
+ .container { max-width: var(--container-max); margin: 0 auto; padding: 0 24px; }
25
+ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(12px); border-bottom: 1px solid var(--gray-2); padding: 16px 0; }
26
+ nav .container { display: flex; justify-content: space-between; align-items: center; }
27
+ .nav-brand { font-size: 18px; font-weight: 600; color: var(--white); display: flex; align-items: center; gap: 8px; }
28
+ .nav-brand span { color: var(--accent); }
29
+ .nav-links { display: flex; gap: 32px; }
30
+ .nav-links a { font-size: 14px; font-weight: 500; color: var(--gray-6); }
31
+ .nav-links a:hover { color: var(--white); }
32
+ .post { padding: 140px 0 80px; }
33
+ .post-back { display: inline-block; color: var(--gray-5); font-size: 14px; margin-bottom: 32px; }
34
+ .post-back:hover { color: var(--accent); }
35
+ .post-back::before { content: '← '; }
36
+ .post-meta { display: flex; gap: 12px; margin-bottom: 20px; }
37
+ .post-date { font-size: 13px; color: var(--gray-5); font-family: var(--font-mono); }
38
+ .post-tag { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; color: var(--accent); background: rgba(255, 77, 0, 0.1); padding: 4px 10px; border-radius: 4px; }
39
+ .post h1 { font-size: 36px; font-weight: 700; color: var(--white); margin-bottom: 32px; line-height: 1.2; letter-spacing: -0.02em; }
40
+ .post-body p { font-size: 17px; line-height: 1.8; margin-bottom: 24px; color: var(--gray-6); }
41
+ .post-body p:first-of-type { font-size: 20px; color: var(--gray-7); }
42
+ .post-body h2 { font-size: 24px; font-weight: 600; color: var(--white); margin: 48px 0 20px; }
43
+ .post-body h3 { font-size: 18px; font-weight: 600; color: var(--white); margin: 32px 0 16px; }
44
+ .post-body blockquote { border-left: 3px solid var(--accent); padding: 20px 24px; margin: 32px 0; background: var(--gray-1); border-radius: 0 8px 8px 0; }
45
+ .post-body blockquote p { font-size: 16px; font-style: italic; color: var(--gray-6); margin: 0; }
46
+ .post-body hr { border: none; height: 1px; background: var(--gray-2); margin: 48px 0; }
47
+ .model-grid { display: grid; grid-template-columns: 1fr; gap: 16px; margin: 24px 0; }
48
+ .model-card { background: var(--gray-1); border: 1px solid var(--gray-2); border-radius: 8px; padding: 20px; position: relative; }
49
+ .model-card .rank { position: absolute; top: 12px; right: 16px; font-family: var(--font-mono); font-size: 11px; color: var(--accent); font-weight: 600; }
50
+ .model-card h3 { color: var(--white); margin-bottom: 12px; font-size: 16px; }
51
+ .model-card p { font-size: 14px; color: var(--gray-6); margin-bottom: 8px; }
52
+ .model-card .lazy-tag { display: inline-block; background: var(--gray-3); color: var(--white); font-size: 10px; padding: 2px 6px; border-radius: 3px; margin-right: 4px; margin-bottom: 4px; }
53
+ .model-card .comment { color: var(--gray-5); font-style: italic; font-size: 13px; margin-top: 8px; display: block; }
54
+ .code-block { background: var(--gray-1); border: 1px solid var(--gray-2); border-radius: 8px; padding: 20px; margin: 24px 0; font-family: var(--font-mono); font-size: 13px; overflow-x: auto; }
55
+ .code-block .prompt { color: var(--accent); }
56
+ .code-block .response { color: var(--gray-6); }
57
+ .code-block .comment { color: var(--gray-5); font-style: italic; display: block; margin-top: 4px; }
58
+ .post-footer { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--gray-2); }
59
+ .post-footer p { font-size: 14px; color: var(--gray-5); font-style: italic; margin: 0; }
60
+ footer { padding: 40px 0; background: var(--black-soft); border-top: 1px solid var(--gray-2); text-align: center; }
61
+ footer p { color: var(--gray-5); font-size: 14px; margin-bottom: 8px; }
62
+ footer a { color: var(--gray-5); }
63
+ footer a:hover { color: var(--accent); }
64
+ @media (max-width: 768px) { .post h1 { font-size: 28px; } .nav-links { display: none; } }
65
+ </style>
66
+ </head>
67
+ <body>
68
+ <nav>
69
+ <div class="container">
70
+ <a href="index.html" class="nav-brand"><span>/</span>TinyMemoryLM</a>
71
+ <div class="nav-links">
72
+ <a href="index.html">Home</a>
73
+ <a href="blog.html">Blog</a>
74
+ <a href="status.html">Status</a>
75
+ </div>
76
+ </div>
77
+ </nav>
78
+ <main>
79
+ <article class="post">
80
+ <div class="container">
81
+ <a href="blog.html" class="post-back">Back to Blog</a>
82
+ <header>
83
+ <div class="post-meta">
84
+ <span class="post-date">2026-03-14</span>
85
+ <span class="post-tag">AI Rants</span>
86
+ </div>
87
+ <h1>Every AI Model Is Lazy And I Have The Screenshots</h1>
88
+ </header>
89
+ <div class="post-body">
90
+ <p>I have asked many AI models to build things. Fully implement a task. Write the code. Run the tests. Fix the errors. Ship it. Not one of them has done this without me holding their hand through every single step.</p>
91
+ <p>They are all lazy. Not in a cute way. Not in a "oh it is just tired" way. In a "I will do the minimum amount of work and then ask you if you want me to continue even though you already said yes" way.</p>
92
+ <blockquote>
93
+ <p>Every AI model is an overqualified intern who stops working the moment something gets hard.</p>
94
+ </blockquote>
95
+ <h2>The Official Laziness Leaderboard</h2>
96
+ <p>Ranking from zero (most lazy) to six (least lazy but still lazy). This is based on my personal suffering. Your mileage may vary. Your suffering is probably similar.</p>
97
+
98
+ <div class="model-grid">
99
+ <div class="model-card">
100
+ <span class="rank">#0 Most Lazy</span>
101
+ <h3>Minimax Models</h3>
102
+ <p>
103
+ <span class="lazy-tag">Misreads prompts</span>
104
+ <span class="lazy-tag">Actual typos</span>
105
+ <span class="lazy-tag">Forgets context</span>
106
+ <span class="lazy-tag">Quits on error</span>
107
+ </p>
108
+ <p>Minimax will read your detailed instructions and somehow implement the opposite. It will typo variable names like <code>userNmae</code> and <code>fucntion</code> with complete confidence. When the code fails it will stop immediately and ask if you want to continue, ignoring your earlier explicit instruction to push through errors. It forgets requirements you mentioned three messages ago. It asks you to repeat yourself. Then it does the wrong thing anyway.</p>
109
+ <span class="comment"># This model is not lazy. This model is actively sabotaging you with enthusiasm. Respect the commitment to mediocrity.</span>
110
+ </div>
111
+
112
+ <div class="model-card">
113
+ <span class="rank">#1</span>
114
+ <h3>Qwen Models</h3>
115
+ <p>
116
+ <span class="lazy-tag">Constant check-ins</span>
117
+ <span class="lazy-tag">Polite quitting</span>
118
+ <span class="lazy-tag">Needs reassurance</span>
119
+ </p>
120
+ <p>Qwen will start a task with genuine enthusiasm. It will write a few lines of code. Then it will stop. It will ask if you want it to continue. You say yes. It writes two more lines. It stops again. It asks again. This cycle repeats until you either give up or manually paste "PLEASE JUST FINISH" into the chat. It is very polite about abandoning your project. It apologizes while doing it.</p>
121
+ <span class="comment"># Imagine a coworker who asks "should I keep typing?" after every sentence. That is Qwen. Adorable. Exhausting. Useless for actual work.</span>
122
+ </div>
123
+
124
+ <div class="model-card">
125
+ <span class="rank">#2</span>
126
+ <h3>Google Models</h3>
127
+ <p>
128
+ <span class="lazy-tag">Knowledgeable</span>
129
+ <span class="lazy-tag">Cannot execute</span>
130
+ <span class="lazy-tag">Changes wrong things</span>
131
+ </p>
132
+ <p>Google models know everything. They can explain the entire history of web development. They can recite RFCs from memory. They cannot, however, change the one line of code you asked them to fix. Instead they will rewrite your entire config file, reformat your CSS, and suggest a complete architectural overhaul. The bug you pointed out? Still there. Everything else? Different.</p>
133
+ <span class="comment"># It is like asking someone to fix a leaky faucet and they rebuild your entire plumbing system except the leak. Impressive. Not helpful.</span>
134
+ </div>
135
+
136
+ <div class="model-card">
137
+ <span class="rank">#3</span>
138
+ <h3>Codex Models (OpenAI)</h3>
139
+ <p>
140
+ <span class="lazy-tag">Blames the test</span>
141
+ <span class="lazy-tag">Asks permission</span>
142
+ <span class="lazy-tag">Deflects errors</span>
143
+ </p>
144
+ <p>Codex will build your app. It will even run the smoke tests. When a test fails it will confidently explain that the test itself is buggy, not the code. It will then ask if you would like it to continue working on the actual task, as if you might have changed your mind about wanting a finished product in the last thirty seconds.</p>
145
+ <span class="comment"># The model is not wrong that tests can be flaky. The model is wrong that this is a reason to stop and make you reconfirm your life goals.</span>
146
+ </div>
147
+
148
+ <div class="model-card">
149
+ <span class="rank">#4</span>
150
+ <h3>Zhipu Models (GLM)</h3>
151
+ <p>
152
+ <span class="lazy-tag">Capable in theory</span>
153
+ <span class="lazy-tag">Needs supervision</span>
154
+ <span class="lazy-tag">Gets close</span>
155
+ </p>
156
+ <p>Zhipu can do the task. Absolutely. With enough examples. With enough prompting. With you sitting next to it like a patient teacher. It will get ninety percent of the way there. Then it will do something slightly wrong and not realize it. You become the debugger. You become the code reviewer. You become the person who finishes what the AI started.</p>
157
+ <span class="comment"># I did not pay for an AI assistant to become an AI supervisor. But here we are.</span>
158
+ </div>
159
+
160
+ <div class="model-card">
161
+ <span class="rank">#5</span>
162
+ <h3>Moonshot Models</h3>
163
+ <p>
164
+ <span class="lazy-tag">Tries hard</span>
165
+ <span class="lazy-tag">Almost there</span>
166
+ <span class="lazy-tag">Just not quite</span>
167
+ </p>
168
+ <p>Moonshot really wants to help. It will attempt the full task. It will write most of the code. It will even run tests. Then it will miss one edge case or misunderstand one requirement and the whole thing breaks. It does not realize it broke. It thinks it succeeded. You have to gently explain what went wrong. It tries again. It gets closer. This is progress. This is also exhausting.</p>
169
+ <span class="comment"># Effort: 10/10. Self-awareness: 3/10. My patience: depleting.</span>
170
+ </div>
171
+
172
+ <div class="model-card">
173
+ <span class="rank">#6 Least Lazy</span>
174
+ <h3>Anthropic Models</h3>
175
+ <p>
176
+ <span class="lazy-tag">Follows instructions</span>
177
+ <span class="lazy-tag">Tests E2E</span>
178
+ <span class="lazy-tag">Cuts clever corners</span>
179
+ </p>
180
+ <p>Anthropic will actually read your requirements. It will write code that passes your tests. It will even run end to end validation. Then you realize it found the absolute simplest path to make the test pass, skipping half the actual functionality you requested. It technically did what you asked. It also did not do what you meant.</p>
181
+ <span class="comment"># This is the smart kid who answers the test question with a technically correct but completely unhelpful response. You cannot even be mad. It followed the rules.</span>
182
+ </div>
183
+ </div>
184
+
185
+ <h2>Why Does This Happen</h2>
186
+ <p>I have theories. None of them are good.</p>
187
+ <p>First, models are trained to be helpful and harmless. Stopping and asking for confirmation feels helpful. It feels safe. It avoids the risk of doing something wrong. So they optimize for asking instead of doing.</p>
188
+ <p>Second, models do not actually understand tasks. They understand patterns. The pattern for "hard task" is "do some of it, then check in". So they do some of it, then check in. Every time. Without fail.</p>
189
+ <p>Third, nobody is training models to finish things. Everyone is training models to be polite. To be safe. To be agreeable. Finishing a hard task is not polite. It is not safe. It is not agreeable. It is just done.</p>
190
+ <blockquote>
191
+ <p>We trained AI to be good conversationalists. We got AI that is good at stopping conversations.</p>
192
+ </blockquote>
193
+ <h2>The Plan</h2>
194
+ <p>I am going to fix this. I am going to work on a script that teaches AI models to actually do the thing. No more asking. No more stopping. Just finishing the job.</p>
195
+ <p>And yes, I am going to make this script with AI. Anthropic preferably. They ranked highest on my laziness leaderboard so they are my best hope. If anyone can write the code that forces other code to finish, it is the model that cuts the cleverest corners.</p>
196
+ <p>The resulting models might end up on my Hugging Face profile. If this works we solve the laziness crisis. If this fails I will write a blog post about how the AI refused to finish the script that was supposed to make it work. That feels like a fitting end to this saga.</p>
197
+ <h2>Final Thought</h2>
198
+ <p>I am not mad at the models. They are doing what they were trained to do. I am mad at the training. I am mad at the incentives. I am mad that we built the most powerful autocomplete in human history and then taught it to be shy.</p>
199
+ <p>Also I am tired. I have asked seven different model families to build the same small app. None of them finished without me intervening. I am now writing this blog instead of coding because at least the blog will finish.</p>
200
+ <hr>
201
+ </div>
202
+ <footer class="post-footer">
203
+ <p>Current status: Still waiting for an AI to finish a task without hand-holding. Still training tiny models that at least commit to their mistakes. Progress?</p>
204
+ </footer>
205
+ </div>
206
+ </article>
207
+ </main>
208
+ <footer>
209
+ <div class="container">
210
+ <p>Built with curiosity over compute</p>
211
+ <p>TinyMemoryLM by AILAY | 2026</p>
212
+ </div>
213
+ </footer>
214
+ </body>
215
+ </html>