YouTube2Text

LLM Battle 9 - Cyber-Tiel-Coder vs Qwen — Transcript

by No place like localhost · 7,032 words · 987 segments · language en · Watch on YouTube

Full transcript

  1. 0:00For whatever reason, we never got a
  2. 0:01Quinn 3.8 35B A3B. We got a Quinn 3.8
  3. 0:0527B dense, which is great, but uh kind
  4. 0:07of slow and uh a little bit difficult to
  5. 0:09run on low VRM setups. And we got a
  6. 0:11Quinn 3.8 Flash next, which is
  7. 0:13presumably great, but huge and very
  8. 0:15difficult to run in low VRM setups.
  9. 0:16Although, stay tuned for tomorrow's
  10. 0:18episode for a possible answer to that
  11. 0:20one. What we're missing is a a mixture
  12. 0:23of experts version of this new model in
  13. 0:25that size range in the 25 to 35 billion
  14. 0:27parameter range. Something that can run
  15. 0:29well even in constrained environments
  16. 0:31and something which is much faster than
  17. 0:32a dense model. Uh up until now we've
  18. 0:34been looking at post trains and
  19. 0:36finetunes on top of coin 3.6 35b3b and
  20. 0:40there are a couple of decent ones out
  21. 0:41there but uh it feels like that's a
  22. 0:42generation out of date. Can we get
  23. 0:44something that has the smarts of coin
  24. 0:453.8 and the speed of a mixture of
  25. 0:47experts model? Let's take a look at some
  26. 0:49of the alternatives in this range.
  27. 0:59>> Okay. What I wanted to do is take two
  28. 1:01new models and put them headto-head
  29. 1:02against Quen 3.6 35B A3B because that's
  30. 1:06our baseline. The first model we were
  31. 1:07going to look at is called Zing. I have
  32. 1:10no idea if I'm pronouncing that
  33. 1:11correctly or not, but I like saying it's
  34. 1:12Zing. It's a great name. Unfortunately,
  35. 1:15I just found out that Zing is waiting on
  36. 1:17a pull request to be merged into
  37. 1:18lambda.cpp. The architecture is not yet
  38. 1:21supported, so I can't actually run it in
  39. 1:22my lambda.cpp build. So, all right,
  40. 1:24Zing's out already. We'll we'll have to
  41. 1:26put Zing on the back burner. We'll
  42. 1:27revisit Zing in a future episode. So,
  43. 1:29that only leaves one. It's been
  44. 1:31suggested by many viewers. It's called
  45. 1:32Cyber Teal Coder 35b A3B. This is not a
  46. 1:35fine tune or a derivative of Quen 3.6.
  47. 1:39This is actually based on ornith 1.5
  48. 1:4335b3b sort of. If we look at the
  49. 1:45description here, they for whatever
  50. 1:48reason they didn't base this uh cyber
  51. 1:50teal coder model on the base model of
  52. 1:52ornith 1.5. They started from an
  53. 1:54obliterated version of 1.535b3b
  54. 1:58which itself was based on the ornith 1.5
  55. 2:00base model. So we're two levels removed
  56. 2:02now from the from the ornith base model.
  57. 2:04Uh but we've looked at that base model
  58. 2:06that ornith 1.5 35b3b. We've looked at
  59. 2:08that on this channel before and it did
  60. 2:09quite all right in the last time we we
  61. 2:10looked at it as opposed to the Ornith 9B
  62. 2:13version which did not do so well. Don't
  63. 2:14don't make me play that clip again. It's
  64. 2:17live roads eating frame zero.
  65. 2:23Uh okay. So if we look at the
  66. 2:25description of uh Cyber Teal Coder,
  67. 2:27there's a big disclaimer up front
  68. 2:28saying, you know, cuz it's obliterated
  69. 2:30you it could do harmful things. I what
  70. 2:33what are we going to do here that's
  71. 2:34harmful? I don't I don't even know.
  72. 2:35We're we're putting it to coding tasks,
  73. 2:37right? I mean, I guess if you're doing
  74. 2:38security penetration testing of your own
  75. 2:40stuff, you want to make sure your stuff
  76. 2:41is secure and a regular model might
  77. 2:43refuse to do it because it thinks you're
  78. 2:44some kind of evil hacker. That's the
  79. 2:45only that's the only reason I can think
  80. 2:47of to use an obliterated model. If I'm
  81. 2:48wrong, you know, send me straight in the
  82. 2:50comments below. I don't know why people
  83. 2:51are big on these obliterated models, but
  84. 2:53maybe it's just me. Uh, okay. So, Cyber
  85. 2:57Teal, apparently, according to their
  86. 2:59their Hugging Face page, it outcodes
  87. 3:00every other 35BAB
  88. 3:03uh and even spring of 2026 Frontier
  89. 3:05models. That's a very bold claim. Uh,
  90. 3:08and they also claim to be three to four
  91. 3:10times faster than 3.827 dense. That's
  92. 3:12kind of a low bar to hit because a dense
  93. 3:13model of course is going to be much
  94. 3:14slower than an MOE model. So, all right.
  95. 3:17All right. Let's keep an open mind. Uh,
  96. 3:19if we look for recommended settings here
  97. 3:22somewhere,
  98. 3:24we get temperature 6, top P 0.95, top
  99. 3:26K20, min.
  100. 3:29And if we go and take a look at what
  101. 3:30I've got here, yep, it matches exactly.
  102. 3:32I've got downloaded this at Q5 and we're
  103. 3:34going to run with 192,000 tokens of
  104. 3:35context. Uh so let's start up Cyber Teal
  105. 3:40and slide over to Envy Top as it loads.
  106. 3:43And we see that we are using 10 12 gigs
  107. 3:46out of 12 on card one and 19 1/2 or so
  108. 3:49out of 24 on card 2. So I think we're
  109. 3:51comfortably in VRAM even with 192,000
  110. 3:53tokens of context and this is an MOE
  111. 3:55model. So I'm expecting this is going to
  112. 3:56be blazing fast. Uh, so we're going to
  113. 3:59run our challenge first with Cyber Teal
  114. 4:02and then with our uh I guess Quen 3.6 35
  115. 4:05A3B will be the reigning champ, the
  116. 4:07defending champ, let's say, and we'll
  117. 4:09see which one does a better job of this
  118. 4:11uh of this task. So, what is the task
  119. 4:13for today? We're going to try something
  120. 4:15a little bit different. Normally, when
  121. 4:16I'm evaluating a model or doing a battle
  122. 4:18episode on this channel, I like to come
  123. 4:19up with a coding task. I want the thing
  124. 4:21to actually generate code for me because
  125. 4:23that's what I do. My primary use case
  126. 4:25for local LLMs is to to generate code.
  127. 4:28But there's other stuff that they can
  128. 4:29do. Uh so what I thought I thought we
  129. 4:31tried something a little bit different
  130. 4:32this time around. I'm going to put two
  131. 4:34challenges in front of each of these
  132. 4:36models. Challenge number one, we're
  133. 4:38going to do an in-depth code review of a
  134. 4:40feature that was just implemented from a
  135. 4:41complicated spec doc. And we're going to
  136. 4:43see what quality of review we get from
  137. 4:46uh from both models. Does one model find
  138. 4:49stuff that the other model misses? Do I
  139. 4:51get better, more niggly feedback from
  140. 4:53one than the other? And how long does it
  141. 4:54take? Uh we're going to compare. The two
  142. 4:56models we're comparing are both models,
  143. 4:59so uh they should get about the same
  144. 5:01tokens per second on my hardware.
  145. 5:02They're both at Q5. They're both have
  146. 5:04the same context window. So
  147. 5:07everything should be this should be a
  148. 5:08level playing field, and it's going to
  149. 5:10be interesting to me to see how well or
  150. 5:12how poorly these models uh perform
  151. 5:14relative to one another. So let's take a
  152. 5:17quick look at this monster spec
  153. 5:19document. This was for a project I've
  154. 5:21got on the go called Dusted Dominion.
  155. 5:22It's a new game. It's very early in
  156. 5:24development, so there's nothing we can
  157. 5:26actually show and play yet. But, uh,
  158. 5:28this spec doc is to introduce a, uh, a
  159. 5:31custom UI, uh, widget library. Uh, just
  160. 5:35really briefly, I know that there's, you
  161. 5:36know, pre-made libraries out there you
  162. 5:37can use. Like Pygame, GUI is a good one.
  163. 5:39Uh, there's a there's a whole bunch to
  164. 5:41choose from, but I thought because my
  165. 5:42requirements are pretty specific and
  166. 5:44because I like, you know, generating
  167. 5:46code, I thought, you know, we'll just
  168. 5:47roll our own. How hard could it be,
  169. 5:48right? So, so let's take a look at this
  170. 5:51spec real quick. Uh, the game needs a
  171. 5:53way to define and render UI widgets with
  172. 5:55optional color style theme support. And
  173. 5:57this particular spec doc introduces just
  174. 5:59one widget type just as an example, just
  175. 6:01as a proof of concept really to to prove
  176. 6:03out that the framework uh, you know, it
  177. 6:05works. We're going to introduce a
  178. 6:07button, which is about the simplest
  179. 6:08control I can think of that actually
  180. 6:09does something. Uh, and in future
  181. 6:11specifications, we'll introduce
  182. 6:12additional widgets as we need them.
  183. 6:14Great. Uh, theme configuration will
  184. 6:16allow you to set different colors
  185. 6:17depending on the state of each widget.
  186. 6:19So, if it's normal, if it's selected, if
  187. 6:21you're hovering over it with the mouse,
  188. 6:22or if it's disabled, it's all those are
  189. 6:24all different styles. Great. Uh, then I
  190. 6:26do a little bit of code prototyping here
  191. 6:29in the spec doc just to uh get it
  192. 6:31started. Uh, we've got a a base widget
  193. 6:33class, which all widgets are going to
  194. 6:34extend. We've got a base UI manager
  195. 6:36class. It's going to manage all of our
  196. 6:37widgets and handle rendering them. Uh,
  197. 6:39we're not going to use a layout engine.
  198. 6:40We're just going to use absolute
  199. 6:41layouts. I know I'm being a little bit
  200. 6:42lazy here, but I just want to get it up
  201. 6:44and running. Uh, and then I just I talk
  202. 6:46about how we're handling themes. I talk
  203. 6:48about, you know, can we can disable a
  204. 6:49widget. I talk about uh we're going to
  205. 6:52because the game supports multiple
  206. 6:53resolutions. We're going to use a design
  207. 6:54resolution of 1920 x 1080. So all
  208. 6:56internally the game will always specify
  209. 6:58coordinates based on that and then we'll
  210. 6:59scale it up or down based on the
  211. 7:00resolution. All of our supported
  212. 7:01resolutions are 16x9. So this is kind of
  213. 7:03a a cheap way of doing that. That's uh
  214. 7:06not going to introduce any problems. If
  215. 7:07we introduce a non-69 aspect ratio,
  216. 7:09we're going to have to rethink this, but
  217. 7:10it's fine for now. And then I talk about
  218. 7:12the supplied widget that's included in
  219. 7:13the spec. It's just a button. You can
  220. 7:15click it. It's got a label and an
  221. 7:16optional icon and you can click it and
  222. 7:18it does stuff. That's fine. Uh then we
  223. 7:20talk about unit tests and uh we talk
  224. 7:21about acceptance criteria. Uh our open
  225. 7:24questions were all resolved and uh I
  226. 7:26also did a little uh dev plan so we
  227. 7:28could stage the implementation cuz uh
  228. 7:30it's at that size where if you try to
  229. 7:32oneshot this, it's a bit too much. We've
  230. 7:33already done this. This this is already
  231. 7:34implemented. The code already exists.
  232. 7:36We're not going to be building this
  233. 7:36today. It's already built. What we're
  234. 7:38going to do is get our models to review
  235. 7:40the code that was built against this
  236. 7:42spec doc and tell me if there's any gaps
  237. 7:43or deficiencies. I've already reviewed
  238. 7:46it with both Quen 3.827B and GitHub
  239. 7:50Copilot, so I'm reasonably sure that
  240. 7:52this code is a good implementation of
  241. 7:53this spec, but let's see what we find
  242. 7:55out. You can always be surprised, right?
  243. 7:56Okay, so that's task one. We're going to
  244. 7:58review uh we're going to do an in-depth
  245. 8:00code review. It's going to have to dive
  246. 8:01into the codebase, take a good look at
  247. 8:03the code, and compare it to the spec
  248. 8:05doc, and tell me if we hit the target or
  249. 8:06not. That's that's challenge one. Uh if
  250. 8:08we get past challenge one with both
  251. 8:10models and we're going to move on to
  252. 8:11challenge two uh challenge two will be
  253. 8:14to uh do a review a spec review of a
  254. 8:17proposed feature that is not yet
  255. 8:18implemented. And we're not going to
  256. 8:19actually get to the point I think uh
  257. 8:20maybe we do maybe the models are both
  258. 8:22super fast. Maybe we get to the point
  259. 8:23where we can actually implement that
  260. 8:24spec doc. But challenge two officially
  261. 8:27at the time that I'm filming this is
  262. 8:28just we're going to do this spec review
  263. 8:31uh for feasibility and uh for uh you
  264. 8:35know consistency. Are there any
  265. 8:36contradictions in this spec doc? Are
  266. 8:37there any problems with it if we were to
  267. 8:39give you this spec doc for
  268. 8:40implementation? Would you be able to
  269. 8:41implement it is the question I'm trying
  270. 8:42to answer here. I've already been
  271. 8:44through a couple of passes of the spec
  272. 8:45doc with Quen. So, I think it's
  273. 8:47reasonably locked down, but there's
  274. 8:48still a few things that I think could be
  275. 8:49nailed down. So, this will be
  276. 8:50interesting to see what these models
  277. 8:52come up with, if they can come up with
  278. 8:53anything. Uh, okay. So, we've got Cyber
  279. 8:57Teal Coder loaded and ready to go. Let's
  280. 8:59bring up the official No Place Like
  281. 9:01Local Host stopwatch.
  282. 9:04super long shot, but if anybody from
  283. 9:06Nvidia is watching this, this could be
  284. 9:07the official Nvidia stopwatch. I'll put
  285. 9:09your logo right here. All I'm asking for
  286. 9:10is an RTX Pro 4500. Send me one of
  287. 9:14those. And this is your stopwatch. Just
  288. 9:16throwing that out there. All right, so
  289. 9:18here's our prompt. We're in open code
  290. 9:20with my senior dev uh code review agent.
  291. 9:23We've just implemented support for a new
  292. 9:25spec doc uh 04 UI widgets. Uh take a
  293. 9:28look at the code and tell me if we hit
  294. 9:30the target. Are there gaps or
  295. 9:31discrepancies in the implementation? Are
  296. 9:32there bugs? We're going to send that off
  297. 9:35and start the clock. Uh, now I did a
  298. 9:38little bit of testing with this model
  299. 9:40before filming and I was getting about
  300. 9:41100 tokens per second out of it. Uh,
  301. 9:43it's an MOE model, so it's I mean, right
  302. 9:44away it's super fast compared to uh,
  303. 9:46Quen 3.8. But does it stack up? Can it
  304. 9:50dig into a problem as thoroughly as Quen
  305. 9:543.8? Actually, I shouldn't compare it to
  306. 9:563.8. We're not comparing this to 3.8.
  307. 9:58This is a battle episode of these models
  308. 10:00against the Quinn 3.6 635B A3BOE which
  309. 10:04is the right now the the only really the
  310. 10:06only good model in that size range. So
  311. 10:10let's see what it can do.
  312. 10:18>> 5 minutes 5 seconds. You're kidding me.
  313. 10:21I mean that
  314. 10:23what speed were we getting here? Let's
  315. 10:25take a look at this. We were getting 74
  316. 10:27tokens per second. 75 76. Yeah, 80
  317. 10:33looks like speed decreased as it went
  318. 10:34through the task. Interesting. But I
  319. 10:36mean 5 minutes and 5 seconds is
  320. 10:37suspiciously fast for a code review.
  321. 10:40Let's take a look. Okay, the theme UI
  322. 10:42manager widget framework, color parser,
  323. 10:44design space scale, and the button click
  324. 10:46contract all track the spec line for
  325. 10:47line, but faithful to the spec and
  326. 10:49production ready aren't the same
  327. 10:50sentence. And there's one thing that'll
  328. 10:52bite you. Let's see what we Let's see
  329. 10:54what it found. No blocking bugs. That's
  330. 10:55good. Two minor edge cases.
  331. 10:58The drawn wrecked can be up to one pixel
  332. 11:00smaller than the hit wrecked. We're
  333. 11:02nitpicking one pixel. Pressed is cleared
  334. 11:05before on click fires. Negligible in
  335. 11:07practice. Oh, interesting. There's a
  336. 11:11there's a Okay, so it's not just a
  337. 11:13performance issue that it found. There's
  338. 11:15a leak. Every time you create a button,
  339. 11:18you get up to 10 uncashed cis font
  340. 11:21creations that are never cleaned up. So
  341. 11:23if you create 10 buttons, you get a 100
  342. 11:25of them per frame forever.
  343. 11:31It's funny that that didn't come up
  344. 11:33during the two code reviews we did on
  345. 11:35this earlier. So, okay. All right. I'm
  346. 11:37mildly impressed.
  347. 11:40Okay. So, no major security concerns.
  348. 11:43There's a few gaps in the test coverage.
  349. 11:45It seems kind of minor.
  350. 11:48Okay. So, it did find a bug that I did
  351. 11:51not know about. I was not expecting
  352. 11:52that. I'm just going to ask it to write
  353. 11:54that to a markdown file and we'll save
  354. 11:57that and we'll compare it to the one we
  355. 11:58get later from uh Okay, done. Uh so
  356. 12:02let's shut down Cyber Teal. Let's fire
  357. 12:05up Quinn 3.6 and let's do that exact
  358. 12:07same task again and see if Quen also
  359. 12:09finds that. Uh hello that bug.
  360. 12:14Uh okay, I lied. I thought I had this
  361. 12:15one at Q5, but it turns out I've got it
  362. 12:17at Q6. Okay, this is going to be a tiny
  363. 12:20little bit one lopsided, but that's
  364. 12:21okay. If we go to hugging face and look
  365. 12:23at the recommended settings for precise
  366. 12:25coding tasks, temperature 6 and these
  367. 12:27other settings here, if we compare to
  368. 12:29what I've got set, uh, yep, looks good.
  369. 12:33We're also giving it 192,000 tokens of
  370. 12:35context.
  371. 12:36Let's fire up Quen.
  372. 12:40This will probably take a little bit
  373. 12:42more VRAM just cuz the model's a few
  374. 12:44gigs bigger. Uh, let's see what we get.
  375. 12:47Just under 11 out of 12 on card one.
  376. 12:4921.3 out of 24 on card 2. Okay,
  377. 12:54sure. Let's slide over to open code.
  378. 12:56We've got the exact same prompt. Uh,
  379. 12:58Cyber Teal didn't make any code changes
  380. 12:59and I've moved its review markdown out
  381. 13:01of the way. So, this is the same branch
  382. 13:03basically. So, uh, let's
  383. 13:06let Quen chew on that.
  384. 13:12What was the time for for Cyber Teal?
  385. 13:14505. Let's see if Quen can beat 505.
  386. 13:212 minutes 2 minutes and 12 seconds. What
  387. 13:25speed were we getting? So low 80s low to
  388. 13:28mid 80 tokens per second. So roughly
  389. 13:31equivalent. Let's see what we got. Uh
  390. 13:33clean implementation. You built a
  391. 13:35theming system, a design space scaling
  392. 13:36layer, a button widget with autoscaling
  393. 13:38text, and full event-driven click
  394. 13:40contract. All with zero third party
  395. 13:42dependencies, no fluff, and the tests
  396. 13:43actually exercise the pixel output and
  397. 13:45cross resolution hit detection. Great.
  398. 13:47That said, it has a few wobbly spots and
  399. 13:49one actual bug. Let's see what it found.
  400. 13:51Current scale silently returns identity
  401. 13:53when no display exists. But scale.m
  402. 13:55mouse will divide by zero if scale
  403. 13:57equals one is used with a real display.
  404. 13:59Oh, so this is a hypothetical bug. This
  405. 14:02is a hypothetical latent bug that is not
  406. 14:04a you'd have to create a screen with a
  407. 14:06width of zero. Why would you do that?
  408. 14:08There's no guard against it. Fine.
  409. 14:11Floored edges can produce zero width
  410. 14:13rects for tiny design wrecks at low
  411. 14:14resolution. uh you uh okay so if you
  412. 14:18create a button with dimensions 1 comma
  413. 14:201 and then scale it down to a low
  414. 14:22resolution it rounds down to zero and we
  415. 14:25don't have a guard against it so the
  416. 14:26button just disappears but what do you
  417. 14:27what do you want you know if you create
  418. 14:29a button with a width of one and a
  419. 14:31height of one what are you doing I'm not
  420. 14:33worried about that okay so uh invalid
  421. 14:35test with invalid corner radiation
  422. 14:36should warn you zero this is fine just
  423. 14:39noting that the test name says okay so
  424. 14:41we're really really nitpicking let's see
  425. 14:44did okay so check this out fits Set size
  426. 14:46renders a font every time it's called
  427. 14:47during binary search. It got the same
  428. 14:49bug. Why didn't I get this from coin
  429. 14:513.8? Font is cached at the loader level,
  430. 14:55but font size still does a metrics
  431. 14:56lookup. Interesting. This doesn't
  432. 14:58complain about the same uh symptoms. Let
  433. 15:01me see what cyber said.
  434. 15:03Oh, for the fall back font path, there
  435. 15:06is no cache for the fallback font path.
  436. 15:09So if you don't have a font in your
  437. 15:11resources,
  438. 15:13we fall back to a font from the system.
  439. 15:15That's the fallback font path. I didn't
  440. 15:17see that when I read that. So this is
  441. 15:19not as serious as it looked on the first
  442. 15:21pass. This is only if you have not got a
  443. 15:24font at all, which it probably will
  444. 15:25never happen
  445. 15:27because the game will ship with a bunch
  446. 15:28to choose from, right? So why would you
  447. 15:30never have one? If you've gone out of
  448. 15:32your way to delete the ones that come
  449. 15:33with the game and you don't supply your
  450. 15:34own, then you get the fallback font,
  451. 15:36which is just whatever we find on the
  452. 15:37system, in which case you'll get that
  453. 15:40resource leak. Okay, so this thing also
  454. 15:43noted it, but it didn't find that
  455. 15:45particular uh scenario. It's just saying
  456. 15:47that uh yeah, it's not ideal that you're
  457. 15:49doing this. Okay, so not a resource
  458. 15:51leak, but possibly a minor performance
  459. 15:53problem if you've got 50 plus buttons on
  460. 15:54screen. I don't see that happening.
  461. 15:56Okay. Yeah, minor minor dock issues.
  462. 15:59Okay, so if I compare that, so 5 minutes
  463. 16:03and 5 seconds versus what was it? 2
  464. 16:05minutes and 12 seconds. They both found
  465. 16:07stuff that Quinn 3.8 didn't find, which
  466. 16:09is impressive, but nothing major.
  467. 16:12And I was expecting that because we went
  468. 16:13through this uh spec doc multiple times
  469. 16:16with Quinn 3.8 and GitHub Copilot. And
  470. 16:18so uh I was expecting that this was
  471. 16:20fairly locked down and we did find a few
  472. 16:22niggly things, but uh I'm I'm not
  473. 16:23concerned about them. So So that was our
  474. 16:25warm-up challenge. That was just to uh
  475. 16:27see if these models can actually, you
  476. 16:28know, do stuff. And they did. Quen was
  477. 16:30much faster. 2 minutes and 12 compared
  478. 16:33to 505 is impressive. But they both did
  479. 16:35a good job. And they both found stuff
  480. 16:37that didn't cop in the original review,
  481. 16:38which is interesting. So, let's move on
  482. 16:40to the next challenge, shall we? This is
  483. 16:42going to be a little bit more difficult.
  484. 16:44What I want to do, let me switch
  485. 16:45branches here. Okay, I have uh stopped
  486. 16:48Quinn and I've restarted Cyber Teal
  487. 16:50Coder and uh I've switched to a branch
  488. 16:53that has a spec doc that has not yet
  489. 16:55been implemented. Let's take a quick
  490. 16:57look at this uh new spec doc. This is
  491. 17:00for a new UI widget called text panel.
  492. 17:02This is a uh a readonly uh multi-line
  493. 17:05text panel with text wrap. So, we can
  494. 17:07display text on the screen. It sounds
  495. 17:09really simple but but let's take a quick
  496. 17:11uh look at it and see what we got. Text
  497. 17:13panel can have an optional icon. So,
  498. 17:15what I'm thinking is like uh during the
  499. 17:16game when you're playing, you get little
  500. 17:18uh messages from your crew or from the
  501. 17:19enemy ship or whatever, and it'll pop up
  502. 17:21on screen in a little text panel. It'll
  503. 17:22slide in from outside the screen, either
  504. 17:24from the bottom up or from the top of
  505. 17:26the screen down. And it's got on the
  506. 17:28left side, it's got an icon of whoever's
  507. 17:29speaking, right? A little uh profile
  508. 17:31picture of them. And then the rest of
  509. 17:32the space of the text panel is the text.
  510. 17:34And I want it to appear, you know, like
  511. 17:36the typing effect where the text appears
  512. 17:38like from top to bottom, left to right
  513. 17:40with a with a cursor writing it out. I
  514. 17:41want I want that kind of animation. And
  515. 17:43we want to be able to attach audio so
  516. 17:44that when the when the text panel drops
  517. 17:46down, we can play audio of, uh, a voice
  518. 17:48that's speaking the, you know, whatever
  519. 17:50you're hearing, so you don't have to
  520. 17:51read it if you don't want to. Great.
  521. 17:54So, uh, text panel appearance options.
  522. 17:56It's got an optional icon. Uh, it's got
  523. 17:58text, uh, and it's got, uh, a rect that
  524. 18:01describes where on the screen it is and
  525. 18:02how big it is. And we've got animation
  526. 18:04options. So text panels don't just
  527. 18:05appear they can by default they just
  528. 18:07appear on the screen wherever you say
  529. 18:08that they should be but they can uh
  530. 18:09slide they can fade in with transparency
  531. 18:12or they and/or they can slide in from
  532. 18:15offscreen somewhere. So I described the
  533. 18:17uh the easing formula we're going to use
  534. 18:18cuz it's not just going to drop in
  535. 18:20linearly. It's going to use a quadratic
  536. 18:21formula so it kind of you know slides in
  537. 18:23nicely. Describe how we the caller can
  538. 18:25specify how long that animation should
  539. 18:26take. Should should it take half a
  540. 18:27second or 2 seconds? How long should it
  541. 18:28take to drop down into place? Then I
  542. 18:30describe uh text display. It should
  543. 18:33handle line wrap at word boundaries and
  544. 18:34it should uh respect, you know, u
  545. 18:36explicit line breaks in the input text,
  546. 18:38all that good stuff. And audio, you can
  547. 18:40optionally associate audio with both the
  548. 18:42appearance of a text panel and the
  549. 18:43disappearance of a text panel. So you
  550. 18:44can get a little static noise or radio,
  551. 18:46you know, uh chatter noise or whatever
  552. 18:47if the uh the text panel goes away.
  553. 18:49Fine. Uh then I describe all the tests
  554. 18:51that we want to build for this thing and
  555. 18:53the acceptance criteria of this dock
  556. 18:55itself. This has not been built. So I I
  557. 18:57wrote the spec earlier and I've been
  558. 18:59through a couple of passes with Quinn
  559. 19:003.8 eight to tighten it up a little bit.
  560. 19:02But I think there's still some stuff
  561. 19:03that we can tighten up here. So this is
  562. 19:05challenge two. This is much more
  563. 19:07difficult, I think, because there's no
  564. 19:08code for it to look at yet. It's uh it's
  565. 19:10got to think about the spec and think
  566. 19:11about how it would implement this spec
  567. 19:12and tell me if this document is ready to
  568. 19:14be implemented or not. And if not, why
  569. 19:15not? So because we have a skill
  570. 19:19specifically for this in this project,
  571. 19:21we've got a skill called uh spec do
  572. 19:23review. And uh my my my prompt to Cyber
  573. 19:27Teal here can just be uh please do a
  574. 19:29spec review of this spec dock. Done. So
  575. 19:32I can fire that off.
  576. 19:363 minutes 15 seconds. That's crazy fast.
  577. 19:40It thinks a lot less than Quinn and it's
  578. 19:42three to four times faster than Quinn
  579. 19:443.8. I mean so uh the one thing I don't
  580. 19:47like about models is that it thinks so
  581. 19:49fast that I can't even read it. With
  582. 19:51Quinn, I can just sit here and read as
  583. 19:52it as it thinks through the problem. But
  584. 19:54this thing is so fast, it scrolls off
  585. 19:55the screen. Okay, great. Let's see what
  586. 19:57we got. Okay, basic uh document checks
  587. 20:00all pass. Let's uh see. No blocking
  588. 20:02problems. Great. It's implementable as
  589. 20:04written. Great. So, it's got a minor
  590. 20:06complaint about the way I specified the
  591. 20:08typing speed. That's going to make it a
  592. 20:09little bit awkward to write unit tests
  593. 20:11for it. Okay. No. No. Okay. It's
  594. 20:15confused about this point. Okay. I
  595. 20:17That's a signal that I probably could
  596. 20:18have worded it a little bit better.
  597. 20:20Okay. So that's a legitimate document
  598. 20:21problem. Okay. Again, a wording thing.
  599. 20:23That's that's fine. Degenerate wrecked
  600. 20:26not addressed. You filthy degenerate.
  601. 20:27What does that even mean? Button.draw
  602. 20:29early returns.
  603. 20:31A fully degenerate wreck should probably
  604. 20:33be in no op. Okay, I guess it's worth
  605. 20:35stating. That's a weird way to phrase it
  606. 20:37though. A degenerate wreck. Oh, this is
  607. 20:39great. This is great. It noticed there's
  608. 20:40no open questions section. Some of the
  609. 20:43other spec docs have an open question
  610. 20:44section. It suggests adding stuff. I
  611. 20:47haven't seen this before, but this is
  612. 20:48good. It's suggesting adding some open
  613. 20:50questions that we can resolve. Great. It
  614. 20:52didn't add them itself because there's
  615. 20:53explicit instructions in that skill not
  616. 20:55to modify the document. I don't want
  617. 20:56this thing to modify the doc. So, it's
  618. 20:58just putting them here in its review.
  619. 21:00You should add these open questions
  620. 21:01until we resolve them. I like that.
  621. 21:02That's a nice touch. Spelling and how do
  622. 21:05I have spelling and grammar mistakes?
  623. 21:07Okay. Normally in a document tightening
  624. 21:10session, I would make the edits myself,
  625. 21:12but it's offering to do this and we're
  626. 21:13in a feature branch specific to uh Cyber
  627. 21:15Teal. So, uh you know what? I'm just
  628. 21:17going to say,
  629. 21:23okay, just yeah, go ahead and do it. Go
  630. 21:25ahead and make the changes.
  631. 21:307:16 total time. So, it was 3 minutes
  632. 21:32and change to uh review it and then 4
  633. 21:35minutes and change to uh make its own
  634. 21:37edits to the file. Okay, fine. Still
  635. 21:39impressive. Still much much faster than
  636. 21:41Quin 3.8. I'm trying not to compare this
  637. 21:43to Quin 3.8 because this is supposed to
  638. 21:44be a battle of MOE models, but I, you
  639. 21:46know, my brain keeps going there cuz
  640. 21:48I've been working a lot with Quinn 3.8
  641. 21:50lately, and this is just so much faster.
  642. 21:52Let's put a pin in that. And let's go do
  643. 21:54the same thing with uh Quinn
  644. 21:58uh 3.635BA
  645. 22:003B. Okay. Uh I've shut down Cybertal,
  646. 22:04restarted Quinn 3.6,
  647. 22:07and I've switched to a feature branch
  648. 22:10specifically for Quinn. So, this does
  649. 22:11not include the changes that Cyber Teal
  650. 22:13just applied. That's in Cyber Teal's
  651. 22:14branch. We're completely separate. So,
  652. 22:16we're back now to the same state that
  653. 22:18Cybertal started in to keep things fair.
  654. 22:19I'm going to give it the same exact
  655. 22:20prompt. Please do a spec review of this
  656. 22:23new spec doc and go.
  657. 22:32One minute. Do I have reasoning turned
  658. 22:34off?
  659. 22:36No, it's thinking. 1 minute and 10
  660. 22:39seconds for that review. That's crazy.
  661. 22:42Okay. Uh, basic checks all pass. That
  662. 22:44was expected. Okay. This is weird.
  663. 22:48It's related to the typing animation. If
  664. 22:50it gets interrupted,
  665. 22:52then what's supposed to happen is it
  666. 22:54just like completely fills in the text.
  667. 22:56It stops the animation and it just
  668. 22:57completely renders the text. This thing
  669. 22:59is saying that this implies that the
  670. 23:02next appear, if you tell it to appear
  671. 23:04again after you've dismissed it, it
  672. 23:06should rerun the typing animation.
  673. 23:08That's explicitly not what it says. The
  674. 23:10text would be fully rendered and appear
  675. 23:11would just show it instantly. That's the
  676. 23:12intention. If you start animating the
  677. 23:15typing and then interrupt it and then
  678. 23:17tell the text panel to show itself
  679. 23:18again, it should just render completely.
  680. 23:20It shouldn't do the typing animation. I
  681. 23:21mean, this is a this is a a wonky edge
  682. 23:23case anyway, so I don't really care too
  683. 23:24much. But it's weird that it didn't
  684. 23:26understand that. That was that was
  685. 23:27pretty clear. So, its recommended
  686. 23:29resolution is the opposite of what I
  687. 23:30want. And I think I was pretty clear
  688. 23:32when I when I wrote that. You should say
  689. 23:35that the next call to appear does rerun
  690. 23:36the typing animation. No, it doesn't.
  691. 23:38This is the more useful and intuitive
  692. 23:39behavior. No, it isn't. Oh my god.
  693. 23:41Again, basic wording. The current
  694. 23:43rendered wrecked is ambiguous. No, it
  695. 23:45isn't. The on when a panel is sliding
  696. 23:48in, it's rendered wrecked changes from
  697. 23:50frame frame by frame. Yes, I know.
  698. 23:52Because it's moving. What do you think
  699. 23:54current rendered wctck means in that
  700. 23:55context? If it's interrupted at that
  701. 23:58point, it the current rendered wreck is
  702. 24:00wherever it was in that animation at the
  703. 24:02frame where it was interrupted. That's
  704. 24:03that's pretty clear, right?
  705. 24:06Does current render direct mean the
  706. 24:07wctck after applying the slide offset?
  707. 24:10Otherwise, a test could interpret it as
  708. 24:11the original constructor wt. What?
  709. 24:14That's not the current wreck if if it's
  710. 24:15not there yet. It's moving from source
  711. 24:17to destination. Current render direct is
  712. 24:20pretty straightforward. This is Quen,
  713. 24:22what are you doing here? Yeah. Okay. So,
  714. 24:23it's nitpicking the same uh stop
  715. 24:26amendment that the that Cyber Teal
  716. 24:28found, and that is that uh I didn't
  717. 24:30specify what you know, how does stop
  718. 24:32actually work? Does it stop just that
  719. 24:34specific sound or does it does it do
  720. 24:36stop on the uh on a specific channel
  721. 24:38where the sound is playing or stop on
  722. 24:39all channels where that sound is playing
  723. 24:41if there was if it was playing on more
  724. 24:42than one? Valid. Fine. I didn't word
  725. 24:44that very well. Oh, look at this. This
  726. 24:47one also suggests adding some open
  727. 24:48questions. Typing animation restart
  728. 24:50policy and stop method contract. It's
  729. 24:53funny that Quinn 3.8 never does that.
  730. 24:55Spelling and grammar. The dashes are
  731. 24:57uneven. I swear to God, these models are
  732. 24:59just trying to drive me crazy. Okay, I'm
  733. 25:02not going to tell Coin to implement it
  734. 25:04suggestions because some of its
  735. 25:05suggestions are just completely
  736. 25:06backwards. I'm not impressed with that.
  737. 25:07It spent one minute on that, which is
  738. 25:09really impressive, but it didn't seem to
  739. 25:12understand basic wording in at least a
  740. 25:14couple places and I'm not super
  741. 25:15impressed with that. I I got to say I
  742. 25:17think Cyber Teal Coder,
  743. 25:19although it was slower, I think it gave
  744. 25:22me better feedback. On the first round,
  745. 25:24it was maybe 50/50. But on this round,
  746. 25:28I'd say Cyber Teal easily beat Quinn,
  747. 25:31even though it was three times slower.
  748. 25:34Should we go for a bonus round? My
  749. 25:35camera's almost dead. Should we go for a
  750. 25:36bonus round? I want to give Cyber Teal a
  751. 25:39shot at actually implementing that spec
  752. 25:41and just see what we get, you know?
  753. 25:44Should we do it?
  754. 25:46You know what? Let's do it. I'm going to
  755. 25:47cut here and we're going to let Cybertal
  756. 25:49actually write some code.
  757. 25:51Okay, switch to camera 2. We're good.
  758. 25:54I've restarted Cyber Teal Coder and I've
  759. 25:56switched back to Cyberte's branch. I'm
  760. 25:58going to give it a chance to implement
  761. 25:59its spec to see what kind of code output
  762. 26:02we can get. I wasn't planning on doing
  763. 26:03this, but since Cybertal seems to be
  764. 26:05doing pretty well, let's give it a shot.
  765. 26:08So, very simple prompt. Please implement
  766. 26:10this spec doc and go. And I'm going to
  767. 26:13start the clock.
  768. 26:17What?
  769. 26:23Okay. Uh, I'm just going to just going
  770. 26:26to pump the brakes here. It's waiting
  771. 26:27for permission to access a directory.
  772. 26:29I'm just going to scroll up a bit and
  773. 26:30describe what happened here. I've been
  774. 26:32watching it. It's struggling.
  775. 26:34If I scroll up, uh, it's in the middle
  776. 26:37of editing code. It started having
  777. 26:39trouble with the edit tool.
  778. 26:42Uh, we were It was trying to make an
  779. 26:43edit and it failed and it said, "I keep
  780. 26:45making the same mistake. It's typing pi
  781. 26:47g instead of pi game. It's a weird typo.
  782. 26:50Uh but it couldn't fix it. It tried the
  783. 26:52edit tool a bunch of times,
  784. 26:55but it kept failing. It's trying to
  785. 26:56replace the wrong text. It's trying to
  786. 26:58replace pi g.
  787. 27:00Uh and it's getting mixed up. So, it
  788. 27:02actually
  789. 27:04decided on the fly to use said to use
  790. 27:06the bash tool instead of the right tool
  791. 27:08because it's having such a hard time
  792. 27:09with the right tool. Uh and it was
  793. 27:12having a hard time supplying the exact
  794. 27:14text replacement. I didn't quantize the
  795. 27:16KV cache and we're running a Q5. So,
  796. 27:19this feels like quantization error where
  797. 27:22uh it's making consistent typos, but
  798. 27:24that shouldn't be the case. But anyway,
  799. 27:27it for it said eventually it said,
  800. 27:29"Let's not use the right tool. I'm
  801. 27:30having a hard time with it. I'm just
  802. 27:31going to use said."
  803. 27:35Uh, but the said didn't change it
  804. 27:37because it wrote the same thing. So, it
  805. 27:39said, "Let me be deliberate.
  806. 27:41Current test is pi g, but I want pi
  807. 27:43game." So it tries.
  808. 27:47So it does write the replacement. Pi G
  809. 27:50should be replaced with PI game. Okay.
  810. 27:52And it fixes it. But then when it went
  811. 27:54to run the tests, it's failing because
  812. 27:56there's a bunch of references to pi GE
  813. 27:58all throughout the code. And it's
  814. 28:00getting frustrated because it can't let
  815. 28:03me see. Yeah, it's still typing pi G.
  816. 28:06Clearly, I have a persistent typo issue
  817. 28:08with this word. Let me write a script.
  818. 28:11Let's see what it does.
  819. 28:14So, it's writing the script to try to
  820. 28:16fix its own spelling mistakes.
  821. 28:20My confidence has dropped a few notches
  822. 28:22here, but let's let it go. I'm amused
  823. 28:24enough now to see what happens.
  824. 28:28Okay, I'm seeing a lot of weight.
  825. 28:30Actually, wait. Actually, wait.
  826. 28:32Actually, I think it's stuck.
  827. 28:37I think it's stuck.
  828. 28:41I think it's in a loop. and it's not
  829. 28:42coming back. I don't know what happened.
  830. 28:46If we look at the speed, it's been
  831. 28:47steadily going down uh as the context
  832. 28:49window increases in size. And now we're
  833. 28:51in the low 60s. We started in the mid
  834. 28:5380s, so it's getting slower and slower.
  835. 28:55It's still trying. It's still trying to
  836. 28:56do stuff.
  837. 29:00Okay, I'm calling it. 19:30, time of
  838. 29:04death, 11 p.m. Stop. Stop. It's going in
  839. 29:08circles. I'm glad we did that. Uh, I'm
  840. 29:11glad we did the coding exercise because
  841. 29:12I was just about to claim that Cyber
  842. 29:14Seal Coder is actually,
  843. 29:18you know what I maybe I shouldn't be
  844. 29:20pessimistic. This was a partial success.
  845. 29:22We got a good code review out of it. And
  846. 29:25if I can just recap what we did, it had
  847. 29:28to parachute in to an existing code base
  848. 29:30and compare the code against the spec
  849. 29:32from which that code was written and
  850. 29:34give me a code review. And it did that.
  851. 29:36Then we moved on and it did a doc spec,
  852. 29:39a spec doc review where it had to look
  853. 29:42at a spec that had not yet been
  854. 29:43implemented and tell me if the spec was
  855. 29:45implementable as written. Uh there's a
  856. 29:47few rough edges in it and it found some
  857. 29:49stuff and it suggested some changes to
  858. 29:51it. Great. And it did it in super fast
  859. 29:53time. That's great. Uh, at the coding
  860. 29:56stage, it's having trouble making
  861. 29:58consistent typos, failing to use the
  862. 30:00right tool, having to resort to the bash
  863. 30:03tool to to write said commands because
  864. 30:05it can't use the right tool, and now
  865. 30:06it's just going in circles and circles,
  866. 30:08and so I'm stopping it. Uh, still a
  867. 30:10partial success though in that it was
  868. 30:12able to give me very, very quick results
  869. 30:15on the spec dock review and the code
  870. 30:16review.
  871. 30:18And I'd be tempted to say that even
  872. 30:20though it fell down on the coding stage,
  873. 30:22uh I'd be tempted to say this would
  874. 30:25still be a useful model for me because
  875. 30:27Quen takes an enormous amount of time to
  876. 30:30to do a spec review. This thing did it
  877. 30:32in what 2 minutes? I'm going to say
  878. 30:34partial success even though it couldn't
  879. 30:36write code.
  880. 30:38There are other uses for LLMs other than
  881. 30:41generating code and that includes stuff
  882. 30:43like inspecting code and inspecting
  883. 30:45specifications and it did both of them
  884. 30:47tonight. So, uh, partial success for
  885. 30:49Cyber Seal Coder and in stage 2, it
  886. 30:51actually did a better job than Quinn.
  887. 30:53Granted, Quinn 3.6 35b3B.
  888. 30:56Uh, if we're stacking it up against that
  889. 30:58one, then I'd say that because this is
  890. 31:00based on Ornith 1.5,
  891. 31:02an obliterated version of Ornith 1.5.
  892. 31:04But I wonder how much that obliteration
  893. 31:06process affected this thing. I was
  894. 31:08thinking it was a quantization error,
  895. 31:10but now that I think about it, I wonder
  896. 31:11what that obliteration process does to a
  897. 31:14model's ability to reason.
  898. 31:17I'm not an expert on the subject so I
  899. 31:19don't know but uh interesting
  900. 31:21interesting results I'm going to say
  901. 31:23partial success for cyber coder
  902. 31:26and just before we go
  903. 31:31let's try this
  904. 31:37going to start it up with a smaller
  905. 31:39context window entirely on my 12 gig
  906. 31:42card
  907. 31:44because this is ane
  908. 31:46So, we start it up like that and let it
  909. 31:48load. I'm only giving it 12 gigs of VRAM
  910. 31:51and it fills 11 out of 12 on that card.
  911. 31:53If we go now to the web UI and just ask
  912. 31:57it a test question,
  913. 32:00what does a transient keyword do in
  914. 32:01Java? And let it think about that. It
  915. 32:03pegs that GPU and it still answers at
  916. 32:06about 35 tokens per second, which is a
  917. 32:07huge slowdown. That's less than half as
  918. 32:09fast as it was when I was giving it 36
  919. 32:11gigs of VRAM, but it still answers at 35
  920. 32:14tokens per second. And this is not even
  921. 32:15the MTP. Is there an MTPU?
  922. 32:19There is an MTP version of this model. I
  923. 32:21didn't download this. I downloaded the
  924. 32:22regular non-MTP version. So, we got 35
  925. 32:25tokens per second without MTP on 12 gigs
  926. 32:29of VRAM. This is uh another huge
  927. 32:31difference between a dense model and an
  928. 32:33MOE model. Not only is the MOE faster,
  929. 32:35but it can run on less VRAM. Even though
  930. 32:37you're you're offloading, you know,
  931. 32:39you're putting part of it into the
  932. 32:40system memory and the CPU has to get
  933. 32:41involved, it's still at least as fast. I
  934. 32:44get 35 tokens per second out of Quen
  935. 32:463.827B
  936. 32:48with much more VRAMm. So at this thing's
  937. 32:51worst, it's still as fast as Quen 3.8, a
  938. 32:54much a dense model.
  939. 32:57So, if you're unlimited VRAMm and you're
  940. 33:00looking for a a local LLM to help you
  941. 33:03with coding tasks, maybe not generating
  942. 33:05code, but reviewing code, reviewing spec
  943. 33:07docs, and maybe I don't know, based on
  944. 33:09the coding I saw tonight, I wouldn't
  945. 33:10trust it with coding exercise, but
  946. 33:13it can still do other things. It still
  947. 33:15has other purposes, still has other
  948. 33:16uses. So, I'm going to say partial
  949. 33:18success for Cyber Seal Coder. That was
  950. 33:20not maybe not fantastic, but also not uh
  951. 33:24how do I want to phrase this? How do I
  952. 33:27want to phrase this? Uh, it failed the
  953. 33:29coding challenge, but it passed the
  954. 33:30other two challenges. Two out of three.
  955. 33:34Okay, let's leave it there. I'm not
  956. 33:36going to torture it by getting it to do
  957. 33:37more code for me. Uh, I might consider,
  958. 33:41despite what we just saw, I might
  959. 33:43consider using this model to do spec
  960. 33:45reviews, uh, or secondary spec reviews
  961. 33:47for me because it did, now that I think
  962. 33:50about it, it caught something in that
  963. 33:51first stage that Quinn 3.8 did not
  964. 33:53catch. And that's impressive. That's
  965. 33:55impressive to me. So, and because it's
  966. 33:58so much faster, because of its speed and
  967. 34:01because of its ability to do that, I
  968. 34:03might keep this model around as a
  969. 34:04secondary spec doc reviewer because it
  970. 34:07just adds a few extra minutes to the
  971. 34:08process. You know, get Quinn 3.8 to do a
  972. 34:10review and then I'll get Cyber Teal to
  973. 34:11do a secondary review and just compare
  974. 34:13the results. Uh, okay. So, that'll do it
  975. 34:16for today.
  976. 34:18Thank you for watching and we will see
  977. 34:20you next time.
  978. 34:24For whatever reason, we never got a
  979. 34:25Quinn 3.8 35B A3B. We got a Quinn 37 37B
  980. 34:30dense. Well done. Try again. 3 2 1. Uh,
  981. 34:34if we get past challenge one with both
  982. 34:35models, and we're going to move on to
  983. 34:36challenge two, which is to what
  984. 34:40was challenge two?
  985. 34:43It's too late at night. Challenge one
  986. 34:45was to do a code review. Oh, right. Spec
  987. 34:48review.

About this transcript

This page contains the full transcript of LLM Battle 9 - Cyber-Tiel-Coder vs Qwen by No place like localhost, generated from the public captions YouTube serves with the video. The transcript has 7,032 words across 987 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 translate the transcript into 100+ languages.

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, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.