<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Vision on tsvinc</title>
		<link>https://tsvinc.dev/tags/vision/</link>
		<description>Recent content in Vision on tsvinc</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
		
			<lastBuildDate>Mon, 02 Nov 2026 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://tsvinc.dev/tags/vision/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>The screenshot opencode never sent</title>
				<link>https://tsvinc.dev/posts/igpu-screenshot-opencode-never-sent/</link>
				<pubDate>Mon, 02 Nov 2026 00:00:00 +0000</pubDate>
				<guid>https://tsvinc.dev/posts/igpu-screenshot-opencode-never-sent/</guid>
				<description>&lt;p&gt;&lt;em&gt;Assumes you&#39;ve run a local model behind a coding agent. &lt;a href=&#34;https://tsvinc.dev/posts/igpu-bandwidth-picked-the-model/&#34;&gt;Part 1&lt;/a&gt; has the laptop and its memory pool; the router manual has the serving setup.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;tldr&#34;&gt;&#xA;  &lt;span class=&#34;tldr-label&#34;&gt;TL;DR&lt;/span&gt;&#xA;  On a laptop&#39;s integrated Radeon 680M, llama.cpp served 14 model presets (12 models, two of them in two quants) with image input, each with its projector, the small extra file that turns pixels into tokens. On five generated test images they got 54 of 56 single answers right, and read a six-line cut list back with full recall on every model. Mixture-of-experts models with spare GPU memory lost 2% of their generation speed or less; dense 27B models and the presets that already filled the pool lost 4 to 32%. In opencode, a terminal coding agent, versions 1.19.3 and 1.19.5 on my setup and 1.18.35 on a second machine did not send an attached image unless the model entry declared image input: the model got an error string instead, and the run exited 0. Adding &lt;code&gt;&amp;quot;modalities&amp;quot;: {&amp;quot;input&amp;quot;: [&amp;quot;text&amp;quot;, &amp;quot;image&amp;quot;], &amp;quot;output&amp;quot;: [&amp;quot;text&amp;quot;]}&lt;/code&gt; fixed it. One setup that first saw the image arrive without the key had it in a config file in a parent directory, which opencode merges in. An RTX 3090 desktop measured the same projector memory with no speed loss. On the second machine, a Strix Halo mini PC, two models &amp;quot;passed&amp;quot; the image test without seeing the image by running an OCR tool through bash, so check what was sent and what tools ran, not the answer. On 18 questions about real screenshots with thinking on, Gemma 4 26B (a mixture-of-experts model) got 17 at 23 s each on average, and Swift 9B (a dense model) all 18 at 38 s.&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;The obvious suspect for anything new on this laptop is the GPU. It&#39;s a Radeon 680M with no memory of its own: on the boot these tests ran on, it borrowed a 4 GiB carve-out plus 13.6 GiB of system RAM it can map (GTT), out of the laptop&#39;s 32 GB, and this series has already spent a fair share of its words on what does and doesn&#39;t fit in it. So the place to expect trouble from letting local coding models look at screenshots is right there: a picture means extra weights, extra tokens and extra memory, on a GPU that has none to spare.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
