YouTube2Text

Don't Buy a GPU Instead Build This 32GB Free AI Server Instead — Transcript

by Kai · 2,600 words · 377 segments · language en · Watch on YouTube

Full transcript

  1. 0:00Okay, so picture this. It's 2:00 a.m.
  2. 0:03I'm sitting at my desk with my coffee
  3. 0:05gone cold and my laptop fan sounds like
  4. 0:07it is trying to take off from a runway
  5. 0:09all because I'm trying to run a halfway
  6. 0:11decent AI model locally. And it's not
  7. 0:14even working since it is putting out two
  8. 0:16tokens per second, which is not even a
  9. 0:18speed so much as a medical condition.
  10. 0:21And then I made the mistake of opening
  11. 0:22Twitter where someone was flexing their
  12. 0:24RTX 5090 setup with something like, "Oh,
  13. 0:27yeah, 200 tokens a second, silky smooth,
  14. 0:31totally worth the five grand."
  15. 0:33But five grand for a graphics card is
  16. 0:35real money that I just don't have
  17. 0:37sitting around to make an AI go brrr on
  18. 0:39my laptop. So, I went down the YouTube
  19. 0:41rabbit hole like any reasonable person
  20. 0:43does and that is where I found the
  21. 0:45video. You've probably seen it, too,
  22. 0:48since it's called build a free 32 GB AI
  23. 0:51server with two Tesla T4s, $0. It has
  24. 0:55260,000 views and the comments are going
  25. 0:57crazy with lines like "This changed my
  26. 1:00life. I can't believe this is free and
  27. 1:02my RTX 3090 is crying." And honestly, I
  28. 1:05believed that enough to spend an entire
  29. 1:07Sunday setting it up, getting it
  30. 1:09running, and feeling like a genius right
  31. 1:12before reality hit like a cold shower.
  32. 1:14Now, that is exactly what we are going
  33. 1:16to talk about today. There is a lot more
  34. 1:19to the story than the thumbnail tells us
  35. 1:21including something on that exact same
  36. 1:23free menu that literally nobody picked
  37. 1:26and it absolutely destroys the T4 setup.
  38. 1:29So, let's get into it. So, first, let's
  39. 1:32walk through what this whole free 32 gig
  40. 1:35AI server thing actually is in case you
  41. 1:37haven't seen those videos. There is a
  42. 1:39platform called Kaggle, which is
  43. 1:41Google's data science playground and
  44. 1:43basically where data nerds go to train
  45. 1:45models and compete in ML competitions.
  46. 1:48And Kaggle has this absolutely wild free
  47. 1:51tier where you verify a phone number,
  48. 1:53just a phone number, and get about 30
  49. 1:56GPU hours per week for free with no
  50. 1:59credit card, no trial, nothing. And one
  51. 2:02of the options on that menu is GPU T4
  52. 2:05X2, which is two Nvidia Tesla T4 cards
  53. 2:09at 16 gigs each. So, 32 gigs of VRAM
  54. 2:12total. Now, on that hardware, people
  55. 2:14have been running Qwen 3, specifically
  56. 2:16the 27 billion parameter version. And
  57. 2:18that is a serious model, Apache
  58. 2:20licensed, out since August, and
  59. 2:22downloaded 6.8 million times on Hugging
  60. 2:26Face in a single month. So, it can code,
  61. 2:29it can reason, and it is the real deal.
  62. 2:31The workflow this video show is to spin
  63. 2:33up the Kaggle notebook, download the
  64. 2:35model through Ollama, punch a hole
  65. 2:37through Cloudflare to make it public,
  66. 2:39and paste that URL into a coding agent
  67. 2:42like Cloud Code or Hermes. At that
  68. 2:44point, we have a free 32-gig AI server
  69. 2:46that we can point a whole workflow at.
  70. 2:49And the comparison they always make is
  71. 2:51free versus a $1,300 graphics card. So,
  72. 2:55free wins before the video even starts,
  73. 2:57right?
  74. 2:58That is also exactly where the story
  75. 3:00starts to get interesting. I remember
  76. 3:02watching the benchmark and Dev Zone X
  77. 3:04video, which showed 16 tokens per
  78. 3:06second, and thinking it wasn't blazing
  79. 3:08fast, but it was workable enough to ship
  80. 3:10code with. But once I actually started
  81. 3:12using it as a daily coding server,
  82. 3:15something started to feel off.
  83. 3:17Two GPUs sounds like two GPUs. So,
  84. 3:20wouldn't you expect double the power or
  85. 3:22at least twice the speed of one card?
  86. 3:25But that is not what actually happens
  87. 3:26here. The model file for Qwen 3 27B at
  88. 3:304-bit quantization is about 17 GB, while
  89. 3:33each T4 on Kaggle gives us 15.3 GB of
  90. 3:37usable VRAM. So, the file doesn't fit on
  91. 3:40one card, and what Ollama does instead
  92. 3:42is split the model across both cards by
  93. 3:45layers, where half the model lives on
  94. 3:47card one and half on card two. Now, to
  95. 3:49generate one token, card one reads its
  96. 3:52half of the weights while card two sits
  97. 3:54there doing nothing. Then it hands off
  98. 3:56the result and card two reads its half
  99. 3:59while card one sits there doing nothing
  100. 4:01and only then do we get one token. It's
  101. 4:04a relay race, not a team lift. Engineers
  102. 4:07call this a layer split, which means two
  103. 4:09T4s give us the capacity of two cards
  104. 4:12and the speed of exactly one. The T4
  105. 4:14itself launched in 2018 and it moves 320
  106. 4:18GB per second through its memory bus, so
  107. 4:21that is really our ceiling here and
  108. 4:23DevZoneX measured 16.23 tokens per
  109. 4:26second with multi-token prediction on
  110. 4:29and one commenter said they could not
  111. 4:30get past 18, which is not a coincidence,
  112. 4:33it is physics. Now, 16 to 18 tokens per
  113. 4:36second for writing code is survivable
  114. 4:39and I've used worse, but the part that
  115. 4:41absolutely destroyed me when I figured
  116. 4:43it out is the thing nobody in those
  117. 4:45tutorial videos mentions. And every time
  118. 4:47I'd fire up my coding agent and give it
  119. 4:49a task,
  120. 4:50there'd be this pause. At first I blamed
  121. 4:53the tunnel or maybe my internet being
  122. 4:55weird, so I refreshed and waited and
  123. 4:58nothing happened until the words
  124. 4:59suddenly showed up. What's happening
  125. 5:01during that silence is called prefill.
  126. 5:04Before a model writes a single word
  127. 5:06back, it has to read everything we sent
  128. 5:08it, which includes the message, the
  129. 5:10attached files, the previous
  130. 5:12conversation and the agent's system
  131. 5:15prompt. And the system prompts in tools
  132. 5:17like Claude Code are reportedly around
  133. 5:1930,000 tokens before anyone has even
  134. 5:21typed a single word. Reading is a
  135. 5:23different kind of work than writing,
  136. 5:25since it's math-heavy rather than
  137. 5:27memory-bound, and the T4 has 65
  138. 5:30teraflops of compute for this. So when
  139. 5:32we scale the numbers for a 27B model, we
  140. 5:34are looking at roughly 325 tokens per
  141. 5:37second during prefill. That puts a
  142. 5:3930,000 token agent prompt at about 92
  143. 5:42seconds of complete silence before the
  144. 5:44first word comes out. And the beautiful
  145. 5:46part is that Cloudflare's quick tunnel,
  146. 5:49the one every single one of these
  147. 5:51tutorials uses, automatically kills any
  148. 5:54request that hasn't responded in 100
  149. 5:56seconds. That is the timeout limit on
  150. 5:58their free tier, and it can't be changed
  151. 6:00below their enterprise plan. So, we've
  152. 6:02got 92 seconds of prefill and 100
  153. 6:05seconds before Cloudflare gives up and
  154. 6:07throws a 524 error, which leaves us 8
  155. 6:10seconds of margin. One of the creators,
  156. 6:12A Stud TY, literally says in their own
  157. 6:15video that the first message might time
  158. 6:17out and to just send it again. And if we
  159. 6:19scroll through the comments on these
  160. 6:20videos, there is a greatest hits
  161. 6:23collection of 502 errors, 504 errors,
  162. 6:27and provider unavailable. So, it is not
  163. 6:30actually broken. It's just math on a
  164. 6:32whiteboard that nobody drew for us.
  165. 6:34And this is where I had my own no
  166. 6:36moment, since I was actually planning to
  167. 6:38use this for my day-to-day work. I've
  168. 6:40been thinking about it as a GPU, when
  169. 6:42really it is a quota.
  170. 6:44We get about 30 GPU hours a week, and
  171. 6:47Kaggle caps a single session at 12
  172. 6:49hours. And if we walk away from the
  173. 6:51laptop and the session goes idle, which
  174. 6:53happens in as little as 20 minutes, the
  175. 6:55whole thing dies, including the model
  176. 6:57download, Ollama, the Cloudflare tunnel,
  177. 7:00and the URL we pasted into the agent.
  178. 7:02And the next time we start, we get a
  179. 7:04completely new URL, so the config needs
  180. 7:07updating again.
  181. 7:08Some people in the comments say each
  182. 7:10cold start costs them 15 minutes, and
  183. 7:12some say 30, and those minutes come out
  184. 7:14of a 30-hour weekly quota, too. So, I
  185. 7:17did the math the thumbnails don't want
  186. 7:18us to do. Now, 30 hours a week is
  187. 7:21108,000
  188. 7:23seconds. At 16.23 tokens per second, if
  189. 7:27the server was generating tokens
  190. 7:28literally every single second with no
  191. 7:31setup time, no idle time, and no reading
  192. 7:34time, it would produce about 1.75
  193. 7:37million tokens in a week. Now, that same
  194. 7:41model, Qwen 327B, is sold on OpenRouter,
  195. 7:45where about 20 different companies host
  196. 7:47it. And the average price customers
  197. 7:49actually paid is $2.46 per million
  198. 7:52output tokens, and 1.75 million tokens *
  199. 7:56$2.46
  200. 7:57is $4.31.
  201. 7:59So, our free server, at the absolute
  202. 8:01best case with every second perfectly
  203. 8:04optimized, is worth $4.31 a week. And
  204. 8:07the $4.31 version doesn't time out,
  205. 8:10doesn't need a phone number, and doesn't
  206. 8:12die when we close a tab. That is the
  207. 8:14comparison I really needed to see from
  208. 8:16the beginning. Now, this next part
  209. 8:19genuinely annoyed me when I discovered
  210. 8:21it, because it's sitting right there on
  211. 8:22the same page, and somehow nobody in the
  212. 8:25whole wave of 32 gig server videos
  213. 8:27picked it. If we scroll down on the
  214. 8:29Kaggle accelerator menu, below the T4
  215. 8:32pair, there is another free option that
  216. 8:34says TPU VM. That is eight of Google's
  217. 8:37own TPU chips with 16 gigs of HBM each,
  218. 8:41so 128 GB total. And each chip moves
  219. 8:44about 800 GB per second, 2 and 1/2 times
  220. 8:47the T4's memory bandwidth, with 197
  221. 8:51teraflops of 16-bit math per chip.
  222. 8:54Until August, there was actually a good
  223. 8:55reason nobody was using it for this,
  224. 8:58because Qwen-3 uses a type of attention
  225. 9:00that TPU software could not handle. But
  226. 9:03in August, vLLM's TPU backend added
  227. 9:06support for it in version 0.28.0.
  228. 9:10And shortly after, a project called
  229. 9:12Kaggle TPU Lab put everything together,
  230. 9:15and it is MIT licensed and sitting on
  231. 9:18GitHub with about 579 stars. What it
  232. 9:21runs is Qwen-327B
  233. 9:23at full 16-bit precision, not the 4-bit
  234. 9:26quantized version that fits on the T4s,
  235. 9:28but the full 55.6 GB model with the full
  236. 9:32262,000 token context window.
  237. 9:35And the numbers from the project's own
  238. 9:37benchmarks are kind of embarrassing for
  239. 9:39the T4 setup. Writing speed is around
  240. 9:42130 tokens per second against the T4
  241. 9:45pair 16, so that is eight times faster.
  242. 9:48Prefill, the reading speed, comes in at
  243. 9:51about 10,300 tokens per second against
  244. 9:54roughly 325 on the T4 pair, which makes
  245. 9:58it 30 times faster.
  246. 10:00So that 30,000 token agent prompt that
  247. 10:02takes 92 seconds of silence on the T4s
  248. 10:05takes about 3 seconds on the TPU. It
  249. 10:08also hands out an API key, so the
  250. 10:09endpoint is actually secured, and the
  251. 10:11whole thing is live about 22 minutes
  252. 10:13after pressing run. And it's the same
  253. 10:15free quota page, the same phone
  254. 10:18verification, and the same notebook
  255. 10:20format. Just a different drop-down menu
  256. 10:22option that literally nobody in 260,000
  257. 10:25views clicked. Now, to be fair, this is
  258. 10:28not about swapping one set of hype for
  259. 10:30another because both of these setups,
  260. 10:33the T4s and the TPU, come with real
  261. 10:35catches that nobody reads out in any of
  262. 10:38these tutorials. The first catch is
  263. 10:40Kaggle's acceptable use policy. The
  264. 10:42version in force since June 2025
  265. 10:45explicitly lists server farming and
  266. 10:48activity unrelated to ML data science as
  267. 10:51abuse of their resources. And when it
  268. 10:53comes to wiring a Cloudflare tunnel to a
  269. 10:55notebook and running a keep-alive script
  270. 10:57to dodge the idle timer, one Reddit
  271. 11:00builder who published exactly this setup
  272. 11:02called it a gray area. We could not find
  273. 11:05a documented ban, but it is still your
  274. 11:07account and it's still their rules.
  275. 11:09The second catch is that it is not
  276. 11:11local, even though every thumbnail says
  277. 11:14free local AI. The moment the code goes
  278. 11:16through a Cloudflare tunnel to Google
  279. 11:18servers, it stopped being local. And
  280. 11:20Cloudflare themselves say quick tunnels
  281. 11:22are for testing and development with no
  282. 11:25uptime guarantee. That matters because
  283. 11:28the one real reason to run AI locally is
  284. 11:31keeping code private and off someone
  285. 11:32else's machine. And that is exactly what
  286. 11:35this setup can't give us.
  287. 11:37One commenter summed it up perfectly
  288. 11:38with free local AI look inside VPS,
  289. 11:42which is really just a VPS with extra
  290. 11:44steps.
  291. 11:45The third catch is that the defaults on
  292. 11:47the T4 tutorials are genuinely kind of
  293. 11:50chaotic. Ollama has no login out of the
  294. 11:52box, and most tutorials put it behind a
  295. 11:55public link with no API key, so the URL
  296. 11:58is essentially the password. And the
  297. 12:00model most of them pull is an uncensored
  298. 12:02reupload from a single hugging face
  299. 12:04account rather than Qwen's official
  300. 12:06file. And the TPU project also wants a
  301. 12:09Kaggle API token to launch from a
  302. 12:11terminal, but it's open source, so we
  303. 12:13can read every line before handing that
  304. 12:15over, and we should.
  305. 12:17Now, I've been sitting on this for a
  306. 12:18while, and I think the honest answer is
  307. 12:21more nuanced than the thumbnail suggest.
  308. 12:23The free Kaggle setup, T4s or TPU, is
  309. 12:27genuinely perfect for learning. If the
  310. 12:29goal is understanding how an inference
  311. 12:31server works, how to split a model
  312. 12:33across cards, how to configure Ollama,
  313. 12:36and how to set up a tunnel, this is an
  314. 12:38amazing sandbox. We install the engine,
  315. 12:41watch things break, and fix them. And
  316. 12:43nothing we own gets hot, which is
  317. 12:45genuinely valuable. It is also what
  318. 12:47Kaggle was built for, which is training
  319. 12:49and evaluating models. Batch jobs,
  320. 12:52fine-tuning, running 500 prompts through
  321. 12:55a model for an eval, and saving the
  322. 12:57output aren't a gray area at all.
  323. 12:59Because that is the exact thing the
  324. 13:01platform is designed around. And for a
  325. 13:04student with no budget and no credit
  326. 13:05card, the TPU route gives something
  327. 13:08real. A strong coding model running at
  328. 13:10130 tokens a second, API key and all, 20
  329. 13:14hours a week, completely free. For a lot
  330. 13:17of people in a lot of places, that is
  331. 13:19not a rounding error, but a meaningful
  332. 13:21tool. But for a daily coding workflow
  333. 13:24that just works, where we open the
  334. 13:26laptop at 9:00 a.m. and the agent
  335. 13:27responds immediately, a full week of
  336. 13:30this free server is worth less than
  337. 13:32lunch. The hosted version of the same
  338. 13:34model, on Cerebras, for example, runs at
  339. 13:37618 tokens a second for $1.49
  340. 13:42per million tokens. At that price, the
  341. 13:4430-hour weekly Kaggle quota, converted
  342. 13:47to tokens, costs less than five bucks.
  343. 13:49So, buy $5 of credit and move on.
  344. 13:52And if the real reason for wanting local
  345. 13:54AI is that the code literally cannot
  346. 13:57leave the machine because of security,
  347. 13:59compliance, an NDA, whatever, then every
  348. 14:03option in this video is out, including
  349. 14:05the free ones. That is the actual reason
  350. 14:08to own hardware, and it's a completely
  351. 14:10legitimate reason. So, after all of
  352. 14:12this, where I actually landed is pretty
  353. 14:14simple. If you want free, skip the 2T4s,
  354. 14:17run the TPU recipe, and treat it like a
  355. 14:19lab you open for an afternoon rather
  356. 14:21than a server you leave running. If you
  357. 14:23code every day, point your harness at
  358. 14:25the hosted model because a full week of
  359. 14:28the free server is worth $4.31.
  360. 14:31That is two cups of coffee, and one of
  361. 14:33them will go cold while the agent prompt
  362. 14:35pre-fills. And buy the GPU the day your
  363. 14:38code is not allowed to leave your desk
  364. 14:40because until that day, free is just
  365. 14:42someone else's computer with a timer on
  366. 14:44it. If this broke the way you were
  367. 14:45thinking about this whole thing, then
  368. 14:47good. That was the point. Drop a comment
  369. 14:49if you've actually tried either setup
  370. 14:51because I want to know what your real
  371. 14:53numbers looked like. And if you haven't
  372. 14:54subscribed yet, that is fine, but you
  373. 14:56probably should since next time we are
  374. 14:58going to look at what actually makes
  375. 15:00sense for a coding workflow when you're
  376. 15:01not made of money. So, I'll see you
  377. 15:03then.

About this transcript

This page contains the full transcript of Don't Buy a GPU Instead Build This 32GB Free AI Server Instead by Kai, generated from the public captions YouTube serves with the video. The transcript has 2,600 words across 377 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to choose a caption track available on the video.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, caption language selection, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.