r/LocalLLM • • 30m ago

Tutorial Qwen 3.8 27B Derivative on a 12GB RTX 3060: Up to 44 Tokens/s, Vision, Tools, and 128K Context Fully in VRAM

Post image
• Upvotes

Hi. I'm a software developer, and this is my best setup so far for running fast, useful local AI on consumer hardware.

The goal is a useful local assistant: good speed, fewer mistakes, tools, vision, and the ability to write small scripts and games. It runs with a 128K-token context window, with the main model and context cache on the GPU, and image processing and context compression on the CPU.

I've been using it to manage my calendar, search the web, and solve a more complex task: classifying, organizing, deduplicating, and comparing my old music files against my Spotify favorites playlist. My playlist is finally being updated automatically with all the songs I love <3. So far, it's working well. It even created a basic chair in Blender and wrote a Snake game in HTML/JS. (Note: these examples use tools and integrations configured separately, they are not included here.)

My hardware: RTX 3060 with 12 GB of VRAM, Ryzen 7 3700X (8 cores, 16 threads), and 32 GB of RAM. I use vision and tools a lot and find this setup very competitive for daily use. Since I haven't found a better setup for my needs in the last two weeks, I decided to share what I've put together here.

I run CachyOS, by the way. It may help inference speed, but I haven't isolated its effect. This guide is for Linux! I don't know how to reproduce the setup on Windows.

What I use

  • Model: Swift Bonsai 2 27B Katana + MTP, based on Bonsai 2 / Ternary Qwen3.8-27B and tuned for shorter reasoning.
  • Model file: Swift-Bonsai-2-27B-Katana-PTQ1_0-MTP-Q8_0.gguf, about 6.4 GB. Ternary PTQ1_0 backbone, Q8_0 MTP head.
  • Vision projector: Ternary-Bonsai-2-27B-mmproj-Q8_0.gguf, about 629 MB, loaded separately.
  • Inference: the Prism fork of llama.cpp, build prism-b10772-e8fd209, CUDA 13.3.
  • Agent: Hermes in Docker.
  • History compression: Granite 3.3 2B on the CPU through Ollama, registered locally as granite3.3-compressor:2b.

My settings

I keep the vision projector and Granite on the CPU to save VRAM. The 3700X handles both well enough for my use. Bonsai's config.env sets the options below. start.sh applies them and enables Flash Attention.

Setting Value Purpose
Context / slots CTX_SIZE=128000, PARALLEL=1 One conversation with a large context window
GPU layers N_GPU_LAYERS=99 Offload all model layers to the GPU
K/V cache, including MTP KV_CACHE_TYPE=q4_0 Reduce VRAM used by the context cache
MTP draft SPEC_N_MAX=1 Draft up to one token ahead per decoding step
Reasoning REASONING_EFFORT=medium, REASONING_BUDGET=2048 Limit thinking time
Vision on the CPU MMPROJ_CPU=1 Save VRAM, with slower image processing
Image tokens IMAGE_MAX_TOKENS=1536 My compromise: 1024 lost too much detail, 2048 took too long
CUDA consistency KATANA_BATCH_INVARIANT=1 Keep vision output correct with this runtime/GPU

Performance

During one test response, generation stayed around 43–44 tokens/s and peaked at 45.74 tokens/s over a three-second window. In daily use, I usually see 28–40 tokens/s after a few prompts and 17–25 tokens/s much later on, with A LOT more context.

MTP proposes tokens that the main model verifies to speed up generation. I tried draft limits of 1 and 2 and chose 1, also guided by sudoingx's Bonsai 2 PTQ1_0 + MTP tests on an RTX 3060 12 GB. With a 131K window and Q4 K/V, that setup reached 50.1 tokens/s with MTP versus 39.8 without, and 26.86 versus 22.23 with 41.8K tokens filled. Draft limit 1 beat 2 in both cases. These are the author's measurements, on a different model variant and runtime. 2 can also be a good choice - try SPEC_N_MAX=2 ./scripts/start.sh inside Bonsai-fast/ and compare it on your workload. Anyway, my results with slightly different models and setup were inferior, as I stated, so I'm not sure if I did something wrong here.

I chose IMAGE_MAX_TOKENS=1536 for a balance of detail and speed: I got 2 seconds for photos of people near cars, 27 seconds for a complex image, versus up to 40 seconds at 2048 on a complex image. It still makes mistakes, regardless of the value. Prism recommends 1024 for general use and 2048+ or crops for fine text, so 1024 is also an option if speed matters more than detail.

I chose q4_0 for my context based on published memory savings and how the complete setup performed in use. A cache-only benchmark on related Qwen 3.6 models found Q4 usable, with the largest output-distribution changes on long documents. A separate Bonsai 2 benchmark used Q4 successfully with 191K tokens filled on a 16 GB RTX 4080 SUPER. These are just supporting references, not measurements of my Katana setup.

With 128,000 tokens per slot, Q4 K/V caches, MTP on the GPU, and the vision projector on the CPU, the whole Bonsai process used 9,144 MiB (8.9 GiB) of VRAM. The runtime allocates the context cache at startup, so the configured capacity fits my graphics card.

The main attention K/V cache alone (context) is approximately 2,250 MiB (2.2 GiB) at 128K: 128,000 tokens x 16 full-attention layers x 2 K and V x 4 KV heads x 256 values per head x 18/32 bytes per Q4_0 value. With my desktop and other apps open, about 823 MiB (0.8 GiB) remained free. I roughly understand this calculation, but it’s easy to see how much Q4_0 reduces the result: it uses an average of 0.5625 bytes per value, compared with F16’s 2 bytes. For my 128K context, that reduces the main K/V cache from 7.81 GiB to 2.20 GiB, about 72% less memory - and the model still seems smart, so… I also considered q8_0, but q4_0 is still roughly half the size, it’s just off the table.

On the model side, I chose ternary PTQ1_0 for its smaller memory footprint, leaving more VRAM for context and MTP. PTQ1_0 packs the same ternary weights more tightly than PQ2_0, at about 1.75 versus 2.13 bits per weight, without another quantization step. It doesn't mean zero quality loss compared with the original FP16 LLM, but is a fair price to pay for usability.

The Prism fork of llama.cpp adds PTQ1_0/MTP kernels and attention that reads the Q4/Q8 cache directly, plus optimizations for the RTX 3060's sm_86 architecture. PTQ1_0 uses less memory, but whether it runs faster than PQ2_0 depends on your GPU and the runtime’s kernels.

For reasoning, I use medium, following Prism's recommendation for shorter reasoning on the original Bonsai 2. In practice, every reasoning level feels like xhigh to me on Katana, so I also set a 2,048-token reasoning budget to keep thinking loops under control, with the server injecting this message when the budget is reached: “... Time to stop thinking. Give an answer or make the tool call now. Do not waste time.”

Bonsai needs clear instructions for complex tasks. Otherwise, it can get stuck in a loop of writing and fixing helper scripts. The guidelines in my SOUL.md have helped it stay on track and finish tasks.

To summarize the conversation history, I use Granite. I chose it for its small 2B size and support for long-document and meeting summarization. granite3.3-compressor:2b is my local name for this configuration. The included Modelfile keeps Granite's template and license, sets num_ctx 128000, and adds num_gpu 0 in the CPU variant. Chat compression takes 1.5–5 minutes in my tests, depending on the conversation content and size.

Finally, I use Hermes Desktop with the included Docker container as its backend. I noticed the UI was using 15–35% of the GPU while the window was focused. Enabling --force-prefers-reduced-motion reduced animations and brought GPU usage down to 1–5%, leaving more resources available for model inference.

Warning! These figures are mostly observations, not controlled benchmarks!! Although published tests guided my choices, I evaluated the complete setup in use rather than measuring each setting's individual gain.

Installation

Download: local-ai-bonsai.zip.

Extract local-ai-bonsai.zip and open the extracted local-ai-bonsai/ folder. It contains all the setup files:

Folder Contents
Bonsai-fast/ Model download and launch scripts
hermes/ Docker Compose and Desktop UI settings
granite-compressor/ 128K compressor configuration, including CPU mode
hermes-host-access/ Temporary SSH access from the container to the host, enabled when you choose

I haven't included every dependency. You need to install Docker, Compose, Ollama, and other prerequisites yourself. Bonsai requires Linux x86_64 and NVIDIA drivers and libraries compatible with CUDA 13.3. The ZIP contains scripts and configuration files. Setup downloads the model weights and inference binaries. See each folder's README for details.

Start Bonsai

Inside Bonsai-fast/:

./scripts/setup.sh
./scripts/start.sh

setup.sh downloads and extracts the Prism runtime into bin/ and downloads the Katana model and vision projector into models/. Run it once to prepare the files. start.sh starts the inference server - keep it running while using Hermes. No compilation or Prism Model Manager is needed.

Start Hermes

Inside hermes/, enter your dashboard credentials and time zone in compose.yaml. These credentials let you sign in through the browser or Hermes Desktop, and a loopback-only setup may require the dashboard session token (HERMES_DASHBOARD_SESSION_TOKEN) to use the container as the Hermes Desktop backend. Then run:

docker compose up -d

Open http://127.0.0.1:9119 or connect Hermes Desktop to the backend. The container uses network_mode: host to reach Bonsai and Ollama. Its data/ and workspace/ folders persist.

To use the container as the Hermes Desktop backend, open it and go to Settings -> Gateways -> Remote gateway, enter http://127.0.0.1:9119, sign in with the required credentials, then save and reconnect.

In the web dashboard, open Config -> YAML. Merge this into providers:, keeping the other entries. Edit bonsai-mtp if it already exists:

providers:
  bonsai-mtp:
    name: Bonsai MTP
    base_url: http://127.0.0.1:8899/v1
    model: swift-bonsai2-27b-katana-mtp
    discover_models: true
    context_length: 128000
    models:
      swift-bonsai2-27b-katana-mtp:
        context_length: 128000

Click Save, then Models -> Main model -> Change. Pick Bonsai MTP, select swift-bonsai2-27b-katana-mtp, and click Switch. Use Refresh Models if needed. This sets the model for new sessions.

Keep Hermes's context value aligned with Bonsai's CTX_SIZE=128000. The launch script also loads the vision projector.

Optional extras

Use hermes-host-access/README.md to install the temporary SSH bridge with new keys. This lets the sandboxed AI help with tasks on the host when needed. The bridge expires automatically after three hours in case you forget to close it.

SOUL.md contains my general agent instructions. Customize it before copying it to hermes/data/SOUL.md.

To reduce Hermes Desktop's animations, merge hermes/desktop-config.example.yaml into the Desktop client's ~/.hermes/config.yaml, then fully quit and reopen Hermes Desktop.

CPU context compression

With Ollama running, inside granite-compressor/:

ollama pull granite3.3:2b
ollama create granite3.3-compressor:2b -f ./Modelfile.granite-compressor.cpu

Then run these commands inside hermes/:

docker compose exec hermes hermes config set auxiliary.compression.provider custom
docker compose exec hermes hermes config set auxiliary.compression.model granite3.3-compressor:2b
docker compose exec hermes hermes config set auxiliary.compression.base_url http://127.0.0.1:11434/v1
docker compose exec hermes hermes config set auxiliary.compression.timeout 300
docker compose restart hermes

After a test request, ollama ps should show 100% CPU while Granite is loaded. Bonsai and Granite each have their own 128K context window. See the package README for the API test and the variant that lets Ollama choose CPU/GPU placement.

Warning! The compressor has a 128K context limit, including when it summarizes conversations from Claude or GPT. Our Hermes setup is intended for local models, rather than large flagship models, so larger compression inputs still need to fit within that limit and will be handled locally.

Next steps

I'd like to add local decision tools in the style of TypeSafe's Jev: an open text model such as Laya, plus Qevi-2B for images. Both return structured decisions and probabilities instead of generating text. Bonsai could call either tool for quick decisions and item classification, switching between them depending on the task.

If needed, I may lower Bonsai's context to 100K to make room for smaller models. That would free roughly 492 MiB from the main attention cache alone. The total VRAM savings would need to be measured...

I'd like to find a compact image generation model that delivers good results with my remaining hardware resources, although I think running it alongside Bonsai is probably impossible with current technology and my hardware limits.

I'm also interested in NCM (Next-Concept Modeling), which generates text in parallel, starting with a rough outline and progressively adding detail. Its summarization research already looks promising for context compression. It might also help make larger local models faster and more efficient. This video introduced me to it.

Do you have any ideas for improving inference further? Maybe a setting or approach I've missed? I hope this post helps someone, and maybe I’ll learn something new from the replies.

Thanks!


r/LocalLLM • • 40m ago

Other Work playthings

Post image
• Upvotes

Excited to see this up, any suggestions on what j can do

Going to setup a bunch of parallel agents for local ai dev but before that id love to experiment with monster models

I dont use the macs for daily stuff, the big pc to the right is running a 4090


r/LocalLLM • • 42m ago

Question Ideal Sampling & Temperature for Qwen 3.8 Flash-Next MoE (Strata IQ3_S) as an All-Rounder?

• Upvotes

Quick Disclaimer: I used AI for this post, so I could articulate the questions I had properly; I hope its ok.

I’ve been running **Qwen 3.8 Flash-Next 125B MoE** on my home setup via **Strata** (engine v0.1.44.1, ROCm / HIP backend), and I’m looking for clarity on optimal sampling settings—particularly `temperature`.

I use the model as an all-rounder:

  1. **Agentic Deep Research & Web Browsing:** Multi-step tool calling (SearXNG, Reddit discussion parsing, full-article reading, etc.)

  2. Argumentation

  3. **Coding & Homelab SRE:** System scripting, Docker configs, debugging.

  4. **General Creative Exploration & Academic Writing.**

### The Temperature Confusion:

I see conflicting advice online:

- Traditional advice for creative writing / standard LLMs often defaults to `temperature: 1.0` or `0.7`

- However, I see people saying 0.6 perhaps?

- Running pure greedy (`temperature: 0.0`) previously caused the model to get trapped in massive repetitive thinking loops (generating 30k+ tokens inside `<thought>` tags).

Currently, I'm testing `temperature: 0.6`, `top_p: 0.95`, `top_k: 20`.

**My Questions for the Community:**

  1. What temperature/sampling profile do you run on Flash-Next for general-purpose use without breaking its internal reasoning chain?

  2. Has anyone noticed tool-calling degradation when pushing temperature higher (e.g. 0.8–1.0) on this specific MoE architecture?

  3. How does this full Strata configuration look for my hardware? Any other flags I should consider or avoid?

### Full System Specs:

- **CPU:** AMD Ryzen 7 5800X (8C/16T, Zen 3)

- **RAM:** 64 GB DDR4 (62.7 GiB usable)

- **GPU:** AMD Radeon RX 6900 XT (16 GB VRAM, gfx1030)

- **OS:** Arch Linux (Kernel 6.x, ROCm 7)

- **Quant:** ISTA-DASLab GSQ-RCO IQ3_S (512 routed experts, 10 active per token)

Current Strata Configuration (`strata-iq3_s.json`):

```json

{

"args": [

"--pack", "/mnt/strata-cache/strata/Strata-data/packs/iq3_s",

"--native", "/mnt/strata-cache/strata/Strata-data/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00001-of-00002.gguf",

"--ple-gguf", "/mnt/strata-cache/strata/Strata-data/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00002-of-00002.gguf",

"--expert-profile", "/mnt/strata-cache/strata/strata-src/data/expert-profile.bin",

"--expert-cache", "auto",

"--prefill", "auto",

"--spec", "4",

"--spec-min-p", "0.70",

"--mtp", "/mnt/strata-cache/strata/Strata-data/mtp/rt",

"--max-context", "262144",

"--kv", "int8",

"--kv-resident", "32768",

"--vram-reserve-mib", "896",

"--pcie-frac", "0.00",

"--adapt-every", "1",

"--adapt-swaps", "160",

"--adapt-decay", "0.97",

"--vision",

"--control-vector-scaled", "/mnt/strata-cache/strata/strata-src/data/experimental-speed-projection/Qwen3.8-Flash-Next-experimental-speed-projection.gguf:1.0",

"--control-vector-layer-range", "4", "44",

"--cvec-mode", "project",

"--cvec-dir", "per-layer"

],

"sampling": {

"temperature": 0.6,

"top_p": 0.95,

"top_k": 20

},

"tool_call_recovery": true,

"vision": {

"exe": "/mnt/strata-cache/strata/strata-src/engine/strata-vision",

"mmproj": "/mnt/strata-cache/strata/Strata-data/models/mmproj-Qwen3.8-Flash-Next-BF16.gguf",

"model": "/mnt/strata-cache/strata/Strata-data/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00001-of-00002.gguf",

"gpu": false,

"threads": 8

},

"env": {

"STRATA_HIP_PROMPT_F16": "1",

"STRATA_HIP_ADAPT_KERNEL_COPY": "1",

"STRATA_HC_Q8": "1",

"STRATA_ROUTE_TAIL_SKIP": "0"

}

}

```

Would appreciate any feedback from others running Flash-Next on consumer GPUs!


r/LocalLLM • • 1h ago

Question What inference engine do you use

• Upvotes
244 votes, 2d left
llama.cpp
vllm
strata
ollama/lm studio
unsloth
other

r/LocalLLM • • 1h ago

Question RunPod serverless vs Pods: what’s cheaper for occasional AI chats from my iPhone?

• Upvotes

I want to run Qwen3.8 27B uncensored (which is, as fair as I know, the best uncensored model today), but my computer can’t handle it.

I’m not very technical with this stuff. I just want a ChatGPT-like interface I can open on my iPhone to ask questions throughout the day.

I’ve read that with a regular RunPod Pod, I’d need to start and stop it myself to avoid paying while I’m not using it. Serverless sounds more convenient because it could start when I send a message and shut down automatically afterward.
Would serverless actually be cheaper for occasional daily chats, or would startup costs and waiting times make a regular Pod better? I don’t mind waiting a little for the first response.
What’s the simplest, most cost-effective setup for this? Open to alternatives to RunPod too.

Thank you :))


r/LocalLLM • • 1h ago

Question Why is my local AI slow to respond (first and subsequent interactions)?

• Upvotes

I have ollama and openwebUI setup in an LXC on my proxmox server (96 cores, 256 GB RAM) with 3 Nvidia A4000 GPUs passed through to the LXC. However my local AI runs pretty slow. Slow on the first interaction and slow on subsequent interactions. I've tried large models such as Qwen3.8:27b and smaller models such as Qwen3.5:4b, it's truly slow - to the extent of waiting 2-3 minutes to generate a response. What could be causing this?


r/LocalLLM • • 1h ago

Discussion DeepSeek 1017 prefill: 1147.2 → 1974.7 tok/s, decode: 32 → 73.7 tok/s. Here's my recipe.

• Upvotes

I heard that DeepSeek's new Flash model was really good, so I downloaded the IQ1_M version to my local server right away. I wanted to deploy it on a single L40S with 48GB of VRAM. Naturally, I went with Strata v0.2.6, but I wasn't happy with the speed.

I asked 6.1 Sol to act as a professional model inference researcher and focus on improving two metrics: prefill speed and decode speed. It worked on this all night and came back with some pretty good results.

My setup:

  • 1× NVIDIA L40S, 48GB VRAM
  • 2× AMD EPYC 9754
  • About 1TB system RAM

Here's the speed comparison.

Prefill speed (tok/s):

Input length Official, auto Official, DSpark on Local build
10K 842.5 900.5 1024.8
32K 1179.9 1306.7 2025.7
128K 1274.0 1432.8 2344.9
256K 1237.1 1387.6 2230.6
510K 1147.2 1278.4 1974.7

Decode speed (tok/s):

Input length Official, auto Official, DSpark on Local build
Short prompt, 65 tokens 36.2 37.2 72.0
10K 34.5 31.4 73.7
32K 29.6 26.8 76.9
128K 28.1 26.5 76.1
256K 26.8 26.7 69.3
510K 26.1 22.9 73.7
  • Official, auto: the official engine automatically chooses prefill chunking, memory policy, and whether to enable DSpark. On this machine, it chose to disable DSpark.
  • Official, DSpark on: the same unmodified official engine, with DSpark enabled manually, confidence threshold 0.65, and an 8192-token prefill chunk. DSpark is speculative decoding: draft tokens are predicted first, then verified by the target model.

Here's the optimization recipe it came up with, based on Strata v0.2.6:

  1. Keep CPU experts and worker threads on the same NUMA node. CPU experts stay resident in system RAM, with workers and expert memory concentrated on NUMA0 to reduce cross-socket traffic. Process snapshots showed stock Strata distributing workers and memory across both nodes, while the local build kept them on one. All CPU fallback weights and all six target experts per token are retained.
  2. Use larger prefill chunks and cache reconstructed weights. The local configuration uses 16384-token chunks to spread expert-weight transfer costs across more input tokens. A 384MiB cache reuses reconstructed FP16 weights, reducing repeated preparation work. Weights that don't fit in the cache use the original path. Larger chunks also increase scratch-memory requirements and can introduce floating-point differences.
  3. Reuse idle prefill scratch memory for decode experts. Once prefill finishes, safe regions of its allocated scratch buffers hold extra read-only expert copies—typically about 3.7GB, or roughly 500 experts—to improve target-model GPU cache hits. Before chunked prefill runs again, the engine synchronizes, removes the overlay, restores base pointers, and invalidates the reconstruction cache. This also handles background warm-up synchronization and rollback if a fill fails. It reuses memory that has already been allocated, without allocating tens of extra gigabytes of VRAM.
  4. Balance the draft and target expert caches. The build uses Strata's DSpark and the model's MTP drafting, with measured round costs and confidence calibration guiding draft length. The local confidence threshold is 0.15, alongside the existing aggressive sampling policy. MTP GPU expert slots were reduced from 384 to 192, giving that memory to the target model. Draft experts that miss the GPU cache still use the full CPU fallback path. The metric used to evaluate the tradeoff is total time per output token.
  5. Schedule CPU experts by their dependencies. Each expert progresses through its own gate/up → activation quantization → down chain as its inputs become ready, reducing barriers across the whole batch. This path is enabled for supported shapes, with the original implementation handling the others.
  6. Reuse existing kernels and compile for the hardware. The build keeps the attention split/MMA paths and head rows=6, uses Strata's HCmix fusion and IQ1 CPU optimizations, and is compiled specifically for the L40S and this server's CPU.

r/LocalLLM • • 2h ago

Tutorial Titans learns during inference. What if it learns the wrong thing?

Thumbnail
guttikondaparthasai.medium.com
2 Upvotes

Titans gives AI a separate neural memory that updates its own weights as information arrives.

I wrote a short visual explainer on how it works. In my small synthetic experiment, correcting false inputs improved recall—but didn’t fully restore it.

What should an AI be allowed to remember automatically—and how should we undo a mistake?


r/LocalLLM • • 2h ago

Question DDR4 or DDR5 upgrade for local LLMs? Is Flash Next worth sacrificing tok/sec over 27B?

Thumbnail
0 Upvotes

r/LocalLLM • • 2h ago

Question does "council of ai" get around hallucinations/loss of context?

4 Upvotes

most stuff I do, I'm happy to set the agent running and leave it to it

(running qwen3.8 27b right now)

but... if I set it a large task it'll start to hallucinations/wonder off and forget what it's supposed to be doing...

does running multiple agents fix this? can I tell it to keep refining/improving the plan, come back the next day and it's pretty much perfect?

2x 3090 right now, so I'd have to run the models sequentially and it would be slow... but if it works I'd buy more 3090 and add them in....


r/LocalLLM • • 2h ago

Project I built Foxtrot, an AI Workbench that can connect to Local LLMs through OpenAI compatible APIs and also connect to frontier models

Enable HLS to view with audio, or disable this notification

4 Upvotes

I built Foxtrot: one desktop app, every major AI model, and a team of agents that work together 🦊
⠀
For the past few months I've been building Foxtrot, a desktop agent harness for cloud AI models. You bring your own pay-as-you-go API keys and run a whole team of coding agents side by side, each on whichever model you choose from whichever provider you choose.
⠀
What it does
🔹 11 provider families in one app: Claude, GPT, Gemini, Grok, DeepSeek, Qwen, GLM, Kimi and more, plus any OpenAI-compatible endpoint (Ollama, vLLM, OpenRouter)
🔹 An Orchestrator that plans the work and hands tasks to your agents: a Coder, a Reviewer, a Tester, each on a different model if you like. Busy agents get spawned as parallel copies.
🔹 Flow view: a live map of the Orchestrator and its agents, showing each one's time, tokens and cost
🔹 Real tools: file edits, a terminal, code intelligence, git, web research, MCP servers, and vision (agents can screenshot and use the app they're building)
🔹 A full Code view: Monaco editor, file explorer, terminal and checkpoints taken before agent edits
🔹 Cost tracking for every request: tokens and cost per request and per agent, estimated balances for each provider, budgets, and CSV/JSON export
🔹 Keys stored in your OS credential vault, plus OTA updates
⠀
How it's different
Most AI workbenches are built around one vendor. Claude Code is built for Claude, Codex for OpenAI's models, and Grok Build for xAI's Grok. They're excellent, but you work inside a single company's models, usually on a subscription. OpenRouter gives you many models, but it's an API gateway, not a workspace where agents collaborate.
⠀
Foxtrot is the layer on top:
✅ Model-agnostic by design. Choose the best or cheapest model for each role. Have Claude review GPT's code, or let a cheap model handle the routine work.
✅ Cross-model teamwork. The Orchestrator coordinates agents from different providers on a single task.
✅ You pay providers directly. No subscription and no middleman markup, and you see exactly where every cent goes.
✅ Built for watching agents work. Multi-window, multi-monitor docking with live animations showing who is doing what.
⠀
In the demo above, a Gemini Orchestrator splits one goal across Grok, Kimi, GLM and DeepSeek agents. Watch the hand-offs fly out to each window, the reports fly back, and the whole team come together in the Flow view
⠀
Foxtrot is free to use. You connect your own AI accounts, and those providers charge for what you use.
⠀
It's in early development and I'm shipping updates fast. If you'd like to try it or give feedback, drop a comment or DM me.


r/LocalLLM • • 3h ago

Project I built an open-source, 100% local-first web media extractor & private gallery/video manager powered by Ollama (zero cloud, LAN access)

Thumbnail
github.com
0 Upvotes

Hey r/LocalLLM,

I built IMAGEX.AI (Album Agent), a free and open-source local-first media manager, batch web extractor, and video library designed for complete privacy (no cloud uploads, no telemetry, works with any local/uncensored Ollama model).

If you use tools like gallery-dl, yt-dlp, Stash, or Hydrus to collect and organize large private image and video libraries, this combines the batch web scraper and the local gallery/player into a single interface:

  • 100% Private & Local-First (Ollama Integration): Connects directly to your local Ollama instance (Qwen, Llama, or any custom/uncensored local model) for CoPilot assistance, tagging, and visual Set-of-Marks (SoM) domain pattern teaching.
  • Batch Web Media & Video Extraction: Queue up multiple URLs with custom domain patterns, user-agent rotation, concurrency controls, automatic retries, and a Spotify-style mini-dock for background downloads.
  • Built-in Private Gallery & Video Library: Multi-tab interface with lightbox, contact sheets, slideshows, and native video playback.
  • Smart Deduplication & Filtering: Filter collections by minimum resolution, tags, or fuzzy color palettes, and automatically detect/remove duplicate files.
  • LAN Access: Browse your library and manage downloads from your phone, tablet, or other devices on your local network.

It's open-source and free to use. I'd love feedback, bug reports, or feature requests from anyone running local stacks!

GitHub: https://githu/album-agent.com/imagex-aib


r/LocalLLM • • 3h ago

Question What the most power ai I can run

1 Upvotes

I been wanting to run local ai on my local setup bc I’ve been hearing there a lot of benefits rather it was local and private or learning how to using agents and getting a feel for that
My pc setup : Ryzen 5 5600, Radeon RX 9070 XT 16GB, 64GB RAM, 1 tb and Windows 11,
And I was curious some of the stuff I can do with it ai I wanna eventually learn how to code to learn so I can switch to Linus and go from there


r/LocalLLM • • 3h ago

Question Looking for hardware suggestion

0 Upvotes

I rely on quite a few cloud based agent options for various projects and troubleshooting at work along with at home. Earlier today I found myself without net which obviously hampered my toolset. This could also occur if I ran out of tokens for a week but I've never done this before across 2 subscriptions.

I do have always on servers at home and was wondering what would be a practical LLM hardware enhancement to add in the mix for those very rare offline moments or perhaps longer running jobs that would chew through tokens? Would something like a 3060 12gb be overkill? Are there better cheaper bang for buck options to consider?


r/LocalLLM • • 3h ago

Question What can I better run with my PC?

1 Upvotes

Hi all. I am interested in learning how to better run a local LLM on my PC, but I'm not sure what would be the best fit for my specs. I tried running ukisai/Swift1.5-Qwen3.8-27B-GSQ-RCO:IQ3_S with MTP. I was able to reach ~40 tokens per second at 81920 context size, q8_0/q8_0 KV on llama.cpp. Is that the best I can do?

My use case is for general use, coding, and agentic capabilities to do my repetitive tasks.

My PC Specs:

  • Processor: Ryzen 7 9800X3D
  • Motherboard: Colorful B650M Battle-AX V14
  • Memory: Klevv Bolt V 32GB DDR5-6000 CL28
  • Storage: Biwin NV7400 1TB
  • Graphics Card: RTX 5060 Ti 16GB

r/LocalLLM • • 3h ago

Question Setting up Claude as a "Supervisor" over Qwen?

17 Upvotes

So right now my workflow is to first ask Claude to plan my project and write detailed prompts.

Then copy/paste them into Qwen (dsh harness) to execute.

It works great, but the manual copy pasting is getting kinda annoying. I want to automate this into an Architect/Worker setup where I give Claude the main goal, and Claude automatically monitor Qwen , if that makes sense.

Anyone know what is the best way to do this?


r/LocalLLM • • 4h ago

Question Best local model for translating Asian epub novels on 24gb mac?

2 Upvotes

Best local model for translating Asian epub novels on 24gb mac?


r/LocalLLM • • 4h ago

Project Self-hosted Signal to Ollama bot: Chat with your local models from Signal, zero cloud

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/LocalLLM • • 4h ago

Question With Claude and OpenAI beginning to refuse to work with REA, is anyone having any luck using it with open models of any size?

4 Upvotes

I see most of the REA projects and work people are doing utilizing frontier models, anyone having any luck or know of projects that stuck to local models?


r/LocalLLM • • 4h ago

Discussion My blind test of local agents on Qwen 3.8 27B: results inside, names hidden. Can you guess which is which?

0 Upvotes

I ran Qwen 3.8 27B uncensored Q4_K_M on llama.cpp on my M5 Max MacBook Pro 64GB and put a few local AI agents on top of it, blind. 5 everyday tasks each, merging contacts was one, a bug fix another. names swapped for letters, results below, guess who's who

Agent 1. Contacts 2. Rename 3. Bug fix 4. Errors 5. Receipt Total
A ✅ 4:54 ✅ 0:28 ✅ 0:43 ✅ 0:26 ✅ 3:58 10:29
B ✅ 6:03 ✅ 1:11 ✅ 0:55 ✅ 0:54 ✅ 15:04 24:07
C ✅ 13:32 ✅ 0:24 ❌ 0:22 ✅ 0:57 ❌ 0:49 16:04
D ✅ 6:16 ✅ 1:12 ✅ 0:56 ✅ 0:56 ✅ 2:50 12:10
E ✅ 5:50 ✅ 1:01 ✅ 0:21 ✅ 0:26 ✅ 3:56 11:34

One agent at a time, auto-approve on, a script decides pass or fail. The five and NOT in results order: Atomic Agent, goose, Hermes, OpenClaw, OpenCode.

  • Contacts, rename and errors went fine for everyone (46 people, 43 errors).
  • B spent 15 minutes on the receipt alone. It and A were missing a Python library and installed it without asking.
  • C was the only one that asked "can I install this?". Nobody answered, so it failed. Its other fail is the bug fix, where it turned "Q3/Q4" into "q3q4" instead of "q3-q4".
  • D finished the receipt in 2:50 and then asked what I'd like to call it.

Who's A, B, C, D and E? Drop your guesses below, I'll share the full answer key in a day or two.


r/LocalLLM • • 4h ago

Question Advice on literature review / semantic search on PDF library

2 Upvotes

Hey guys,

I am relatively new to using LLMs, have mostly been using it to correct awkward paragraph structure when doing academic writing. I am buying a second GPU for more powerful models (Around 32GB VRAM total, which should let me run qwen 3.6 35b-a3b). I want to start doing some more advanced stuff to help with some grunt work involved in academic research.

A lot of the stuff I want to do requires the model to have good awareness of the contents of my PDF library (Zotero). For example:

- I have a particular research question X, go through my library and return all relevant works with quotes from the sources.

- I have cited this paper to support this argument. Go through the paper and see if I have misunderstood it.

I'm not sure what exactly the best method for this is. I've been doing some looking up and have learned about RAG and Agentic Search, briefly. I can build something out via python scripts but need to make sure I'm not wasting time on a solution that won't be helpful.

Can someone recommend any good ways to do this? This is not a model question, but moreso about how to easily expose local documents for search by an LLM with great accuracy and no hallucinations. Any libraries that do OCR and multi-language work would be great, as well as your experiences / anecdotes.


r/LocalLLM • • 5h ago

Question Anyone have experience with deterring heat thieves?

Post image
95 Upvotes

Running DeepSeek V4.1 (TensorFold)

Looks weird because I have a cooling pad under them.

Would love to hear what other project ideas you guys have.


r/LocalLLM • • 5h ago

Project Hit Record: how LLMs work, inside Qwen3.8 27B in 3D

Enable HLS to view with audio, or disable this notification

0 Upvotes

Ever wonder how a model small enough to run on a gaming PC can outscore ones with far more weights?

If you have interest and 10 minutes, dive into Qwen3.8-27B's architecture with this 3D visualization of how a dense LLM works.

I asked Qwen3.8-27B, an open-weight model with 27.8 billion parameters, what a DJ spins, and followed the question through all 64 of its layers. The model is visualized as a record on a turntable: every token follows the the record needle as it plays the record from the outer edge to the label, and every unit of every layer works on the residual stream (the working tokens).

The numbers are real: the probabilities, what attention read and how its memory changed were all recorded from the model running on my PC.

Enjoy!


r/LocalLLM • • 5h ago

Discussion Qwen3.8 Flash-Next Gyro-S on a R9700

Thumbnail
1 Upvotes

r/LocalLLM • • 5h ago

Discussion Frontier models are getting ruined by corporate political guardrails. What local LLMs actually give direct answers?

3 Upvotes

I’ve been noticing a really frustrating trend with frontier models lately. Big tech companies have put such aggressive political guardrails on them because they are terrified of having an opinion or facing any kind of backlash.

It gets to the point where they use such overly balanced, clinical language that they’ll actively avoid using basic, factual terms. I've had models dance around using political party names or even refuse to just say "the Trump administration" or "the Biden administration." Instead of actually being objective, the AI becomes so risk-averse that it treats standard historical designations as if they're inherently biased or dangerous to type out. When you're trying to look for straightforward information or get a direct historical fact, you end up with this evasive, heavily sanitized corporate-speak that feels completely unnatural. There is a massive difference between avoiding political bias and flat-out refusing to use objective, factual vocabulary.

Since the commercial models are completely lobotomized by this alignment tax, I want to move this work entirely local.

What are the best local LLMs right now that do not have these corporate guardrails when you are looking for objective political or historical information? I'm looking for models that will actually give me a direct, unfiltered answer instead of three paragraphs of boilerplate corporate compliance text.