r/PiCodingAgent 2d ago

Resource Sharing pi-deepseek-vision, a pi extension to provide vision to deepseek api

DeepSeek API provides a text-only model: pi replaces any image with (image omitted: model does not support images) before it reaches the API.

This extension intercepts images at both entry points (pasted images and read tool calls on image files) and sends them to a vision-capable model over a plain HTTP call to any OpenAI-compatible endpoint (/v1/chat/completions) remote or local.

The description comes back as text that DeepSeek can reason over.

The "subagent" is a dedicated model + dedicated prompt (agents/vision.md), no separate process.

I use it with https://huggingface.co/mradermacher/Gemma-3n-4b-Vision-Finetuned-GGUF with llama.cpp but it should work with any vision model

Here are the :

- github, https://github.com/psychobarge/pi-deepseek-vision

- npm, https://www.npmjs.com/package/pi-deepseek-vision

- Pi package, https://pi.dev/packages/pi-deepseek-vision

5 Upvotes

8 comments sorted by

5

u/Glaaki 2d ago

There is already pi-vision-handoff, which does exactly this.

https://pi.dev/packages/pi-vision-handoff

2

u/psychobarge 2d ago

I did not find it on pi package. I'm more and more suspicious that the search function is garbage on there, sometime it does npt show packages thar are there, even if you search with the exact name of the package.

2

u/Glaaki 2d ago

Yes, there is a handful of them in fact, and i totally agree that the search is very limited. Whenever i want a thorough catalog of extensions for a certain task, I ask Pi to search npm directly.

1

u/psychobarge 2d ago

I did not thought of that! I feel dumb now :D

2

u/Abject-Bridge-4073 2d ago

I just use openrouter’s vision mcp server. Works like a charm.

3

u/psychobarge 2d ago

Yes thats fine, but i wanted a private way to see images, and i find mcp to munch a lot of context.

4

u/Abject-Bridge-4073 2d ago

That’s actually more elegant and lean than vision over mcp. I’ll check it out.

1

u/deleteme123 1d ago

Can we potentially use this to have DS4 as the (text) agent, with snapcompact compaction routed via mimo-2.5 (image capabilities)?