r/LowEndLocalAI

▲ 209 r/LowEndLocalAI+1 crossposts

Trained a ~20K LM (probably smallest) that can still write stories

I’ve been pushing TinyStories-style models downward in size, and this is the smallest one so far:

MacroStories — 19,969 parameters, 81 KB FP32

https://huggingface.co/raincandy-u/MacroStories

For scale:

→ ~50× smaller than the 1M TinyStories model

→ ~3,000× smaller than AlexNet

→ 32-dim hidden state

→ 378-token vocabulary

→ one decoder block, recurrently applied 4 times with shared weights

It’s obviously not a general-purpose LM, but within its constrained story distribution it can maintain a 100–300 word narrative with a goal, problem, relevant actions, and resolution.

It also runs extremely fast on CPU and needs no GPU.

I’m mostly interested in how far the lower bound for coherent narrative generation can be pushed.

Would be curious to see how people manage to break it.☺️

u/ji_chan — 8 days ago

Short review: Local LM on GTX 1060 3 GB • AMD E2-2000 • 8 GB DDR3

I guess, this is a real LowEnd station, so I thought I share this here:

Overview of all models with speed test.

This is a pretty old I PC I'm testing out just for fun and honestly, it's somehow fine. I'm running some of the smaller models and they give me between 20 and 30tps. Prefill is between 200 and 600 tps with longer inputs up to 1200.

Of course, the capabilities are far from typical Qwen 27B, butI think it's pretty good for a system with 10-15 year old components.

Using claude I did a simple PI-Benchmark:

Results without thinking (✅ pass with time; ❌ fail; ⏱ hit the 6-min limit; benchmark and tables created by Claude):

Task Qwen3.5-2B Granite 4.1 3B Ministral 3 3B MiniCPM5-2B Qwen3.5-4B NeoHorse-1-4B
fizzbuzz ✅ 217 s ✅ 50 s ✅ 29 s ✅ 108 s ✅ 40 s ✅ 42 s
binsearch-bug ✅ 22 s ✅ 22 s ✅ 32 s ✅ 146 s ✅ 57 s ✅ 112 s
roman ⏱ ❌ ✅ 27 s ⏱ ✅ 52 s ❌
duration ⏱ ❌ ❌ ❌ ❌ ✅ 264 s
wordfreq-cli ⏱ ✅ 47 s ❌ ✅ 32 s ✅ 23 s ✅ 110 s
inventory ⏱ ❌ ✅ 41 s ✅ 38 s ✅ 50 s ✅ 51 s
csv-two-bugs ⏱ ❌ ✅ 51 s ✅ 31 s ✅ 66 s ✅ 159 s
spiral ✅ 21 s ✅ 60 s ✅ 21 s ✅ 13 s ✅ 21 s ⏱
Score 3/8 4/8 6/8 6/8 7/8 6/8
Total time ~34 min 6 min 5 min 15 min 10 min 24 min

Results with thinking:

Task MiniCPM5-2B Qwen3.5-4B NeoHorse-1-4B Ministral 3 3B Reasoning
fizzbuzz ✅ 28 s ✅ 55 s ✅ 43 s ❌
binsearch-bug ✅ 38 s ⏱ ❌ ✅ 29 s
roman ⏱ ✅ 227 s ❌ ❌
duration ✅ 153 s ❌ ❌ ❌
wordfreq-cli ✅ 85 s ✅ 69 s ✅ 175 s ✅ 35 s
inventory ✅ 65 s ✅ 73 s ✅ 164 s ❌
csv-two-bugs ⏱ ✅ 58 s ❌ ❌
spiral ✅ 85 s ✅ 41 s ✅ 56 s ❌
Score 6/8 6/8 4/8 2/8
Total time 19 min 19 min 25 min 7 min

Setup: GTX 1060 3 GB, AMD E2-2000 (2 cores, no AVX), 2×4 GB DDR3-800, llama.cpp (CUDA). All layers on the GPU (-ngl 99, batch 256, q8_0 KV cache); any CPU offload is unusable on this CPU.

The 8 tasks (each starts in an empty folder with a unit-test file; the agent may read, write and run tests until they pass; 6 min limit; tests are restored before grading):

# Task What the agent has to do
1 fizzbuzz Write fizzbuzz(n) from a one-sentence spec
2 binsearch-bug Find and fix an off-by-one bug in an existing binary search
3 roman Write to_roman / from_roman for 1–3999 incl. error handling (round-trip tested for all 3999 numbers)
4 duration Write a parser for "1h30m", "2h5s" … with strict validation (wrong order, duplicates, u
5 wordfreq-cli Write a command-line tool that prints the top N words of a file (case-insensitive, ties alphabetical)
6 inventory Extend an existing 3-file package: remove() with 3 error cases + total_value() using
7 csv-two-bugs Fix a CSV summary function that has two separate bugs (skips a data row, truncates floats)
8 spiral Write spiral_order(matrix) incl. edge cases (single column, empty)
Model Quant Size Gen tok/s Prefill tok/s (>500 tok) Context
Qwen3.5-2B UD-Q5_K_XL 1.5 GB 36.5 1210 128k
MiniCPM5-2B Q6_K 2.1 GB 34.4 876 16k
Granite 4.1 3B Q4_K_M 2.1 GB 33.7 615 8k
Ministral 3 3B UD-Q4_K_XL 2.2 GB 29.4 622 8k
Qwen3-4B-2507 Q4_K_M 2.5 GB 28.8 509 4k
Qwen3.5-4B IQ4_XS 2.5 GB 26.7 549 16k
Gemma 4 E2B Q3_K_M 2.5 GB 23.3 746 64k
NeoHorse-1-4B i1-IQ3_M 2.2 GB 23.3 508 16k

Takeaways:

  • Qwen3.5-4B (no thinking) solved the most (7/8). Ministral 3 3B is the efficiency winner: 6/8 in 5 minutes.
  • MiniCPM5-2B reaches 6/8 at only 2B parameters and is one of the fastest models on this card (34 tok/s).
  • Thinking didn't pay off for these small models in agent use: the same or worse scores at about twice the time. NeoHorse even dropped from 6/8 to 4/8.
  • Caveat: these are 8 small tasks with one run each, so a difference of one task is noise. Real projects (bigger codebases, vague requirements) would be harder, especially with only 8–16k of context.
reddit.com
u/MattV0 — 7 days ago

harness for personal assistant? (Using local smaller models)

Hey all, I always see a lot of talk around coding harnesses but don’t see a lot regarding ‘personal assistants’ outside of Hermes or OpenClaw for the most part. While you can always arguably just use a stripped down harness for this purpose, I’m curious if anyone knows of/uses a lightweight Hermes-esque harness that performs well for local models? I’ve been using 9B models and they sometimes can get stuck/looping as of late.

I’ve noticed that Hermes/OpenClaw have gotten fairly heavy and it’s made me reconsider swapping my harness in my local system. I use Hermes in my system as a personal assistant of sorts, managing various homelab services, chrons, tasks, quick research, automation (STT stuff), etc.

I have a lightweight, custom harness I’ve been working on by myself for the last 6 months or so that aims to accomplish this, but it would be nice if I wasn’t reinventing the wheel. A more lightweight option would mean potentially supporting even smaller models, which would always be nice

reddit.com
u/Horny_Dinosaur69 — 7 days ago

Strata support for Other models like Qwen3.6-35B-A3B

Follow-up to my last thread.

Unfortunately GitHub closed many PRs after cleanup of repo's commit history. Niko's reply here for all PRs including this PR. So now we need to wait for new PR from closed PR's creator. Meanwhile I reminded Niko about this PR. His reply below.

>I will think about it!

So please just reply him there with your message, let him know that this has huge demand from many of us. I really want Strata to support many models(Qwen3.6-35B-A3B, Gemma-4-26B-A4B, Nemotron-3.5-Lightning-30B-A3B, Laguna-XS-2.1, North-Mini-Code-1.0, Kat-Coder-V2.5-Dev, etc.,) as much as possible, even experimental fine for me.

Expecting around 20 replies there. Consider it's a last chance to get it.

EDIT : I see new PR for same. Lets see

https://github.com/Niko1221/Strata/pull/1402

Repo : https://github.com/aflin/Strata

u/pmttyji — 8 days ago

What model on a 4060 16GB

I have i7-14700F processor and 16GB DDR5 RAM, I only have a 4060Ti 8GB and wanted to have more Vram.

I thought about a home server at the start but it's genuinely too complex.

I decided I should buy a 4060 16GB in the end. Could I run Qwen3.8-27B-GSQ-RCO-Q3_S decently? Do you have any Better solution rather than new GPU? Should I buy a different GPU that can fit my PC (I know nothing about PC building)?

reddit.com
u/circumcised_hobbit — 7 days ago
▲ 16 r/LowEndLocalAI+5 crossposts

Built an offline harness that conforms to your agent loop, not the other way around

I have been trying a bunch of harness models and frameworks for the last month, and I realize most agent frameworks want you to rebuild your runtime around their harness.

We went the other way with AURA Harness: a thin membrane around loops you already run, plain Python, Ollama, LangGraph, whatever. You keep the body/runtime, while AURA records and optionally gates what crosses the boundary. Shouldn't this be what harness is about??

Local-first by default:

  • Works offline with agent_ref + session IDs, no cloud identity required
  • integrations/ollama/llama_loop.py, stdlib HTTP against Ollama (llama3.2:1b is our dev default)
  • Optional verified operator identity if you need it later, not required for OSS/dev

What you get on close: JSONL spine, audit report, hash chain, aura verify chain for CI.

Loose coat = audit-only logging. Tight coat = rules/gates at egress when you wire tool paths.

Open source (Python): github.com/ARPAHLS/aura

Happy to answer setup questions, especially Ollama related + “wrap my script, don’t replace it.”

Contributors more than just welcome, bunch of good first issues open <3

u/RossPeili — 8 days ago

I built a local memory engine for potato hardware and CPU instead of using vector databases

Disclosure since this is my own project: I built Hillock specifically because I was tired of local RAG setups requiring massive amounts of VRAM. Most tutorials expect you to run Chroma alongside an 8B model just to parse text chunks. On an entry level GPU or a laptop with 6GB to 8GB of memory, that leaves almost zero room for your actual model to generate tokens.

Instead of storing messy text chunks, it acts like an index at the back of a book. It uses small classification models under 300MB to extract subject predicate object facts in about five seconds without using an LLM. Everything goes into SQLite, and it checks queries using hyperdimensional vector math before calling your local model. If your notes do not actually have the answer, the mathematical gate stops the model before it can guess or hallucinate.

Total memory footprint stays under 1.2 GB of VRAM, and the entire pipeline runs fine on pure CPU. We just shipped bit packed SIMD math so the CPU gating checks take under 0.01 milliseconds, added true streaming responses, and resolved Windows socket delays. It is also available on PyPI now via pip install hillock. Tested it on budget 6GB cards, Apple Silicon laptops, and pure CPU setups alongside local Ollama models.

Code is open source on GitHub: https://github.com/roandejager/Hillock
Docs are up at https://hillock.mintlify.site/ and we have a text only Discord at https://discord.com/invite/BGUPNBcVdp

u/Equivalent-Flan-1590 — 8 days ago