open source LLM

Best Open Source LLMs for Coding to Self-Host in 2026

Updated October 5, 2026 20 min read Pinggy Blog
Share

In this article
Bar charts of open-weight coding LLMs: Artificial Analysis Intelligence Index v4.3.2 against Claude Opus 5.5, Terminal-Bench 2.1 scores, and the models that fit in 128GB

Choosing a coding model used to be a decision you made once a year. The open-weight field now moves fast enough that the right answer changes every few weeks, and for most teams the deciding factor turns out to be hardware rather than benchmark scores.

The last six weeks show it. Xiaomi’s MiMo-V2.6-Pro, released on September 21 under MIT, is now the top open weight on the Artificial Analysis Intelligence Index at 46, ahead of GLM-5.3 (45) and Kimi K3 (44). DeepSeek-V4.1-Flash (September 10) tops LiveBench’s agentic coding board outright, above Claude Opus 5.5. Neither fits on one GPU. The model that does, Qwen3.8-27B, scores 34 on the same index, which still makes it the best of 142 models in its size class.

This guide ranks the coding models you can actually download as of October 6, 2026, and says what hardware each one needs. Scores come from Artificial Analysis (Intelligence Index v4.3.2), LiveBench, and vendor-reported SWE-Bench Pro and Terminal-Bench 2.1 numbers. Hardware figures come from model cards, Unsloth’s docs and vLLM’s deployment recipes.

Summary

Top open-weight coding models (Artificial Analysis Intelligence Index v4.3.2, October 2026):

  1. MiMo-V2.6-Pro - Index 46, MIT, 1.02T/42B, 8x H200 - Get MiMo-V2.6-Pro
  2. GLM-5.3 - Index 45, custom license, 756GB of FP8 weights - Get GLM-5.3
  3. Kimi K3 - Index 44, 2.78T parameters, needs at least 8x GB300 - Get Kimi K3
  4. GLM-5.3-Flash - Index 42, MIT, 320B/18B, 3-4x 80GB GPUs at Q4 - Get GLM-5.3-Flash
  5. Qwen3.8-Flash-Next - Index 40, fits a 128GB machine at 4-bit - Get Qwen3.8-Flash-Next
  6. DeepSeek-V4.1-Flash - Index 39, MIT, #1 on LiveBench agentic coding - Get DeepSeek-V4.1-Flash
  7. Qwen3.8-27B - Index 34, Apache 2.0, one 24GB GPU - Get Qwen3.8-27B

One GPU: pull Qwen3.8-27B. It’s a 27B dense Apache 2.0 model that needs 16-19GB at 4-bit, and it scores 34 on the index to the next-best small model’s 25.

128GB Mac: Qwen3.8-Flash-Next. It needs 96-114GB at 4-bit and scores 40, level with Qwen3.8-2.4T-A95B, the open weights behind Qwen3.8-Max.

One server: GLM-5.3-Flash. It’s MIT and needs 162-210GB at 4-bit, so three or four 80GB GPUs instead of eight.

Self-hosting tools: Ollama for local use, vLLM for production serving, LM Studio for a desktop GUI.

How close open weights are to proprietary models

We use Artificial Analysis as the main lens because it runs every model itself rather than reprinting vendor claims. Its Intelligence Index changed in September: v4.3 (September 7) swapped Terminal-Bench 2.1 for Terminal-Bench 4.0 and replaced τ³-Banking with AutomationBench-AA, and the current v4.3.2 combines 10 evaluations. Scores fell across the board, so numbers from older articles (including the previous version of this one) aren’t comparable.

On the current scale, Claude Opus 5.5 leads overall at 58. The best open weight, MiMo-V2.6-Pro, scores 46. The hardware column is the smallest setup that holds the weights, worked out from each model’s card, vLLM recipe or Unsloth guide, before KV cache headroom.

ModelParams (active)LicenseAA IndexSmallest practical setup
Claude Opus 5.5 (proprietary)--58API only
MiMo-V2.6-Pro1.02T (42B)MIT468x H200 (~574GB, mostly MXFP4)
GLM-5.3744B (40B)GLM-5.3 License458x H200 (756GB FP8)
Kimi K32.78T (104B)Kimi K3 License448x GB300 or 8x MI355X (1.56TB MXFP4)
GLM-5.3-Flash320B (18B)MIT423-4x 80GB GPUs at 4-bit (162-210GB)
Qwen3.8-Max (2.4T-A95B)2.4T (95B)Qwen3.8-Max License408x B300 at NVFP4 (1.32TiB)
Qwen3.8-Flash-Next125B (6B) + 51B n-gram tableQwen Community License40128GB machine (96-114GB at 4-bit)
DeepSeek-V4.1-Flash552B + 196B Engram (16B)MIT394x H200 with Engram on CPU (~511GB)
MiMo-V2.6-Flash309B (15B)MIT384x H200 (~178GB, mostly MXFP4)
DeepSeek-V4-Pro-08131.6T (49B)MIT368x H200 (893GB)
Qwen3.8-27B27B denseApache 2.034One 24GB GPU (16-19GB at 4-bit)
MiniMax M3428B (23B)MiniMax Community License294x H100 at 4-bit (213-270GB)

Models that fit one GPU or a 128GB machine

If your “server” is a laptop, the ceiling is Apple’s: the M5 Max MacBook Pro tops out at 128GB of unified memory, which has to hold the weights plus the KV cache. Same index, so these read directly against the table above.

ModelParams (active)~4-bit memoryAA Index
Qwen3.8-Flash-Next125B (6B) + n-gram table96-114GB40
Qwen3.8-27B27B dense + vision16-19GB34
Qwen3.6-27B27.8B dense18GB21
Muse Glimmer 30B29.6B dense (incl. vision)17GB17
Gemma 4 31B30.7B dense17-20GB15
Nemotron 3.5 Lightning31.6B (3.6B)21-25.5GB13
Nemotron 3 Super 120B-A12B120.6B (12.7B)64-72GB13
gpt-oss-120b (high)117B (5.1B)~63GB12
Qwen3-Coder-Next79.7B (3B)46GB9

Bigger doesn’t win on a laptop, newer does. Qwen3.8-27B beats every 120B-class model that fits by more than 20 points, and the only thing above it on a 128GB machine is Qwen3.8-Flash-Next. Its runner-up in the small class is now K2 Horizon MoVA 36B-A4B (Apache 2.0) at 25. GLM-5.3-Flash also squeezes into 128GB with Unsloth’s 2-bit quant (a 109GB file), at a real quality cost.

SWE-Bench Pro and Terminal-Bench 2.1

The Intelligence Index measures general capability. For code specifically, SWE-Bench Pro (fixing real issues in real repos) and Terminal-Bench 2.1 (agentic tasks in a shell) have the widest coverage across open weights. These are vendor-reported numbers from each model card, cross-checked against the SWE-Bench Pro and Terminal-Bench 2.1 leaderboards on Hugging Face, sorted by Terminal-Bench.

ModelReleasedSWE-Bench Pro (v1)Terminal-Bench 2.1
DeepSeek-V4.1-FlashSep 2026Not reported90.6
MiMo-V2.6-ProSep 2026Not reported89.9
Kimi K3Jul 2026Not reported88.3
GLM-5.3Aug 2026Not reported88.2
DeepSeek-V4-Pro-0813Aug 202655.4 (April preview)87.9
MiMo-V2.6-FlashSep 2026Not reported87.6
Qwen3.8-MaxAug 202667.786.6
Ornith-1.5-397BAug 202665.186.1
Tencent Hy4-previewAug 202665.785.4
GLM-5.3-FlashAug 2026Not reported84.3
Nex-N2.5-ProSep 202661.282.7
GLM-5.2Jun 202662.181.0 (Terminus-2)
dots3-note-prevAug 202661.075.1
Qwen3.8-27BAug 202661.773.0
Poolside Laguna-S-2.1Jul 202659.470.2
MiniMax M3Jun 202659.066.0
Muse Glimmer 30BAug 202651.251.7
Qwen3.8-Flash-NextAug 202662.5Not reported

The top of the Terminal-Bench column now belongs to open weights. DeepSeek-V4.1-Flash’s 90.6 sits above GPT-5.6 Sol’s 88.8 (OpenAI-reported) and above Artificial Analysis’s own run of Claude Opus 5 (89.1), though below Claude Fable 5.1 (91.4 in AA’s run). On SWE-Bench Pro, Qwen3.8-Max still leads open weights at 67.7, and the more useful number is Qwen3.8-27B’s 61.7 at a fraction of the size.

Three caveats before you compare these against anything else. Every number here is vendor-run, with each lab using its own scaffolding. Scale’s standardized SEAL leaderboard tops out at 61.5 (Muse Spark 1.1) and doesn’t cover any of these models. SWE-Bench Pro moved to a V2 dataset on September 22, so these v1 scores won’t line up with new submissions. Qwen’s SWE-Bench Pro scores also come from its own corrected version of the v1 tasks. And the frontier has moved on to Terminal-Bench 4.0, where Claude Opus 5.5 leads tbench.ai's leaderboard at 64.8 and the only open-weight entry so far is GLM-5.3 at 41.8.

What LiveBench adds

LiveBench is the contamination-aware cross-check, and it has now scored most of the August and September releases (not MiMo-V2.6 yet). DeepSeek-V4.1-Flash leads the entire agentic coding board at 77.27, above Claude Opus 5.5 at 71.72. Among other open weights, DeepSeek-V4-Flash-Vision-Exp scores 65.10 on agentic coding, Qwen3.8-Max 64.65, Kimi K3 62.17, Qwen3.8-Flash-Next 61.62, Qwen3.8-27B 61.36 and GLM-5.3 60.91. On plain coding, Kimi K3 is still the top base open weight at 81.45.

Best open source LLMs for coding

The list below is a selection of open weights you can download today, roughly in Artificial Analysis index order. Most of the top five need data-center hardware, so read the deployment notes before you plan around them. For a single GPU or a 128GB Mac, skip to Qwen3.8-27B and Qwen3.8-Flash-Next.

1. MiMo-V2.6-Pro and MiMo-V2.6-Flash (Xiaomi) - top open weight

Hugging Face model page for XiaomiMiMo/MiMo-V2.6-Pro-MOPD, showing the MIT license and 1T parameters

Screenshot: huggingface.co/XiaomiMiMo/MiMo-V2.6-Pro-MOPD, October 2026.

Xiaomi published MiMo-V2.6-Pro and MiMo-V2.6-Flash on September 21, 2026, under a plain MIT license with no revenue thresholds. Each comes in two builds: the -RL repos from launch day, and improved -MOPD repos published on September 27. Both take text, image, video and audio input, with a 1M-token context, up to 128K output tokens, and a hybrid of sliding-window and global attention plus a multi-token prediction drafter for faster decoding.

The Pro is a 1.02T-parameter MoE with 42B active (384 experts, 8 active per token). Its weights, mostly 4-bit MXFP4, total about 574GB, and vLLM’s recipe needs at least 680GB of VRAM, so the floor is eight H200s. It scores 46 on the Intelligence Index, 89.9 on Terminal-Bench 2.1 and 71.9 on DeepSWE. The Flash is 309B with 15B active, about 178GB of weights, and runs on four H200s. It scores 38 on the index and 87.6 on Terminal-Bench 2.1. Neither reports SWE-Bench Pro or SWE-Bench Verified, and Unsloth has no guide for them yet.

These replace April’s MiMo-V2.5-Pro, which Artificial Analysis now marks deprecated at 26.

2. GLM-5.3 and GLM-5.3-Flash (Z.AI)

Hugging Face model page for zai-org/GLM-5.3, showing the GLM-5.3 license and 753B parameters

Screenshot: huggingface.co/zai-org/GLM-5.3, October 2026.

Z.AI announced GLM-5.3 on August 14 and published the weights on Hugging Face on August 28, after holding them for two weeks of safety evaluation. The base model is unchanged from GLM-5.2 (744B total, 40B active); every gain comes from post-training. Terminal-Bench 3.0 goes from 4.6 to 28.3, DeepSWE v1.1 from 46.2 to 66.9, and the card reports 88.2 on Terminal-Bench 2.1. It also scores 84.5% on CyberGym, and Z.AI says it found 2,436 vulnerabilities across 269 real-world projects with it.

The default repo is native FP8: 141 safetensors shards, 756GB, which fits eight H200s but not an 8x80GB H100 node (a BF16 copy also exists at about 1.5TB). It has 78 layers, 256 routed experts with 8 active, a 1M-token context, and thinking at three levels that can’t be turned off. The GLM-5.3 License is MIT-like, except that model-as-a-service operators above $10 billion in revenue must pass a Z.AI security review first.

GLM-5.3-Flash is the one most teams can deploy. Released August 26 under MIT, it’s a 320B MoE with 18B active, the first natively multimodal GLM-5 model, with a 1M-token context. Its hybrid of linear and sparse attention gives a 4.44x smaller KV cache and about 3x less attention compute than GLM-5.3. It scores 42 on the index, 84.3 on Terminal-Bench 2.1 and 63.4 on DeepSWE, at about $0.25 per task on Artificial Analysis’s run. The native FP8 weights (328GB) need an 8x80GB node, but a 4-bit build at 162-210GB (Unsloth’s UD-Q4_K_XL is 200GB) fits three or four 80GB GPUs or a 256GB Mac, and Unsloth's 2-bit quant needs about 115GB. Mainline llama.cpp merged support on September 30.

3. Kimi K3 (Moonshot AI)

Hugging Face model page for moonshotai/Kimi-K3, showing the kimi-k3 license and 2.8T parameters

Screenshot: huggingface.co/moonshotai/Kimi-K3, October 2026.

Moonshot announced Kimi K3 on July 16 and published the weights on July 27. At 2.78T total parameters with 104B active, it’s the largest open-weight model released so far: 896 experts with 16 active per token, 93 layers (69 Kimi Delta Attention plus 24 Gated MLA), a MoonViT-V2 vision encoder and a 1M-token context.

The weights are natively MXFP4 from quantization-aware training, so the 1.56TB download is already the compact form, and vLLM’s recipe needs at least eight GB300 or MI355X GPUs, with multiple nodes for production traffic. Unsloth does publish GGUFs, but its recommended 1-bit quant (UD-IQ1_S) is still 594GB, and even the smallest file (UD-Q1_0) is 466GB. The Kimi K3 License permits self-hosting and fine-tuning and exempts internal use, but model-as-a-service operators above $20M in revenue need a separate agreement, and products above 100M monthly users or $20M monthly revenue must show “Kimi K3” in the UI.

Moonshot reports 88.3 on Terminal-Bench 2.1, 81.2 on FrontierSWE and 67.5 on DeepSWE, with no SWE-Bench Pro number. It’s still the top base open weight on LiveBench coding (81.45), and it scores 44 on the index, now third among open weights. API pricing is $3 per million input tokens ($0.30 cached) and $15 per million output.

4. Qwen3.8-Max (Alibaba)

Hugging Face model page for Qwen/Qwen3.8-2.4T-A95B, the open weights of Qwen3.8-Max

Screenshot: huggingface.co/Qwen/Qwen3.8-2.4T-A95B, October 2026.

Alibaba announced Qwen3.8-Max on August 3 and published the weights as Qwen3.8-2.4T-A95B on August 12, the first time a Qwen-Max-class model has been open-weighted. It’s a 2.4T MoE with 95B active (512 experts, 10 routed plus 1 shared per token), a 262K context extensible to about 1M, and always-on thinking you can dial with reasoning_effort (xhigh, medium or low).

It’s the strongest open weight that reports SWE-Bench Pro, at 67.7, with 86.6 on Terminal-Bench 2.1. Two caveats. The open weights are text-only and not the hosted model: Alibaba’s API-only Qwen3.8-Max-0902 update scores 45 on the index while the open weights score 40. And the license is a custom one with attribution required above 100M monthly users or $20M monthly revenue, plus a separate license for model-as-a-service or AI coding and office-assistant businesses with more than $50M a year in revenue, including affiliates. BF16 weights are about 4.9TB. vLLM’s recipe runs the NVFP4 build (1.32TiB) on eight B300s, or the FP8 build on 16 B300s or 32 H200s.

5. DeepSeek-V4.1-Flash and V4-Pro (DeepSeek)

Hugging Face model page for deepseek-ai/DeepSeek-V4.1-Flash, showing the MIT license and the 552B backbone in its introduction

Screenshot: huggingface.co/deepseek-ai/DeepSeek-V4.1-Flash, October 2026.

DeepSeek-V4.1-Flash (September 10, MIT) is the most unusual design here. It’s an encoder-decoder model with a 552B backbone plus 196B of “Engram” memory that can sit in CPU RAM, 384 experts with 6 active, and 8B active parameters during prefill but 16B during decode. It has a 1M-token context and 384K output tokens. DeepSeek reports 90.6 on Terminal-Bench 2.1 (88.0 with the Claude Code harness) and 74.2 on DeepSWE, the highest open-weight scores on both, and LiveBench independently puts it at #1 on agentic coding. It scores 39 on the index. The weights are about 511GB, and vLLM’s recipe runs it on eight H200s, or four with Engram offloaded to CPU. Unsloth has no GGUF yet, and llama.cpp support is still in review.

DeepSeek-V4-Pro-0813 (August 13, MIT) is 1.6T total with 49B active, a 1M context and three effort levels, and DeepSeek’s API now speaks the OpenAI Responses API natively. Its card reports 87.9 on Terminal-Bench 2.1 and 62.7 on DeepSWE, and it scores 36 on the index. The often-quoted 80.6 SWE-Bench Verified and 55.4 SWE-Bench Pro come from the April preview, not this build. The official weights are already FP4 experts plus FP8, 893GB in total, so the floor is eight H200s. On DeepSeek’s API, V4-Flash and V4-Flash-Vision-Exp were retired on September 10 and their names now route to V4.1-Flash. If you’d rather keep the older 284B V4-Flash-0731, it fits a 128GB machine at 3-bit, as our guide to local LLM tools and models explains.

6. Qwen3.8-Flash-Next (Alibaba) - best for a 128GB machine

Hugging Face model page for Qwen/Qwen3.8-Flash-Next, showing the qwen-community-1.0 license

Screenshot: huggingface.co/Qwen/Qwen3.8-Flash-Next, October 2026.

Qwen3.8-Flash-Next (August 26) is Alibaba’s preview of the Qwen4 architecture: 125B parameters with 6B active, plus a 51B n-gram embedding table that can be offloaded to RAM or SSD, Gated DeltaNet with Qwen Sparse Attention, and a 262K context extensible to 1M. Thinking can be turned off, unlike on Max.

It scores 40 on the index, level with Qwen3.8-2.4T-A95B, the open weights behind Qwen3.8-Max, with 62.5 on SWE-Bench Pro and 91.9 on LiveCodeBench v6. Unsloth’s guide puts the 4-bit quant at 96-114GB, so it’s the strongest model that runs on a 128GB Mac without dropping below 4 bits. Read the Qwen Community License first: attribution is required above 100M monthly users or $20M monthly revenue, and any company (or affiliate) that runs a model-as-a-service or “AI work assistant” (AI coding or office-productivity) business needs a separate license before commercial use, regardless of size. Purely internal use, with nothing exposed to third parties, is exempt.

7. Qwen3.8-27B (Alibaba) - best for a single GPU

Hugging Face model page for Qwen/Qwen3.8-27B, showing the Apache 2.0 license

Screenshot: huggingface.co/Qwen/Qwen3.8-27B, October 2026.

For anyone without a GPU server, this is the most important model here. Alibaba published Qwen3.8-27B on August 14 under Apache 2.0. It’s a 27B dense vision-language model with 64 layers (repeating three Gated DeltaNet blocks and one gated attention block) and a 262K context extensible to about 1M.

The coding numbers are the point: 61.7 on SWE-Bench Pro, 73.0 on Terminal-Bench 2.1, 90.3 on LiveCodeBench v6 and 42.2 on DeepSWE, more than three times Qwen3.6-27B’s 13.3. SWE-Bench Pro and DeepSWE were run with the Claude Code harness, and Terminal-Bench with Terminus. It scores 34 on the index, first of 142 models in its size class and well ahead of Qwen3.6-27B (21).

It needs 16-19GB at 4-bit (a single 24GB card like an RTX 4090, or a 24GB Mac), about 31GB at FP8 and 56GB at BF16, and the default Ollama tag is an 18GB download. The real complaint is verbosity. Artificial Analysis measured it at 47.8 output tokens/s against 222.8 for DeepSeek-V4-Flash-0731, and it took about six times longer to finish the index. Turn reasoning effort down for interactive edits and keep it high for agent runs. If you want a coding specialist instead, Qwen3-Coder-Next (80B, 3B active, 46GB at 4-bit) is fast, but it scores far lower on today’s index (9).

8. MiniMax M3 (MiniMax)

Hugging Face model page for MiniMaxAI/MiniMax-M3, showing the minimax-community license and 427B parameters

Screenshot: huggingface.co/MiniMaxAI/MiniMax-M3, October 2026.

MiniMax M3 shipped on June 1, with weights on Hugging Face by June 12. It’s a 428B MoE with 23B active, a 1M-token context and native image and video input, built around MiniMax Sparse Attention (MSA), which reads each KV cache block only once. MiniMax reports 59.0 on SWE-Bench Pro, 66.0 on Terminal-Bench 2.1 and 74.2 on MCP-Atlas, and it scores 29 on the index.

Two things to know. Unsloth’s 4-bit GGUFs need 213-270GB, so plan on four H100s, and they’re text-only with dense attention because llama.cpp doesn’t implement MSA. And the MiniMax Community License is restrictive: the base grant is non-commercial, commercial use needs a “Built with MiniMax M3” notice and a one-time notice to MiniMax, and products above $20M a year need written authorization.

9. Muse Glimmer 30B (Meta) - best MCP tool use on one GPU

Hugging Face model page for meta-models/Muse-Glimmer-30B, showing the Apache 2.0 license and model card

Screenshot: huggingface.co/meta-models/Muse-Glimmer-30B, October 2026.

Meta Superintelligence Labs released Muse Glimmer on August 10: a 29.6B dense multimodal model (including a 1.8B vision encoder) under Apache 2.0, with 52 layers and a 131K context. The BF16 weights are about 60GB, and Meta’s K-Quant builds bring it under 20GB with 0.2-1.0% degradation, so it fits a 24GB card.

Meta’s own numbers are strong on tool use: 75.5 on MCP Atlas against Qwen3.6-27B’s 62.5, close to GLM-5.2’s 76.8 at 744B parameters, plus 51.2 on SWE-Bench Pro. Independent results are weaker. It scores 17 on the current index, behind Qwen3.6-27B at 21, and Artificial Analysis’s launch review called agentic knowledge work “its weakness relative to its size class”. Qwen3.8-27B, released four days later, beats it on every benchmark both report. What’s left is MCP Atlas and DFlash, a block-diffusion speculative decoder that Meta measured going from 74.9 to 233.4 tokens/s on an RTX 5090 with identical output. It runs in Ollama, LM Studio, llama.cpp, MLX, vLLM and SGLang.

10. Nemotron 3.5 Lightning (NVIDIA) - fastest local inference

Hugging Face model page for NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16, showing the OpenMDW-1.1 license and an accuracy chart

Screenshot: huggingface.co/nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16, October 2026.

NVIDIA shipped Nemotron 3.5 Lightning on August 11: a Mamba-2, MoE and attention hybrid with 31.6B total and 3.6B active parameters by Artificial Analysis’s count (NVIDIA rounds to 30B and 3B), distilled from Nemotron 3 Ultra, with up to 1M tokens of context. It ships under OpenMDW-1.1 with weights, training data and recipes all released.

It doesn’t compete with Qwen3.8-27B on capability. It scores 13 on the index, level with Nemotron 3 Super and above gpt-oss-120b (12), and NVIDIA reports 51.56 on SWE-bench Verified. Throughput is the pitch: Artificial Analysis measured nearly 670 tokens/s on the NVFP4 weights at launch. Its 4-bit builds are 21-25.5GB on disk. For a high-volume pipeline (batch refactors, test generation, log triage) that tradeoff can be right; for anything that needs to think, it isn’t.

11. Mistral Medium 3.5 and Devstral Small 2 (Mistral AI)

Hugging Face model page for mistralai/Mistral-Medium-3.5-128B, which says it replaces Devstral 2 in Vibe

Screenshot: huggingface.co/mistralai/Mistral-Medium-3.5-128B, October 2026.

Mistral’s coding line has consolidated. Mistral Medium 3.5 (April 2026) is a 128B dense model under a modified MIT license with a 256K context and 77.6% on SWE-bench Verified, and its card says it supersedes Devstral and replaces Devstral 2 in Vibe CLI, Mistral’s open-source terminal coding agent. It needs about 80GB at 4-bit but scores only 14 on the current index.

The smaller sibling is why Mistral stays on this list. Devstral Small 2 (24B, Apache 2.0, December 2025) scores 68.0% on SWE-bench Verified, takes image input, has a 256K context and runs on a single RTX 4090 or a 32GB Mac. Qwen3.8-27B beats it at a similar footprint, but Devstral Small 2 with Vibe CLI is a ready-made workflow.

Honorable mentions

StarCoder 2 Open Source LLM by BigCode

StarCoder 2 from BigCode comes in 3B, 7B and 15B sizes with a 16K context. The 15B was trained on 600+ languages from The Stack v2, and every source-code file in its training set carries a Software Heritage identifier, which makes it the most auditable coding model available. Pick it when your blocker is IP compliance rather than capability.

Kimi K2.7-Code Open Source LLM by Moonshot AI

Kimi K2.7-Code (June 12) is Moonshot’s coding line: a 1T MoE with 32B active and a 262K context that spends about 30% fewer thinking tokens than K2.6. A HighSpeed variant serves at about 180 tokens/s. It keeps the modified MIT license that K3 dropped, at about a third of K3’s size.

Hugging Face model page for ibm-granite/granite-4.2-30b, showing the Apache 2.0 license and model summary

Screenshot: huggingface.co/ibm-granite/granite-4.2-30b, October 2026.

IBM Granite 4.2 (August 25) comes as dense 3B, 8B and 30B models under Apache 2.0, with a 128K context extendable to 512K and a thinking mode. The 30B scores 57.0 on SWE-bench Verified and 33.29 on SWE-Bench Pro. It isn’t competitive on capability, but it’s the license-clean enterprise option, as is IBM’s older Granite Code line (3B to 34B, trained on 116 languages).

Yi-Coder Open Source LLM by 01.AI

Yi-Coder from 01.AI comes in 1.5B and 9B sizes with a 128K context under Apache 2.0, and Yi-Coder-9B-Chat scores 85.4% on HumanEval. It’s small enough for code completion on modest hardware.

Worth watching: Reflection AI announced Beam on October 5, a 501B MoE with 23B active that reports 65.5 on SWE-Bench Pro and 80.1 on Terminal-Bench 2.1. The Apache 2.0 weights are promised for later in October but aren’t on Hugging Face yet.

How to use these models with a coding agent

The quickest local setup is OpenCode, an open-source terminal coding agent, with Ollama serving the model. Ollama can launch OpenCode directly, so it’s a few commands.

Step 1: Install Ollama

bash
curl -fsSL https://ollama.com/install.sh | sh
install ollama

Step 2: Install OpenCode

bash
curl -fsSL https://opencode.ai/install | bash
install opencode

Step 3: Give the model enough context

OpenCode needs at least 64K tokens of context, and Ollama’s default is smaller on most consumer GPUs: 4K under 24GiB of VRAM and 32K up to 48GiB. Start the server with a bigger window (on macOS, quit the Ollama app first so the port is free):

bash
OLLAMA_CONTEXT_LENGTH=64000 ollama serve

Step 4: Launch OpenCode through Ollama

In a second terminal:

bash
ollama launch opencode --model qwen3.8:27b
opencode

On an Apple Silicon Mac, use the qwen3.8:27b-mlx tag (also 18GB), which runs on Apple’s MLX backend. Then open your repository and use it like any other terminal coding agent. Qwen3.8-27B thinks a lot by default, so if interactive edits feel slow, lower the reasoning effort for chat and keep it high for long agent runs.

Running the model on a GPU box and coding from your laptop

A common setup is a workstation with the GPU at home or in the office and a laptop everywhere else. Ollama only listens on localhost, and it rejects requests whose Host header isn’t a local name, so a plain tunnel gets 403 Forbidden. A Pinggy tunnel can rewrite the header and require a key. On the GPU machine, run:

bash
ssh -p 443 -R0:localhost:11434 free.pinggy.io "u:Host:localhost:11434" "k:change-me"

It prints public HTTPS URLs such as https://<random>.run.pinggy-free.link, and requests without Authorization: Bearer change-me get a 401. OpenAI-compatible clients send exactly that header with their API key, so on the laptop you point OpenCode’s opencode.json at the tunnel and set the key:

json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "gpubox": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Ollama on my GPU box",
      "options": {
        "baseURL": "https://<random>.run.pinggy-free.link/v1",
        "apiKey": "change-me"
      },
      "models": {
        "qwen3.8:27b": { "name": "Qwen3.8-27B" }
      }
    }
  }
}

Free tunnels last 60 minutes and get a new URL each time, which is fine for a quick session. For a box you code against every day, a Pinggy Pro token removes the timeout and keeps the URL stable.

How to self-host these models

Once you’ve picked a model, these guides cover the rest:

Conclusion

Your hardware picks the model, not the leaderboard. With one GPU, run Qwen3.8-27B: Apache 2.0, 16-19GB at 4-bit, and it scores 34 on the index to the next-best small model’s 25. With a 128GB Mac, run Qwen3.8-Flash-Next if its license works for you. With three or four 80GB GPUs, run GLM-5.3-Flash under MIT. With eight H200s, MiMo-V2.6-Pro is the top open weight and comes with the simplest license of the leaders. Kimi K3 needs at least eight GB300-class GPUs.

On Artificial Analysis’s current scale, the best open weight scores 46 to Claude Opus 5.5’s 58. On vendor-reported Terminal-Bench 2.1, open weights have caught up. Check both again in a month; this field moves that fast.