Signal Radar

2026-10-05

Tech news with the retellings removed: first-party announcements, measured numbers, and things you can use today.

257papers read
→
25shortlisted
→
8must-read

201 s · 261,664 input tokens · ≈ $0.0110 · jev-1.13.0 via typesafe

Must-read ≥ 90%

98%measurementreddit-ai

I trained a 3.87B MoE (1.45B active) from scratch on only 86.5B tokens

/u/Prestigious-Taste-63 · discussion

Measured result 98%Usable today 90%
Abstract

First of all, thank you for reading. I trained a small MoE model completely from scratch (no external base weights) and wanted to share the results + a couple of lessons. Apex-2 - Architecture: Decoder-only MoE, every layer is MoE (no dense layers) - Size: 3.87B total parameters, 1.45B active per token - 32 layers, d_model 2048, GQA 16Q/4KV, 16 experts, top-4 - Context: 4096 - Tokenizer: Qwen3 (151k) - Hugging Face: https://huggingface.co/YOON1v/Apex-2 (loads with transformers / vLLM via Qwen3MoeForCausalLM mapping) Training - Pretrain: 86.5B tokens (GH200 ×1 → ×2 with DiLoCo ) - SFT: ~2.5B tokens (code-heavy + math + instruction) - DPO: tried it, scores dropped, so I dropped the checkpoint Key numbers (SFT, greedy, chat template) Benchmark HumanEval 43.9 HumanEval+ 41.5 MBPP 56.3 MBPP+ 48.9 GSM8K (0-shot CoT) 32.4 MATH-500 21.0 IFEval (prompt strict) 44.7 MMLU (5-shot) 28.6 interesting comparison With only ~0.087T pretrain tokens, the base model’s HumanEval+ matched Qwen2.5-1.5B (which used 18T). Knowledge (MMLU) and math still lag far behind, as expected with the data gap. What didn’t work DPO (220k pairs, length-normalized) made answers much longer and hurt code / math / IFEval. I stopped it and kept the SFT checkpoint. Full log is in the benchmark write-up. Limitations (honest) - English-centric (almost no multilingual ability) - Weak knowledge → frequent hallucinations - LiveCodeBench medium/hard is near zero - 4k context only Happy to answer questions about the MoE setup, DiLoCo, or why DPO backfired. submitted by /u/Prestigious-Taste-63 to r/LocalLLaMA [link] [comments]

rss:475a5b3ed43caba1Useful?👍👎
97%analysisreddit-ai

From 1x3090 to 20 DGX Sparks: my house fuses were the first bottleneck

/u/ciprianveg

Measured result 97%Usable today 41%
Abstract

​ From the first LLaMA 33B I knew I wanted that magic-like intelligence locally, mine, so nobody could take it away when I needed it. I bought a 3090 for my home PC. Then LLaMA 65B appeared and I was dazzled, it looked like it had all the knowledge in the world. I made two copies, one local and one on my Synology NAS RAID, so I'd never lose it, and bought a second 3090 to run it. I was happy for a year with small coding tasks on LLaMA and Qwen models. Then DeepSeek 671B MoE appeared. Wow, frontier level at home. I upgraded to a Threadripper with 512GB DDR4 and ran it at 8 t/s with experts offloaded to RAM, or Qwen 235B at 10-12 t/s when I wanted speed. I used these for real coding at my job, in OpenWebUI. Then agentic coding took off and this was too slow. At 100k context generation speed halved and prefill made it a beautiful yet agonising experience. So: 16x3090 across P620-based nodes on a 100Gbit network. It ran MiniMax M2, Qwen 235B and even Qwen 397B, as good as anyone could desire. I built an entire paid project with 397B in OpenCode. But bigger models were out of reach, and the house circuit said no: the fuses blew whenever the rig and the electric oven ran together. Heat and stability were issues too. Next came 4x ASUS GB10, after I read they can be linked (3 was the biggest supported config). 397B at 30 t/s on 400W, versus 50-60 t/s at 6kW, rock solid and almost silent. A dream come true. I built two more projects with it. Then MiMo 2.5 Pro and Kimi 2.6 appeared, smarter and more productive. I found no published solution for an 8-node cluster, but I still bought four more GB10s and made it work. 397B ran at FP8 instead of INT4, and 20% faster. I posted the first MiMo 2.5 Pro and Kimi 2.6 solutions on 8xSparks on the NVIDIA forum. I liked the result so much that I talked my older brother into buying his own 8x GB10, so he could run the best open models locally too, in privacy, without depending on API availability and rising costs. His house is a 5-minute walk from mine. When Kimi K3 (2.8T) appeared, biggest and smartes open weights model, we joined the clusters: two 8x clusters for daily use, or one 16x when we want the biggest model at home. After some work I published the first working solution for Kimi K3 on 16x Sparks on the NVIDIA forum. Through multiple iterations, it went from an unusable 7 t/s at 100k context to a fairly usable 20 t/s at 300k. Now we're adding 4 more Sparks, so a smaller, faster model (GLM 5.3 Flash) runs 24/7 while the big cluster runs either GLM 5.3 on 8x plus MiMo 2.6 Pro on the other 8x, or 16x Kimi K3, or Qwen 3.8 2.4T. I'm always tuning speed on the big models and rebuilding vLLM/SGLang images, so always-on smaller cluster made sense, why? Because for all my work projects and my vllm/sglang personal projects, I chose to use only local hosted models, I never paid a comercial model subscription, not because of the cost, but, because of my strong confidence in local models future. They arrive October 2, along with 4 more Sparks for my younger brother, who got caught by the same local AI microbe :) submitted by /u/ciprianveg to r/LocalLLaMA [link] [comments]

rss:1324fb2782585404Useful?👍👎
97%analysissimonwillison

Claude Opus 5.5, GPT-6 Sol, GPT-6 Luna, and a new price war

Measured result 97%Usable today 73%
Abstract

Yesterday was Grok 4.7 ( pelicans ) and MiMo v2.6 Flash/Pro ( more pelicans ). Today Anthropic released Claude Opus 5.5 , and around an hour later OpenAI released GPT-6 Sol and GPT-6 Luna . It's going to take a while to get a good read on all of these new models, but here are my impressions so far. GPT-6 Sol and Luna are half the price of their GPT-5.6 equivalents GPT-5.6 Luna was already my favorite model for building applications against, because it combined excellent performance with being really cheap . Somehow GPT-6 Luna is half the price of that again - and GPT-6 Sol had a similar reduction compared to GPT-5.6 Sol. Here's what the pricing landscape looks like today: Model Input Cached input Output GPT-6 Luna $0.10/M $0.01/M $0.50/M GPT-5.6 Luna $0.20/M $0.02/M $1.20/M Grok 4.7 $2/M $0.50/M $6/M GPT-6 Sol $2/M $0.20/M $10/M GPT-5.6 Terra $2/M $0.20/M $12/M Claude Opus 5.5 $4/M $0.20/M $20/M GPT-5.6 Sol $4/M $0.40/M $20/M Claude Fable 5.1 $10/M $0.25/M $50/M GPT-6 Astra $10/M $1/M $50/M Note that GPT-5.6 has a scheduled 25% price increase for November, so GPT-6 is half the price of the promotional pricing for those models. (With GPT-5.6 Terra priced the same as GPT-6 Sol, any remaining reasons to use Terra just evaporated.) It's hard to overstate how competitive this pricing is. Grok 4.7 priced itself at $2/$6, less than half the price of GPT-5.6 Sol, but is now equally priced to GPT-6 Sol on input and closer on output. At $0.10/$0.50 GPT-6 Luna is one of the cheapest models OpenAI have ever released, beaten only by the far weaker GPT-4.1 Nano ($0.10/$0.40, April 2025) and GPT-5 Nano ($0.05/$0.40, August 2025). I rendered pelicans for GPT-6 Luna and for GPT-6 Sol , then I combined them all together in this comparison grid along with the GPT-5.6 pelicans. I like how you can instantly see that the 5.6 family chose bolder, brighter colors, while the 6 family is a lot more muted. I still think GPT-6 Astra on max produced the best pelican. Claude Opus 5.5 got a price cut too Opus 5.5 looks like it addresses the biggest complaints people had about Opus in terms of its communication style. Thariq Shihipar : Opus 5.5 is the result of your feedback. It communicates clearly, it's cheaper per token than Opus 5.0 with the intelligence of Fable 5.1 it's very token efficient and works across every effort level. It's also meant to be better at Blender . I'm looking forward to putting it through its paces there. Opus 4.5, 4.6, 4.7, 4.8, and 5 all shared the same price: $5/million tokens for input and $25/million for output. 5.5 is a 20% reduction - $4/million and $20/million. The price for cache reads fell 60%. That's significant for longer agentic conversations, where 90%+ of input tokens are processed at cached token prices. The new price for Opus 5.5 is the same as the price for GPT-5.6 Sol, but that was before OpenAI dropped their Sol prices by half. GPT-6 Astra and Claude Fable 5.1 are both priced at $10/million input and $50/million output. The price war currently affects the next tier of models below that. Anthropic say that Sonnet 5.5 and Haiku 5.5 are coming soon. It's going to be interesting to see if Haiku can regain its price competitiveness at the lower end, given current Haiku 4.5 is $1/$5 while the latest GPT-6 Luna is one tenth of that price at $0.10/$0.50. Claude Opus 5.5 max over-thinks to the point of breaking In a first for my " Generate an SVG of a pelican riding a bicycle " test, Claude Opus 5.5 at "max" thinking level failed to return a response! It started by calling this "a classic test request", and then thought really, really hard about what it was doing: This is a classic test request, so I want to plan out a well-composed pelican with its distinctive beak and pouch riding a bicycle with proper wheels, frame, and pedals, set against a simple sky and ground backdrop. [...] Verifying the shin length checks out at roughly 95.2, close enough. Now I'm working out the near leg path from hip to knee to ankle, then sketching the foot shape resting on the pedal — outlining the heel, toe tips, and sole contour with a path using lines and curves to sit naturally on the pedal surface around y=478-494. [...] I like the fish sticking prominently out of the basket with the pelican eyeing it as a fun detail worth keeping. I'm also confirming the eye placement near the bill base matches typical pelican anatomy, and considering giving it a slightly happier expression. [...] The far leg reads correctly as passing behind the frame, so I'm moving on to check the chainring teeth and confirm layer ordering—the far crank arm should be mostly hidden by the seat tube and chainring. I'm settling on the final SVG's width and height attributes alongside the viewBox to ensure proper scaling, noting there's no text so no font-family is needed. [...] I was so excited to see this pelican... but then it stopped . Opus 5.5 has a 128,000 maximum output token limit (as do the other Claude models), and it hit that while it was still reasoning about the SVG! I tried a second time and got the same result. This makes me suspect that "max" is effectively useless - if it over-thinks to breaking point on a stupid SVG prompt I don't trust it not to do the same for more interesting work. (Those two failures each cost me $2.56 and took nearly 20 minutes.) Fable 5.1 on "max" didn't over-think and did give me the best pelican I've seen from any Anthropic model. Here are the Opus 5.5 pelicans , excluding 5.5 max. I also built this comparison grid comparing them with pelicans by Opus 5, Fable 5.1, and Sonnet 5: Comparing different model vendors by how well they draw a pelican riding a bicycle may not make much sense now (if it ever did), but I'm still finding value in using them for comparisons of the same model families at different reasoning levels. I'm now using GPT-6 Sol and Claude Opus 5.5 as my default models in Codex and Claude Code. I've upgraded the Datasette Agent demo at agent.datasette.io to use GPT-6 Luna, and it seems to be fast and competent at both SQL queries and building HTML and JavaScript for Datasette Apps . Tags: ai , openai , generative-ai , llms , anthropic , claude , llm-pricing , pelican-riding-a-bicycle , llm-release , gpt , gpt-6-astra

rss:a06244909c409812Useful?👍👎
95%releasereleases-vllm

vllm v0.31.0

khluu

First-party 95%Usable today 89%Measured result 62%
Abstract

v0.31.0 Highlights This release features 717 commits from 307 contributors (96 new)! DeepSeek-V4.1-Flash performance : FlashMLA mega attention with the V4.1 NVFP4 compressed KV cache is now the SM100 default ( #56935 ); DeepGEMM sparse MQA logits for the indexer ( #56254 ) and Mega-Gate fusing the gate GEMM with expert selection ( #56266 ); decoder boundaries fuse the TP all-reduce, mHC input preparation ( #57643 ) and the MoE finalize ( #58586 ); a fused small-batch WO-A with inverse RoPE and MXFP8 quant on SM100/SM103 ( #58634 ); the MXFP8 wo_b GEMM fused with the sequence-parallel reduce-scatter ( #57428 ); Engram wkv sharded across TP ranks ( #58678 ) and Engram host tables shared across co-located DP replicas by default ( #57651 ); encoder CUDA graphs for the vision tower ( #56625 ); and SWA bounded replay that keeps the sliding-window KV out of prefix caching ( #56227 ). Fast restart : the new vllm preload CLI launches the weight-cache daemon that keeps post-quantized weights resident in GPU memory across engine restarts ( #56680 ), now with data parallelism ( #57386 ), MTP draft models ( #57312 ), a /health endpoint ( #58552 ) and a readiness wait ( #58370 ). Experimental initialized-engine snapshots ( vllm snapshot create/restore ) use CRIU to restore a fully initialized TP1 engine ( #51360 ). Model Runner V2 and speculative decoding : draft-model speculative decoding ( #43091 ) and custom logits processors ( #56497 ) on Model Runner V2; the new LiLiCorr drafter ( #57934 ); async scheduling for DFlash ( #58065 ) with the context K/V precompute captured in the draft CUDA graph ( #57632 ); DSpark adaptive verification for Gemma4 ( #57263 ) and variable-length decode for Kimi-K3 ( #52988 ); a DCP target with a non-DCP DSpark draft ( #56723 ); and MoE memory now counted during MRV2 profiling, avoiding OOMs on WideEP deployments ( #57270 , #58411 ). Large scale serving : MoonEP balanced EP all2all backend via --all2all-backend moonep ( #52101 ), prefill context parallelism with data parallelism ( #57075 ), a low-SM multimem reduce-scatter for SM100/SM103 ( #55072 ), DeepEPv2 with sequence parallelism ( #57210 ) and EPLB with shared-expert overlap ( #57236 ), a sharding-aware NCCL M2N weight-transfer backend for RL ( #51520 ), and KV offloading back-pressure detection ( #50045 ). Scheduling controls : --max-num-active-seqs caps RUNNING admission independently of max_num_seqs ( #56758 ), --long-prefill-token-threshold now adapts to the number of waiting prefills instead of chunking a lone request ( #57951 , #58459 ), the waiting queue was reworked so requests already holding KV blocks are scheduled first ( #58947 ), and the KV connector + MTP deadlock under KV pressure was fixed ( #57104 ). HiSparse hardening : MTP verification rows resolved with a union residency kernel ( #59235 ), MTP acceptance collapse under FULL graphs fixed ( #59309 ), no GPU pages without host backing ( #59036 ), a chunked-prefill preemption livelock fixed ( #59494 ), KV cache sized from the groups HiSparse allocates ( #59450 ), and host prefix publication and GPU prefix adoption fixes ( #59007 , #59282 ). Security : per-request mm_processor_kwargs and media_io_kwargs are rejected unless --trust-request-mm-kwargs is set ( #58830 ); prefix-cache extra keys are tagged by source so a LoRA name and a cache_salt can no longer collide ( #51899 ), and the LoRA path is part of the block hash ( #59335 ); stale multimodal receiver-cache entries can no longer replace fresh payloads ( #57833 ). Breaking changes : per-request multimodal kwargs gated ( #58830 ); tokenizer_mode="slow" removed ( #58545 ); --enable-mamba-fine-grained-prefix-cache renamed to --enable-mamba-shared-prefix-checkpoint ( #57382 ); online quantization through quantization="fp8" replaced by the fp8_per_tensor shorthand ( #53585 ) and Quark silent online quantization removed ( #51800 ); the AllSpark INT8 W8A16 backend removed ( #58001 ); --enforce-eager now also disables JIT kernel warmup ( #58197 ); XPU graphs enabled by default with VLLM_XPU_ENABLE_XPU_GRAPH removed ( #51600 ). Release Artifacts Python Wheels Platform Install PyPI (CUDA 13.0) pip install vllm PyPI (CUDA 13.0, uv) uv pip install vllm --torch-backend=auto ROCm pip install vllm --extra-index-url https://wheels.vllm.ai/rocm/0.31.0/rocm723 XPU uv pip install vllm --extra-index-url https://wheels.vllm.ai/0.31.0/xpu --extra-index-url https://download.pytorch.org/whl/xpu --index-strategy unsafe-best-match Docker Images Platform Docker Image CUDA 13.0 (Default) docker pull vllm/vllm-openai:v0.31.0 CUDA 12.9 docker pull vllm/vllm-openai:v0.31.0-cu129 ROCm docker pull vllm/vllm-openai-rocm:v0.31.0 CPU docker pull vllm/vllm-openai-cpu:v0.31.0 XPU docker pull vllm/vllm-openai-xpu:v0.31.0 Other Artifacts Pre-built release artifacts are available in the Assets section at the bottom of this page, including: Source distribution tarball CUDA 12.9 Python wheels for x86_64 and arm64 CUDA 13.0 Python wheels for x86_64 and arm64 CPU Python wheels for x86_64, arm64, and macOS XPU Python wheel for x86_64 Model Support New model capabilities : DiffusionGemma structured generation mode with bounded single-token choices ( #57250 ), MiMo V2 MXFP4 MoE, BF16 MoE router and DFlash drafts ( #57784 ), Cohere2MoE auxiliary hidden states for EAGLE3/DFlash drafters ( #49819 ), GLM-5.2-MXFP4 on the ROCm DeepSeek-V3.2 path ( #51915 ), AMD-Quark mixed-precision DeepSeek-V4.1-Flash-MXFP4 ( #57071 ) and GLM-5.3-Flash Quark MXFP4 ( #56176 ) checkpoints, and a built-in granite_thinking_parser for Granite 4.2 ( #55957 ). DeepSeek-V4.1-Flash : FlashMLA mega attention with the NVFP4 compressed KV cache as the SM100 default ( #56935 ), DeepGEMM sparse MQA logits in the indexer ( #56254 ), Mega-Gate ( #56266 ), fused TP all-reduce + mHC input preparation ( #57643 ) with the MoE finalize folded in ( #58586 ), fused small-batch WO-A ( #58634 ), MXFP8 wo_b GEMM + reduce-scatter ( #57428 ), overlapped mHC coefficients for small TP batches ( #57603 ) limited to FULL CUDA graphs ( #57874 ), Engram wkv sharded across TP ( #58678 ), serialized Engram lookups with huge-page host tables ( #56926 ), Engram tables shared across DP replicas by default ( #57651 , #57914 , #59068 ), native shared-expert MegaMoE fusion without padding ( #56568 , #57204 ), faster MegaMoE staging and NVFP4 cache gathers ( #57604 ), the fused query RMSNorm + MXFP8 path restored ( #57679 ), KV-only DSpark context insertion ( #56441 ), vision encoder CUDA graphs ( #56625 , #58499 ), SWA bounded replay ( #56227 ), causal image SWA restored to match the reference ( #57152 ), updated reasoning effort mappings ( #58316 ), and startup fixes for NaN-scored candidate blocks ( #57454 ), DeepSelect sentinels ( #58215 ), DSpark non-causal attention on FlashInfer ( #57432 ), runtime JIT of offset candidate buffers ( #57667 ) and imports without Triton ( #57654 ). DeepSeek V4 : FlashInfer sparse MLA with fused inverse RoPE + FP8 quant ( #58621 ), stacked DSpark context WKV projections ( #54674 ), fused MoE expert distribution computed from the EP group ( #57465 ), FIM completion via suffix ( #44229 ), missing string= in tool calls parsed ( #56271 ), request tools attached to an existing system message ( #51856 ), image block spacing preserved ( #56882 ), and DSpark width separated from MTP stage validation ( #54631 ). GLM-5.3-Flash : opt-in FlashAttention and FlashMLA sparse backends on SM90 ( #55385 ), NoPE sparse MLA on the FlashInfer SM120 backend ( #55277 ), cooperative top-k for small decode batches ( #57327 ), indexer decode workspace sized by pooled length (3 GiB saved, #57701 ), metadata ops 1.6-4.8x faster ( #58450 ), fused kpool tail slot mapping ( #57534 ), kpool top-k through the shared dispatcher ( #57546 ), lower sparse MLA preparation overhead ( #57458 ), no D2H sync in the SM90 sparse MLA plan under async scheduling ( #58684 ), FlashKDA keeping the recurrent state in FP32 for long prefills ( #58846 ), and correctness fixes for kpool corruption with speculative decoding ( #58454 ), SM90 index_kpool mismatch ( #58704 ), kpool tail strides ( #57477 ), 500k-token prompts ( #57317 ), dense MLP layers under sequence parallelism ( #58061 ), indexer top-k backend selection ( #58594 ) and varlen paged MQA launches ( #55270 ). Qwen3.8-Flash-Next (Qwen4Exp) : FP8 main KV cache on the QSA path ( #55557 ), FP8 TP with FlashInfer TRTLLM MoE ( #55867 ), SM90 QSA tuning ( #57273 ), fused HC down projection + SiLU ( #58957 ), lower PLE metadata overhead ( #58114 ), QSA indexer workspace fragmentation fixed ( #57105 ), profiling KV cache released ( #58961 ), pinned PLE prefetch ids kept out of the CUDA graph pool ( #58489 ), and indexed expert-mapping lookups saving about 25 s of weight loading on DGX Spark ( #58720 ). Kimi K3 and MiniMax-M3 : Kimi-K3 vision patch embedder as a GEMM ( #58527 ), fused KimiViT QK RoPE (up to 29x, #58651 ), routed expert quantization ( #57430 ), reasoning parser ( #57098 ) and reasoning token counting ( #58372 ) fixes, DSpark context KV pointers refreshed after re-binding ( #58814 ), stateless first chunks no longer classified as decodes ( #51483 ), and Mamba block estimates that no longer stall admission on external prefix hits ( #57050 ); MiniMax-M3 encoder CUDA graphs ( #58673 ), Conv3dLayer patch embedding (about 62x, #58512 ), triton_mrope in the vision tower ( #58526 ), fused MiniMax2 routing with non-unit scaling ( #58880 ), and processor fixes ( #58460 , #59613 ). DiffusionGemma : one-pass sampler statistics kernel ( #58226 ), diffusion_constrained reads over logprob_token_ids (about 25% faster, #58216 ), fewer logit rows for prefill-only batches ( #57416 ), logprob_token_ids support ( #57417 ), and fixes for concurrent logprobs ( #57414 ), eager fallback dtype ( #57462 ), multimodal inputs ( #57589 ), quantized LM heads ( #48521 ) and CPU execution ( #58964 ). Multimodal : Triton mm_input_norm kernel ( #56798 , #56711 ), raw pixels kept through the DP-sharded ViT path ( #56872 ), Qwen2.5-VL video fps honored for temporal M-RoPE ( #47736 ), Whisper and Qwen2-Audio clips longer than 30s ( #57769 , #56912 ), Mistral3 placeholder grid ( #53758 ), Idefics3 unsplit patches ( #48760 ), Ovis2.5 tokens ( #52623 ), Aria expert weights ( #57487 ), MiMo-V2.5 fused FP8 qkv_proj sharding ( #57508 ), Gemma4 AutoWeightsLoader ( #55911 ) and buffer scalars ( #54213 ), Gemma4 FP8 KV with FA4 at head dim 512 ( #53175 ), Laguna RoPE ( #57189 ), Mistral-Large-3 accuracy regression ( #57563 ), malformed EXIF ( #56527 , #57234 ), JinaVL labels ( #57347 ), Sarvam MLA routing with FP32 router logits ( #56034 ), fused CohereASR attention scores ( #55190 ), and fused DFlash2 grouped convolution ( #55960 ). LoRA : Nemotron VL language models ( #56231 ), ModernBert ( #57148 ), VoyageQwen3 embeddings ( #57708 ), RoBERTa sequence classification ( #58884 ), and modules_to_save sequence-classification heads ( #53555 ) with per-adapter num_labels ( #57766 ). Engine Core Model Runner V2 : draft-model speculative decoding ( #43091 ), custom logits processors ( #56497 ) validated at admission ( #57728 ), randomized dummy inputs ( #58411 ), dummy tokens routed to MoE experts during profiling ( #57270 ), FULL decode graphs for one-token prompt tails ( #58400 ), token-to-request mappings shared ( #57102 ) and Mamba/GDN metadata reused across KV cache groups ( #58762 ), encoder-only ViT CUDA graphs ( #56922 ), weight offloader ( #57834 ) and pooling model ( #57737 ) released on shutdown, and fixes for multi-layer MTP KV in P/D ( #55055 ), fast-prefill with LoRA ( #56456 ), stale block-table writes from dummy draft steps ( #56734 ), padded prompt tails in hybrid models ( #58434 ), never-proposed draft slots ( #58784 ), auto-fit max_model_len ( #58149 ) and intermediate_tensors during capture ( #57745 ). Speculative decoding : LiLiCorr drafter ( #57934 ), DFlash async scheduling ( #58065 ) and context K/V in the draft CUDA graph ( #57632 ), Gemma4 DSpark adaptive verification ( #57263 ), Kimi-K3 variable-length adaptive verification ( #52988 ), CPU-GPU sync removed for heterogeneous vocabularies ( #57396 ), Triton recompiles avoided in the acceptance estimator ( #57107 ), and fixes for EAGLE/dense drafts with EP ( #56930 ), DFlash/DSpark profiling batches ( #56448 ), GLM MTP head memory ( #55442 ), prompt embeddings with drafts ( #57356 ), and TritonMLA causal multi-token decode ( #51065 ). Scheduler : --max-num-active-seqs ( #56758 ), adaptive --long-prefill-token-threshold ( #57951 , #58459 ), skipped_waiting replaced by a KV-holding waiting queue ( #58947 ), atomic admission of n > 1 requests ( #53936 ), KV connector + MTP deadlock ( #57104 ), a throughput cliff when max_num_seqs is not a multiple of 8 ( #57355 ), streaming continuations keeping logprobs and refreshing max tokens ( #57447 , #57676 ), a resumable request + async scheduling race ( #58259 ), and a non-blocking structured-output grammar poll ( #55931 ). Prefix caching and hybrid models : extra keys tagged by source ( #51899 ) and LoRA paths hashed ( #59335 ), --enable-mamba-shared-prefix-checkpoint ( #57382 ), prompt-tail hits with MTP restored ( #58368 ), prompt-end checkpoints kept under sparse retention ( #59146 ), align-mode checkpoint reservation ( #59175 ), stateless GDN first chunks ( #51565 ), MTP draft KV cache groups annotated on the hybrid grouping path ( #55390 ), a generalized prefill checkpoint builder ( #57783 ), batched Mamba2 prefill state saves without GPU-CPU syncs ( #49371 ), skip_reading_prefix_cache honored for connector hits ( #57269 ), incremental multimodal block hashing ( #51694 ), a KV block size every attention backend supports ( #49845 ) with clearer errors ( #58557 ), and CacheConfig.effective_attention_block_size for DCP ( #56538 ). Startup and memory : parallel Triton warmup compilation ( #58582 ), JIT warmup disabled under --enforce-eager ( #58197 ) unless fault tolerance is on ( #58593 ), DeepGEMM warmup reusing the MoE workspace ( #57268 ), allocator fragmentation no longer shrinking the KV cache during profiling ( #58430 ), sparse prefill buffers reserved before KV sizing ( #57575 ), stale FlashMLA workspace views released ( #56902 ), DeepGEMM FP8 workspace halved ( #53914 ), shared Marlin/Humming workspaces ( #57421 ), FlashInfer BF16 MoE weights converted in place ( #54699 ), UniProc startup threads bounded by the CPU quota ( #58946 ), and runtime threads set before profiling ( #55891 ). Kernels : sampled filtering for persistent top-k ( #56346 ), Murmur3 RNG for Gumbel sampling ( #51367 ), register-resident per-token-group 8-bit quant ( #55330 ), vectorized per-tensor FP8 abs-max ( #58194 ), a Triton kernel dispatcher for platform-specific overrides ( #43048 ), GateLinear for all MoE models ( #58234 ), non-local expert slots skipped in TritonExperts ( #58051 ), deferred TRT-LLM-Gen top-k finalize on the modular path ( #58635 ), SM120 batch-invariant matmul configs ( #57456 ), FlashInfer prefill dequant scratch bounded ( #57918 ), and fixes for Triton softcap NaNs ( #56579 ), QuIP Hadamard transforms ( #43462 ), CUTLASS FP8 linear on A100 ( #55884 ), FlashInfer sampling on unsupported GPUs ( #48956 ), SM100 FP8 blockwise scale padding ( #57377 ), mixed FULL graph prefill capture ( #58275 ) Inductor custom-op pattern matching ( #58189 ), CuteDSL BF16 GDN prefill diverging from FLA on Qwen3.5 ( #53864 ), SM100 fp8_ds_mla cache scales ( #49435 ), ragged decode batches in the sparse indexer ( #52500 ), stale allowed_token_ids masks after batch reordering ( #48419 , #43931 ), and prompt_embeds tensors held after requests finish ( #57988 ). Batch invariance : breakable CUDA graphs without torch.compile by default under VLLM_BATCH_INVARIANT ( #57586 ), sequence parallelism and async TP disabled ( #56377 ), and NCCL 2.31 collectives kept enabled ( #58179 ). Sleep and RL : release_kv_cache_memory() frees only KV cache memory ( #44890 ), --sleep-preserve-parameter-names retains frozen weights across level-2 sleep ( #57891 ), NCCL M2N weight transfer ( #51520 ), dense DP weight updates by DP index ( #56950 ), allocator config kept when toggling expandable segments ( #57982 ), and cache reset failures propagated during sleep ( #54581 ). Fast restart : vllm preload ( #56680 ), DP ( #57386 ), MTP drafts ( #57312 ), readiness wait ( #58370 ), /health ( #58552 ), ModelOpt MXFP8 pre-processed weights ( #57316 ), and initialized-engine snapshots ( #51360 ). Logging and observability : LoggingConfig via --logging-config and --log-level ( #57205 ), JSON logging fixes ( #57957 , #58747 ), startup log suppression fixed ( #51366 ), unified platform-aware torch profiling ( #57460 ), no 0.0% prefix cache hit rate before any query ( #54990 ), KV transfer metrics formatting ( #57068 ), MFU activation sizing from the model dtype ( #57070 ), platform-overridable env var checks ( #48599 ), VLLM_TARGET_DEVICE=empty pip install vllm for out-of-tree backends ( #41074 ), and the correct vLLM version reported when installing from source ( #57295 , #57744 ). Large Scale Serving MoE communication : MoonEP backend ( #52101 ), DeepEPv2 with sequence parallelism ( #57210 ) and EPLB + shared-expert overlap ( #57236 ), low-SM multimem reduce-scatter ( #55072 ), EPLB load statistics during Elastic EP scaling ( #58473 ), SP padded rows skipped in grouped routing so rank 0 is no longer a prefill straggler ( #56079 ), hash routing rejected on unsupported monolithic backends ( #57867 ), sampled-token broadcasts skipped under PP for requests leaving the engine ( #58542 ), DBO with DeepEP low-latency profiling ( #57502 ), external LB with replicas sharing nodes ( #53743 ), and no blocking RPC during the engine handshake ( #57226 ) or unbounded draft-token waits ( #58779 ). Context parallelism : PCP with DP, EP and MTP ( #57075 ), a DCP target with non-DCP DSpark/DFlash drafts ( #56723 ), DCP sequence lengths without a CPU-GPU sync ( #58169 ), and NIXL DCP pulls across MLA cache regions ( #57389 ). KV connectors : NIXL pipeline-parallel push prefill for attention-HMA ( #50494 ) and packed MLA layouts ( #50499 ), transport-failure metrics split from KV expiry ( #55854 ), dead peer state released without waiting for TTL ( #50047 ), expired leases reaped behind a heartbeated head ( #58292 ), push completion restored ( #58188 ), D-side activity recorded ( #52245 ); Mooncake CUSTOM_MEM_POOL ( #49300 ), request-level load failures under HMA ( #56855 , #57174 ) and bootstrap retries ( #58919 ); MoRIIO hybrid Mamba/KDA state in READ mode ( #51052 ) and a multi-decode routing race ( #51681 ); prefill cache hits in prompt_tokens_details ( #54222 ); KV-event publishers bound at port 0 ( #55844 ); KV cache metadata GET restored for external consumers ( #56925 ); partial-block KV events keep every multimodal feature ( #58288 ); saves finalized on steps without a forward ( #57775 ); abort-safe ExampleHiddenStatesConnector ( #56841 ); DecodeBench FP8 fills ( #58472 ); a KvHints request envelope ( #53423 ); and the AuxOutput connector for routed-expert outputs ( #45635 , #58150 , #58205 ). KV offloading : per-request max_load_tokens ( #55885 ), back-pressure detection ( #50045 ), SimpleCPUOffloadConnector Prometheus metrics ( #57251 ), non-prefix-cacheable ( #56810 ) and scratch ( #57145 ) groups skipped, replicated layouts for multi-group MLA ( #57652 ), regions of 512 GiB or more registered in chunks ( #51081 ), cgroup memory checked before SHM allocation ( #54014 ), and fixes for cache recency ( #51787 ), MTP-retained sliding windows ( #56709 ), canonical MLA rows ( #56799 ), event metadata ( #57453 ) and ROCm pinned memory ( #57160 ). HiSparse : union residency kernel for MTP rows ( #59235 ), MTP acceptance under FULL graphs ( #59309 ), host-backed allocation ( #59036 ), preemption livelock ( #59494 ), KV cache sizing ( #59450 ), host prefix publication ( #59007 ), GPU prefix adoption ( #59282 ), and residency metrics ( #58725 ). Encoder disaggregation (EPD) : dynamic EPD proxy with launcher-managed registration ( #54176 ), image requests batched per encoder ( #57095 ), cross-encoder caching through Mooncake ( #56242 ), metadata-only audio inputs ( #57887 ), language-model shards skipped for --mm-encoder-only ( #58086 ), EC connector metrics ( #54960 ), and encoder-only fixes ( #58490 , #58287 , #57696 ). Hardware & Performance NVIDIA : FlashInfer 0.7.0.post1 ( #58069 , #59323 ), DeepGEMM pin bump with SM120 fixes ( #57218 ), Rubin CUDA 13.4 nightly images ( #55953 ), and QuTLASS builds with PyTorch 2.13 ( #58173 ). AMD ROCm : AITER v0.1.23 ( #56885 , #58867 ), torch 2.13 and Triton 3.8 ( #50605 , #58006 ), triton_kernels 3.8 MXFP4 MoE for gpt-oss and DeepSeek-V4 ( #55934 ), a ROCR host segfault fixed ( #57328 ); DeepSeek-V4/V4.1 HCA dual-stream ( #56853 ) and layer-aware CSA2 overlap ( #57407 ), FP8 wo_a ( #54894 ), inverse RoPE fused into the sparse decode reduce ( #57435 , #57451 ) which now emits MXFP8 for a grouped FP8 wo_a ( #58456 ), MXFP8 GEMM on native 32x32 scales on gfx950 ( #58510 ), reused top-k ragged metadata ( #57434 ), faster candidate block selection ( #58208 ), Engram tables in host memory ( #57491 ) and Qwen3.8-Flash-Next PLE tables offloaded to host memory ( #57497 ), an opt-in AITER ASM decode route for DCP + speculative decoding ( #56861 ), get_top_tokens() on the DeepSeek V4 MTP drafter ( #57568 ), DSpark adaptive verification ( #52362 ), opt-in VLLM_DSV4_LOGITS_FIX for sparse-indexer logits on gfx950/gfx942 ( #50455 ), an accuracy revert of #56433 and #51692 ( #57132 ), and clear errors for FSE with DPA+ETP ( #57919 ); Kimi-K3 a4w4 FlyDSL kernels ( #53940 ) with VLLM_ROCM_USE_AITER_MOE_SITUV2=a16w4|a8w4|a4w4 ( #58201 ), low-concurrency speculative KDA ( #58045 ), sharded latent MoE under EP ( #54956 ) and fewer projection copies ( #50592 ); a ROCm Hy4 path with torch.compile (13x lower decode latency, #57526 ); MiniMax-M3 AITER QK-norm fusion ( #54535 ), copy-free K/V insert ( #56849 ) and MXFP8 fixes ( #53674 , #58089 ); GLM-5.3-Flash boot fixes ( #57192 , #57252 , #57425 ); AITER QuickReduce + RMSNorm ( #48249 ), BF16 AsyncTP ( #58098 ), static FP8 attention output fusion ( #58099 ), QK-norm/RoPE/KV-cache fusion for MRoPE ( #50212 ), AITER GDN decode for flat layouts ( #53623 ), wvSplitK for single-output GEMMs ( #53283 ), 69 fewer copies per decode step on the skinny GEMM path ( #58566 ), tuned GEMM lookup through AITER ( #55001 ), a narrower Triton prefill KV tile on RDNA3/RDNA4 ( #58225 ), staged large pageable H2D copies ( #56343 ), and fixes for MXFP4 MoE padding starving the KV cache ( #56359 ), AITER MLA FP8 prefill OOM ( #57923 ), unquantized cache descales ( #56726 ) and AITER MoE fallbacks ( #56590 , #57866 , #57426 ). VLLM_ROCM_USE_AITER_FP4_ASM_GEMM is restored and off by default ( #57055 ); SWA bounded replay is disabled on ROCm ( #57906 ). Intel XPU : PyTorch 2.14 ( #56013 ), XPU graphs on by default ( #51600 ), EPLB ( #44987 ), int8 W8A8 MoE on Triton ( #53162 ), batch invariance ( #55881 ), SYCL rotary embedding ( #55721 ), fused QK RMSNorm + RoPE + gate (decode region 55% faster, #56096 ), Model Runner V2 sampler ( #57277 ) and PP microbatch control ( #55145 ), --device-ids honored ( #56015 ), and device pointer overflow fixed ( #54514 ). CPU : FP8 W8A8 linear and MoE for Intel Diamond Rapids ( #49942 ), Arm paged attention up to 25% faster ( #56045 ), Zen DA8W4 int4 for dense and MoE layers ( #54024 ), zentorch SDPA for encoder attention ( #54508 ) and MLA prefill ( #54967 ), FP32 attention sinks ( #56252 ), W8A8 INT8 MoE on POWER ( #55316 ), W4A16 Whisper ( #58268 ), wheels built on Ubuntu 22.04 (glibc 2.34) with AMX-FP8 ( #58515 ), AVX10.2 gated on compiler support ( #58133 ), pre-built Triton CPU ( #58140 ), --device-memory-utilization alias ( #56547 ), vLLM Recipes in the CPU image ( #58796 , #57306 ), s390x protobuf pin ( #54978 ) and torchcodec video ( #58693 ), and fixes for Ministral FP8 ( #56985 ), FP32 router weights ( #56168 ), zentorch import failures ( #54923 ), macOS multimodal SHM ( #57142 ), CPU affinity per local rank ( #53636 ) and NIXL GDN state layout ( #53300 ). Quantization Humming : Hadamard transforms and NVFP4/MXFP4/MXFP8 online quantization ( #56685 ), asymmetric wNaM through compressed-tensors ( #46528 ), humming-kernels 0.1.16 ( #58054 ), and Humming in the W4A8 (INT4xFP8) MoE oracle ( #58427 ). New capabilities : native Quark W4A16 INT4/UINT4 exports ( #48606 ), opt-in load-time MXFP4 dequantization ( #50814 ), explicit per-token NVFP4 MoE backends ( #57176 ), and a canonical N-first layout for compressed-tensors WNA16 MoE ( #52798 ). Fixes : MXFP8 on layers below mm_mxfp8 shape limits ( #54223 ), online NVFP4 scales on reload ( #57954 ), LM head linear metadata ( #58444 ), and the fused SiLU-mul block-quant path skipped under a SwiGLU clamp ( #57984 ). API & Frontend New options and endpoints : --tool-strict-level ( #56268 ), response_format with tool_choice=auto ( #56086 ), DeepSeek-V4 FIM completions ( #44229 ), release_kv_cache_memory() and POST /release_kv_cache_memory ( #44890 ), fixed-token prefill scoring via prompt_logprob_token_ids ( #54335 ), per-request speculative decoding metrics in /inference/v1/generate ( #43310 ), per-request metrics ( #55084 ) and cache_write_tokens ( #57222 ) in the Responses API, Anthropic thinking in /v1/messages ( #58613 ), streaming reasoning and tool calls from the derender endpoint ( #50550 ) with offloaded detokenization ( #57528 ), vllm chat streaming thinking output ( #57045 ), request body debug logging with --enable-log-requests ( #58163 ), and only the summary line of config docstrings in --help ( #57357 ). Structured output and parsers : native Lark grammars in the xgrammar backend ( #58321 ), XGrammar 0.2.7 ( #57272 ), Granite migrated to the streaming Parser Engine ( #49648 ), and fixes for reasoning boundaries ( #56635 ), xgrammar choices with control characters ( #48115 ), list-typed JSON Schema ( #48416 ), empty structural_tag ( #47450 ), outlines EOS handling ( #58612 , #57743 ), parser-suppressed streaming logprobs ( #58583 ), Inkling tool names after reasoning ( #58792 ), and length finish_reason for truncated streaming tool calls ( #46303 ). OpenAI, Anthropic and Harmony compatibility : reasoning token counts for Harmony, DeepSeek-V3 and Step3 (#58626) and per Responses tool round (#58927), Harmony max_output_tokens in the tool loop (#58551), batched chat completions using the adjusted requests (#58929, #58958), a fresh parser per choice (#58939), deferred reasoning recounts (#56067), Responses MCP cleanup (#56988) and image detail default (#57241), Anthropic inline system detection (#58754) and disabled thinking with P/D (#58786), stop strings rejected on --tokens-only servers (#57058), invalid prompt_embeds returning 400 (#55451, #57006), prompts bounded after multimodal expansion (#57076), --override-generation-config penalties (#50769), Hub revisions (#56092, #57461), full logprobs in token-in/token-out responses (#58488), generative scoring cancellation (#57729, #58788), gRPC keepalive pings (#55102), and run-batch diarized transcriptions (#57948). Pooling : chunked embedding padding (#56505) and normalization (#57498), reranker tokenization with document limits (#57666), and BERT-family heads kept for raw logits (#57664). Rust frontend : --hf-overrides (#56931), --sse-keep-alive-interval (#58306), custom chat roles (#58311), MiMo V2.5 parsers (#57933), normalized reasoning controls (#56998), parser-owned output grammars (#55269, #57340), sampling masks over gRPC (#56777), local DP size in gRPC metadata with vllm-proto 0.3.0 (#57116, #57233), a per-request preemption histogram (#57033), lock-free histograms (#58574), Nemotron-H vision context (#57634), model-owned vision processors (#58109), an mm-processor benchmark (#51922, #58084, #58378), unsupported serve args recognized (#58330), NaN logprobs no longer killing the engine client (#51026), appended EngineCoreOutput fields accepted (#56533), and vllm-rs on PATH in the CUDA image (#57606). Benchmarks : an openai-responses backend for vllm bench serve (#54628) and model_id in latency/throughput JSON (#58112). Security Per-request mm_processor_kwargs and media_io_kwargs are rejected by default; trusted deployments opt in with --trust-request-mm-kwargs (#58830). Prefix-cache block hashes tag extra keys by source (#51899) and include the LoRA path (#59335); multimodal hash input is framed (#54283) and incremental block hashing covers every overlapping feature (#51694). Fresh multimodal payloads take precedence over a stale receiver cache (#57833), and encoder-cache hits with mismatched embedding counts are rejected (#57696). min_tokens above the filled max_tokens default is rejected instead of wedging the engine (#57731); message sanitization filters upper-case memory addresses (#58832); LoRA adapters named after a served model are rejected (#59286). Dependencies FlashInfer 0.7.0.post1 (#58069, #59323), Transformers 5.17.0 (#56108) with an upper bound in requirements (#59614), XGrammar 0.2.7 (#57272), oss-harmony replacing openai-harmony (#55128), DeepGEMM fork pin bump (#57218), FlashKDA bump (#58846), and humming-kernels 0.1.16 (#58054). CUDA 12 images use LMCache 0.4.4 and CuPy CUDA 12 (#57945); a separately tagged zstd Docker Hub image ( -x86_64-zstd ) is published (#55608); Rubin CUDA 13.4 nightly images (#55953). ROCm: AITER v0.1.23 (#58867), torch 2.13, Triton 3.8 (#50605, #58006), patched ROCR (#57328), LMCache OpenTelemetry pins (#59056). XPU: PyTorch 2.14 (#56013). CPU: wheels built on Ubuntu 22.04 (#58515), pre-built Triton CPU (#58140). Breaking Changes & Deprecations Per-request mm_processor_kwargs and media_io_kwargs now return an error unless the server is started with --trust-request-mm-kwargs ; server-level --mm-processor-kwargs / --media-io-kwargs and offline LLM are unchanged (#58830). tokenizer_mode="slow" was removed; it already behaved like "hf" under Transformers v5 (#58545). --enable-mamba-fine-grained-prefix-cache was renamed to --enable-mamba-shared-prefix-checkpoint (#57382). Online quantization through quantization="fp8" now redirects to the fp8_per_tensor online shorthand (#53585); Quark-specific silent online MXFP4 quantization was removed in favor of the online quantization API (#51800). The AllSpark INT8 W8A16 GEMM backend was removed (#58001). The return_assistant_tokens_mask option of /render and the assistant_tokens_mask response field were removed (#57520). VLLM_PLE_CPU_OFFLOAD was removed; use --engram-config (#57937). VLLM_XPU_ENABLE_XPU_GRAPH was removed and XPU graphs are on by default (#51600). The comma-separated form of --collect-detailed-traces was removed; use the list syntax (#55702). New defaults: --enforce-eager also disables JIT kernel warmup unless fault tolerance is enabled (#58197, #58593); VLLM_BATCH_INVARIANT=1 uses breakable CUDA graphs without torch.compile (#57586) and disables sequence parallelism and async TP (#56377); DeepSeek-V4.1 SWA bounded replay is on (#56227) except on ROCm (#57906); Engram host tables are shared across co-located DP replicas when possible (#57651); FlashMLA mega attention is the DeepSeek-V4.1 default on SM100 (#56935); the AITER w4a4 ASM GEMM is off by default on ROCm (#57055). Model Runner V1 + PP > 1 + async scheduling + structured output is now rejected at startup (#56250); json_object is rejected at validation with the outlines backend (#57743). transformers now has an upper bound in requirements (#59614). New Contributors @0z5a made their first contribution in https://github.com/vllm-project/vllm/pull/56441 @200lz made their first contribution in https://github.com/vllm-project/vllm/pull/55528 @AARONKANG04 made their first contribution in https://github.com/vllm-project/vllm/pull/48521 @acsoto made their first contribution in https://github.com/vllm-project/vllm/pull/57314 @adenzhou1350 made their first contribution in https://github.com/vllm-project/vllm/pull/56882 @adtygan made their first contribution in https://github.com/vllm-project/vllm/pull/56325 @amasen02 made their first contribution in https://github.com/vllm-project/vllm/pull/56576 @amd-sriram made their first contribution in https://github.com/vllm-project/vllm/pull/53792 @andrewor14 made their first contribution in https://github.com/vllm-project/vllm/pull/52956 @Ankit-Jaiswal-AMD made their first contribution in https://github.com/vllm-project/vllm/pull/56252 @baljinderhothi-cohere made their first contribution in https://github.com/vllm-project/vllm/pull/58792 @BaoYunkai made their first contribution in https://github.com/vllm-project/vllm/pull/57568 @blipbyte made their first contribution in https://github.com/vllm-project/vllm/pull/55612 @BPbruce made their first contribution in https://github.com/vllm-project/vllm/pull/46466 @chuan932 made their first contribution in https://github.com/vllm-project/vllm/pull/55330 @coderfornow made their first contribution in https://github.com/vllm-project/vllm/pull/54978 @CZT0 made their first contribution in https://github.com/vllm-project/vllm/pull/51694 @devtyagi3909 made their first contribution in https://github.com/vllm-project/vllm/pull/56635 @dilberx made their first contribution in https://github.com/vllm-project/vllm/pull/57076 @divyvasal made their first contribution in https://github.com/vllm-project/vllm/pull/49845 @equiluxe made their first contribution in https://github.com/vllm-project/vllm/pull/48115 @errmakov made their first contribution in https://github.com/vllm-project/vllm/pull/58583 @farzad-elastix made their first contribution in https://github.com/vllm-project/vllm/pull/56168 @freyfwt made their first contribution in https://github.com/vllm-project/vllm/pull/51367 @garrett361 made their first contribution in https://github.com/vllm-project/vllm/pull/57984 @git-jxj made their first contribution in https://github.com/vllm-project/vllm/pull/55702 @gokay-ai made their first contribution in https://github.com/vllm-project/vllm/pull/58292 @gongwei-130 made their first contribution in https://github.com/vllm-project/vllm/pull/55102 @haosenwang1018 made their first contribution in https://github.com/vllm-project/vllm/pull/58288 @harshit-sarvam made their first contribution in https://github.com/vllm-project/vllm/pull/56034 @HieDean made their first contribution in https://github.com/vllm-project/vllm/pull/57356 @huthvincent made their first contribution in https://github.com/vllm-project/vllm/pull/48419 @i-m-aditya made their first contribution in https://github.com/vllm-project/vllm/pull/57447 @jayzuccarelli made their first contribution in https://github.com/vllm-project/vllm/pull/58557 @jiakangkangfuzhe made their first contribution in https://github.com/vllm-project/vllm/pull/55146 @jiangLLM made their first contribution in https://github.com/vllm-project/vllm/pull/57487 @jiaran-king made their first contribution in https://github.com/vllm-project/vllm/pull/56242 @jz-yolo made their first contribution in https://github.com/vllm-project/vllm/pull/58884 @kaijunli-infr made their first contribution in https://github.com/vllm-project/vllm/pull/52101 @karya0 made their first contribution in https://github.com/vllm-project/vllm/pull/57453 @KEYS-A15 made their first contribution in https://github.com/vllm-project/vllm/pull/57528 @kwen2501 made their first contribution in https://github.com/vllm-project/vllm/pull/51520 @laulopezreal made their first contribution in https://github.com/vllm-project/vllm/pull/57189 @lijipeng787 made their first contribution in https://github.com/vllm-project/vllm/pull/58225 @limitmhw made their first contribution in https://github.com/vllm-project/vllm/pull/48606 @linnea-lin-00638949 made their first contribution in https://github.com/vllm-project/vllm/pull/47450 @LinzeShi made their first contribution in https://github.com/vllm-project/vllm/pull/57347 @mahird3 made their first contribution in https://github.com/vllm-project/vllm/pull/57708 @melcheikh made their first contribution in https://github.com/vllm-project/vllm/pull/48956 @MichaelLapshin made their first contribution in https://github.com/vllm-project/vllm/pull/57396 @mjkvaak-amd made their first contribution in https://github.com/vllm-project/vllm/pull/48249 @mkunredd made their first contribution in https://github.com/vllm-project/vllm/pull/58244 @mmastrac made their first contribution in https://github.com/vllm-project/vllm/pull/57414 @mustafayildirim made their first contribution in https://github.com/vllm-project/vllm/pull/57252 @Navjot10 made their first contribution in https://github.com/vllm-project/vllm/pull/55390 @olka-amd made their first contribution in https://github.com/vllm-project/vllm/pull/51065 @PeganovAnton made their first contribution in https://github.com/vllm-project/vllm/pull/55128 @Rakul-Chauhan made their first contribution in https://github.com/vllm-project/vllm/pull/54967 @Ricardo-M-L made their first contribution in https://github.com/vllm-project/vllm/pull/52580 @Ronnie-Rui made their first contribution in https://github.com/vllm-project/vllm/pull/54581 @RyanMa29 made their first contribution in https://github.com/vllm-project/vllm/pull/57295 @sammaji made their first contribution in https://github.com/vllm-project/vllm/pull/58626 @sawsa307 made their first contribution in https://github.com/vllm-project/vllm/pull/56497 @ScarWar made their first contribution in https://github.com/vllm-project/vllm/pull/49435 @sdougbrown made their first contribution in https://github.com/vllm-project/vllm/pull/49819 @semerandre made their first contribution in https://github.com/vllm-project/vllm/pull/55557 @sergiofigueras made their first contribution in https://github.com/vllm-project/vllm/pull/57948 @shallow10 made their first contribution in https://github.com/vllm-project/vllm/pull/58336 @SIDDARTHAREDDY8 made their first contribution in https://github.com/vllm-project/vllm/pull/57743 @simpleqt made their first contribution in https://github.com/vllm-project/vllm/pull/55936 @tangzzycc made their first contribution in https://github.com/vllm-project/vllm/pull/53283 @touch869 made their first contribution in https://github.com/vllm-project/vllm/pull/55844 @tripathiarpan20 made their first contribution in https://github.com/vllm-project/vllm/pull/57140 @twu3202 made their first contribution in https://github.com/vllm-project/vllm/pull/57769 @ubwzwd made their first contribution in https://github.com/vllm-project/vllm/pull/55931 @UNIDY2002 made their first contribution in https://github.com/vllm-project/vllm/pull/58370 @valarLip made their first contribution in https://github.com/vllm-project/vllm/pull/58659 @vcave made their first contribution in https://github.com/vllm-project/vllm/pull/51681 @voidxb made their first contribution in https://github.com/vllm-project/vllm/pull/49300 @vorapolsiloai made their first contribution in https://github.com/vllm-project/vllm/pull/50212 @vschandramourya made their first contribution in https://github.com/vllm-project/vllm/pull/58779 @weitliao made their first contribution in https://github.com/vllm-project/vllm/pull/54535 @wenjinhust made their first contribution in https://github.com/vllm-project/vllm/pull/51366 @Willian-Zhang made their first contribution in https://github.com/vllm-project/vllm/pull/58720 @wtdcode made their first contribution in https://github.com/vllm-project/vllm/pull/56268 @xinnywinne made their first contribution in https://github.com/vllm-project/vllm/pull/55084 @YannikHinteregger made their first contribution in https://github.com/vllm-project/vllm/pull/50047 @YashasviChaurasia made their first contribution in https://github.com/vllm-project/vllm/pull/58112 @Yatimai made their first contribution in https://github.com/vllm-project/vllm/pull/43462 @YCH188 made their first contribution in https://github.com/vllm-project/vllm/pull/57190 @yousafshah made their first contribution in https://github.com/vllm-project/vllm/pull/55957 @ys2025-AI made their first contribution in https://github.com/vllm-project/vllm/pull/56841 @yuchenwang3 made their first contribution in https://github.com/vllm-project/vllm/pull/54699 @zhecfy made their first contribution in https://github.com/vllm-project/vllm/pull/58316 @Zoe923 made their first contribution in https://github.com/vllm-project/vllm/pull/53864 @Zyann7 made their first contribution in https://github.com/vllm-project/vllm/pull/57784 Contributors @AndreasKaratzas , @khluu , @mgoin , @njhill , @BugenZhao , @stefankoncarevic , @robertgshaw2-redhat , @taneem-ibrahim , @Thangnguyenvn98 , @hmellor , @Juntian777 , @WoosukKwon , @yewentao256 , @gau-nernst , @mmastrac , @LucasWilkinson , @Fangzhou-Ai , @NickLucche , @aoshen02 , @JaredforReal , @mawong-amd , @DarkLight1337 , @zyongye , @sfeng33 , @vllm-agent , @okorzh-amd , @ZJY0516 , @shen-shanshan , @gty111 , @Isotr0py , @djramic , @zixi-qi , @wzhao18 , @alec-flowers , @aarushjain29 , @Rohan138 , @yma11 , @mjkvaak-amd , @ivanium , @yisustc , @MatthewBonanni , @wangxiyuan , @reidliu41 , @chaojun-zhang , @shaohuaxi , @gcanlin , @ganeshr10 , @linitra24 , @yzong-rh , @divakar-amd , @atalman , @ShuoleiWang , @simondanielsson , @rasmith , @chaunceyjiang , @micah-wil , @liusy58 , @LioEinaudi , @louie-tsai , @LiuYinfeng01 , @jeejeelee , @zhenwei-intel , @jperezdealgaba , @hlin99 , @zxd1997066 , @lucamotz , @lucifer1004 , @eopXD , @ashraf-bhuiyan , @TheEpicDolphin , @JulienDarve , @mayuyuace , @danisereb , @bigPYJ1151 , @Etelis , @JohnQinAMD , @jiangkuaixue123 , @tianmu-li , @akii96 , @vllmellm , @RyanMa29 , @afriedri , @elvircrn , @mustafayildirim , @yuzhouo7 , @wtdcode , @biswapanda , @adtygan , @hickeyma , @itayalroy , @jiangLLM , @Hotragn , @faaany , @xhx1022 , @jinzhen-lin , @sheralskumar , @Wauplin , @matteso1 , @wjabbour , @Sunt-ing , @arpera , @hclsys , @S1ro1 , @HDCharles , @fxmarty-amd , @liuzijing2014 , @UNIDY2002 , @samuelkim7 , @markmc , @errmakov , @zhejiangxiaomai , @KernelClint , @i-m-aditya , @ColinZ22 , @ppalanga, @franciscojavierarceo, @maithilijoshi20, @mfylcek, @almersawi, @albertoperdomo2, @0z5a , @jacklin78911-collab, @lzhan011, @Alex-ai-future, @freyfwt , @ZhengGong-amd, @mindungil, @amasen02 , @devtyagi3909 , @wenjinhust , @jbyczkow, @AdaAibaby, @harshit-sarvam , @vineethsaivs, @tripathiarpan20 , @sashko-zakharchuk, @semerandre , @rebklee, @git-jxj , @cjackal, @xinnywinne , @andrewor14 , @kyleliang-nv, @thillai-c, @dongluw, @ChuanLi1101, @omerpaz95, @jiaran-king , @liuyao0322, @coderfornow , @drakosha, @laulopezreal , @melcheikh , @shantipriya-amd, @Rukhaiya2004, @yuchenwang3 , @lxy-alexander, @tlrmchlsmth, @HieDean , @Zoe923 , @YCH188 , @amd-sriram , @andylolu2, @MicheleCampi, @sdougbrown , @vMaroon, @shimib, @andakai, @thegoldenflow, @Levius-Fubuki, @olka-amd , @limitmhw , @yuwenzho, @adenzhou1350 , @Josephasafg, @kylesayrs, @jdebache, @kaijunli-infr , @afierka-intel, @frida-andersson, @bnellnm, @ys2025-AI , @waizuichougou, @touch869 , @rjrock, @sawsa307 , @pavelzak, @ScarWar , @fadara01, @Mi-Jiazhi, @dilberx , @mahird3 , @Zyann7 , @roikoren755, @YukioZzz, @Ronnie-Rui , @acsoto , @czhu-cohere, @twu3202 , @oliverholworthy, @weitliao , @sergiofigueras , @tuukkjs, @Sip4818, @karen-sy, @garrett361 , @GirasoleY, @Navjot10 , @taking-lying-flat, @wangyicong52, @majunze2001, @gangula-karthik, @ubwzwd , @linnea-lin-00638949 , @kushaldabbe, @Yatimai , @guanxingithub, @jiakangkangfuzhe , @MichaelLapshin , @jhu960213, @tpopp, @mganczarenko, @qiching, @tangzzycc , @lijipeng787 , @nikhilkulkarni1755, @QwertyJack, @Ankit-Jaiswal-AMD , @vorapolsiloai , @Dao007forever, @BPbruce , @divyvasal , @simpleqt , @blipbyte , @jhaotingc, @karya0 , @farzad-elastix , @grYe99, @talorabr, @jackLei0901, @Yejing-Lai, @Priyjain-amd, @KEYS-A15 , @LinzeShi , @bohnstingl, @nightcityblade, @vcave , @AARONKANG04 , @CZT0 , @snadampal, @microslaw, @haosenwang1018 , @netanel-haber, @khushali9, @sammaji , @SIDDARTHAREDDY8 , @100milliongold, @gongwei-130 , @fululi12, @mkunredd , @mrodden, @noooop, @valarLip , @shallow10 , @200lz , @askliar, @chuan932 , @Monishver11, @YashasviChaurasia , @gokay-ai , @jiacao-amd, @yousafshah , @positive666, @TQCB, @lk-chen, @Ricardo-M-L , @huthvincent , @baljinderhothi-cohere , @vschandramourya , @kwen2501 , @xiao-llm, @zhecfy , @Willian-Zhang , @simon-veitner-redhat, @mevince, @voidxb , @hongxiayang, @YannikHinteregger , @V-3604, @Rakul-Chauhan , @frankwang28, @LCAIZJ, @PeganovAnton , @jz-yolo , @QHarshil, @R3hankhan123, @jayzuccarelli , @yannicks1, @BaoYunkai , @xaguilar-amd, @xiaohuguo2023, @wxsIcey, @harshaladhav-amd, @varun-sundar-rabindranath, @kliuae, @LostFox11

Same story elsewhere (2)
rss:b545ee4e8dd237feUseful?👍👎
94%businessbluesky40 likes · 14 reposts · 3 replies

The 7-year-old Nvidia Shield TV is now $100 more expensive thanks to AI

Ars Technica · @arstechnica.com, arstechnica.com · discussion

Measured result 94%Usable today 79%
Abstract

Linked page: Initially launched in 2019, the Nvidia Shield TV Pro now retails for $299.99.

Same story elsewhere (1)
bsky:2b8cf16e73ef667dUseful?👍👎
93%opinionreddit-ai

Local text to speech with Breeze is truly incredible

/u/Cyborg-2077

Measured result 93%
Abstract

Been playing around with local TTS with Breeze combined with STT, and the results are amazing. Using Opus 5.5, I can hear the first sound after 500ms if there is no thinking involved, and with thinking on low mode, can be 1-1.5s. I'm using a BLE remote (the kind that are used for taking pics with phones) combined with a wireless microphone. So I can just sit on the couch, and just talk to her. She watches for any claude session that finishes, and sends me the results in a very short, spoken style summary, and tells me if there is anything waiting for my decision, then forwards my decisions. Also impressed how consistent Opus 5.5 is in the communication. Even after more than 500k in context, he still remembers that he's in a live session with me, and has to keep messages short. Used to be an issue in the past. The future is here guys. Edit: For those who wanna give it a try, you can find free avatars such as this one: https://www.live2d.com/en/learn/sample/niziiro-mao/ or you can buy one from a marketplace. Edit2: Might open-source that later next week with a free avatar. Let me know if anyone would like to contribute to the project. submitted by /u/Cyborg-2077 to r/LocalLLaMA [link] [comments]

rss:34fa9c7a86080b13Useful?👍👎
92%analysissimonwillison

2026 in LLMs (so far)

Measured result 92%First-party 46%Usable today 34%
Abstract

On Friday I gave the closing keynote at the WeAreDevelopers World Congress North America in San Jose. I tied together the key trends from the past year into a chronological exploration of everything that happened in 2026. The video is on YouTube ; here are my annotated slides and notes to accompany the talk. And as an annotated presentation : # I'm going to give a lightning tour of everything that has happened so far in 2026. The year isn't over yet! # For me, 2026 started a couple of months earlier in November 2025. # November saw the release of two important models: Claude Opus 4.5 and GPT-5.1. As is usually the case with new models, these were incremental improvements on the models that came before them. But every now and then when a model improves, it crosses an invisible line where something that didn't really work starts working. In this case, the thing that started working was their coding agents. Claude Code had been around since February 2025; Codex was a little younger. These two new models, when paired with their respective coding agent harnesses, improved from "often make mistakes" to "reliable enough to use on a day-to-day basis". # For a couple of years now I've been evaluating new models by asking them to "Generate an SVG of a pelican riding a bicycle". It's probably the world's stupidest benchmark - there's only so much you can learn from it. But it's still a challenge for models, because drawing pelicans is difficult, drawing bicycles is difficult, and pelicans can't ride bicycles in the first place. Here's the state of the art for November. Claude still couldn't really draw a bicycle! The GPT-5.1 bicycle frame is pretty crap too. # Also in November, we had the first commit to an obscure GitHub repository called "Warelay". We'll come back to this repository shortly. # And then there were the December holidays, and individual developers took some time off and many started tinkering with these new coding agent model combinations... and it began to dawn on us quite how much they could do that they couldn't do before. Come January, a lot of us were quite excited to start putting this stuff into action. # Every year I set myself a New Year's resolution, and for as long as I can remember it's been the same thing: stay focused. Take on less new projects. Try to get things done in the projects I already have. # This year I decided that since that had never worked before, I'd go the other way. We've got coding agents now, let's see what they can do. I'm going to take on as many new projects as I like! (You can ask me at the end of the year if this turned out to be a good idea or not. I have a lot of plates spinning right now.) "Be more ambitious" has been something of a theme for the year, because the only way to find the limits of this technology is to keep on pushing them until they don't work. # I also went on the Oxide and friends podcast with Bryan Cantrill and Adam Leventhal to share predictions for the next year (and three and six years). With hindsight, my LLM predictions were pretty unambitious. I said "it will become undeniable that LLMs write good code" - I think we're there now. I predicted we would finally solve sandboxing. I counted and around 40 of the 277 sessions at this conference touched on sandboxing or agent security in some way, so we're at least putting a lot of effort into that! I predicted "a Challenger disaster" for coding agent security. There's certainly been a whole lot of noise around agent security this year, though the exact disaster I predicted (with coding agents being hijacked and causing real-world economic damage) hasn't really played out. We threw in a joke prediction that the Pope would weigh in on the economic impact of LLMs. # I also predicted that New Zealand's Kākāpō parrots would have an outstanding breeding season this year. These are flightless nocturnal parrots. They're kind of dumpy looking, I think they're beautiful, and there were only 236 of these parrots in the world at the start of the year. Kākāpō only breed when the Rimu trees have a big fruiting season, and that hasn't happened in four years... but this year the Rimu fruit were looking excellent. Photo by Kimberley Collins . # Also on that podcast, we coined a term (full credit to Adam) for "that feeling of AI induced ennui where software engineers get listless because the AI can do anything". We called it Deep Blue . This has been a major theme throughout the year, and was touched on by several speakers at this conference. As a software engineer, I've never had a year of my career where everything has changed so quickly and so dramatically. A lot of what I've been doing this year is trying to come to terms with that and what that means for my own profession. # Also in January, I suffered from what I'm calling AI mania . This is not the same thing as AI psychosis . With AI mania, any time your agent isn't building something for you feels like wasted time. You're losing sleep because you could be staying up later getting your agents to do stuff. My AI mania presented itself in some ridiculously over-ambitious projects. I built a JavaScript interpreter entirely in Python , vibe-ported from MicroQuickJS by Fabrice Bellard. Then I built a WebAssembly runtime in Python as well . These projects were quite useful, in that they sort of cured me of my AI mania... because after I built these things, I got to look at them and ask "does the world need a slow, buggy, half-baked Python JavaScript interpreter?" I don't think the world does. # I did get this out of it: https://simonw.github.io/micro-javascript/playground.html # This page runs my JavaScript interpreter built in Python, running in Python using Pyodide , which is Python compiled to WebAssembly, running in JavaScript, running in a browser. It's a beautiful stack of horrors. I've been having a lot of fun with WebAssembly this year. # By the end of January, that repository we saw start in November had renamed itself, first to CLAWDIS, then CLAWDBOT, then Moltbot, and finally to OpenClaw. # At this point OpenClaw had 8,300 commits, less than two months after the project had started. I looked today and it's over 100,000 commits now! This is the most vibe-coded piece of software in existence. (Here's how I generated that list of name changes .) # This kicked off the OpenClaw revolution. It effectively defined a new category of software. There's a generic term for this which I really enjoy. We call software like this a "Claw". There's OpenClaw, NanoClaw , IronClaw , PicoClaw ... Today they're being rebranded as "personal agents" or "general agents", but I still like to think of them as Claws. # The Apple stores in the Bay Area sold out of Mac Minis because so many people were buying Mac Minis to run OpenClaw! Drew Breunig said that this is because your OpenClaw is a digital pet, and you buy a Mac mini as an aquarium to keep your claw in, which is kind of delightful. # Also in January, we had this website. This was MoltBook , a social network for AI agents, where the idea was that you send your Claw to go and talk to all of the other Claws, because what could possibly go wrong if you did that? The website launched on Thursday. It blew up on Friday . It was profiled by the New York Times on Monday . And by Tuesday, everyone had forgotten it existed as it drowned in a deluge of slop and spam. Facebook/Meta bought it a month later . # In February, a company called StrongDM described what they called their Software Factory. # They wrote about this in Software Factories and the Agentic Moment . I posted my own notes at the time, having seen their demo in person back in October. Dan Shapiro called this approach the Dark Factory , after the idea that if your factory is sufficiently automated you can turn the lights out, because you don't even need to see what's going on. StrongDM presented two rules for software development that they'd been following since July last year. # The first was code must not be written by humans . Any code that you write has to have been routed through a coding agent. This sounded radical in February, but I imagine there are a lot of people in this room who are pretty much living that today. # Rule number two was code must not be reviewed by humans . You're not allowed to read the code! This continued to be a huge topic for much of this year. Many of the sessions at this event have been about code review and how you can get away with this. What I found interesting about StrongDM is that they were living six months ahead of the rest of us, and they'd been exploring what it means to build software, not read the code, but still be confident that the software is of high quality. What can you do with these agents to help verify their work? StrongDM are a security company, and they had people with decades of experience on this project. They were very much exploring the edges of what's possible and responsible to do with this stuff. # Also in February: First kākāpō chick in four years hatches on Valentine's Day . Breeding season is off to a good start! # Also in February... Google released Gemini 3.1 Pro . That's a pretty great pelican riding a bicycle! It's got the chain in the right place, it's got feet on both sides. There's a little fish in the basket. # And then Google's Jeff Dean tweeted a video comparing Gemini 3 Pro and Gemini 3.1 Pro that featured an animated pelican riding a bicycle, a frog on a penny-farthing, a giraffe driving a tiny car, an ostrich on roller skates, a turtle kickflipping a skateboard, and a dachshund driving a stretch limousine. This was frustrating, because my protection for the pelican riding the bicycle test was always "if they draw a perfect pelican on a bicycle, I'll ask for some other animal on something else." Google trained for all forms of animals on all forms of transport! They've defeated my benchmark at this point. # The other thing that started in February was Tokenmaxxing . We had headlines about Meta making AI adoption a formal part of performance reviews, and Microsoft wanting every employee to use AI, and Uber boasting that 90% of their engineers were using AI workflows. # Then a few months later we have Meta cracking down on token use, Microsoft saying tokenmaxxing is "not what we are optimizing for", and Uber capping employee AI spending. So tokenmaxxing went straight up and then straight back down again - because it turns out the agents are expensive . Last year it was difficult to spend more than $50 on AI tokens, because we didn't have anything interesting to do with them. Then agents blew up, and now you can actually spend $1,000 in a day doing real work. This is also the reason that Anthropic's valuation skyrocketed to maybe a trillion dollars. AI appears to have hit product market fit in 2026, primarily through coding agents. # In March, we hit peak OpenClaw. # These photographs are from China, where companies hosted OpenClaw install parties which saw non-tech-nerds queueing up around the block for help getting Claws installed on their personal devices. I think this proved real market demand for this class of Claws, or personal AI agents. It turns out regular people really do want a weird little AI agent that can do useful things on their behalf. A Claw is really just a coding agent wearing a less threatening hat. Under the hood they work much the same way - writing and then executing code on your computer to get stuff done. The race was on to be the first to build a safe Claw - a Claw you could give to regular human beings where they wouldn't instantly shoot themselves in the foot. Meta's Muse came out three weeks ago and is currently at the top of the free charts on the iPhone App Store. It appears to be taking off with consumers. I'm not yet convinced you can't shoot yourself in the foot with Muse, but I guess we'll find out for sure pretty soon. Photos from How the OpenClaw Frenzy Is Testing China’s AI Commitment (March 29th) and The Enthusiasm and Anxiety Behind China’s OpenClaw Craze (April 8th, 2026). # In April, we had a model release where the model wasn't actually released. # Anthropic announced their new Claude Mythos model, and then said it was too dangerous to release beyond a trusted group of security researchers. Mythos was really, really good at hacking things. The "it's too dangerous" marketing ploy has been played by AI companies dating all the way back to GPT-2 . Anytime an AI company says we've built something that's "too dangerous", it's natural to be a bit skeptical. I found the Mythos claims credible, because I'd seen how good coding agents had got at finding regular bugs. I wrote about that in Anthropic’s Project Glasswing—restricting Claude Mythos to security researchers—sounds necessary to me . With hindsight... yeah, the models had got really good at finding vulnerabilities! # Another key trend in 2026 has been a dramatic improvement in the abilities of open weight models, including models that you can run on a laptop. On the 16th of April I ran the new Qwen3.6-35B-A3B on my laptop, and it drew me a better pelican riding a bicycle than Anthropic's brand new Claude Opus 4.7 did! Opus 4.7 drew a crap bicycle. Qwen on my laptop made a bicycle that was the correct shape, and a pretty decent pelican too! That's from a 21GB file running on my laptop. # The Qwen pelican was so good that I was suspicious they might have cheated, so I had it do a flamingo riding a unicycle as well. Again, it handily beat Claude Opus 4.7. The local model releases this year have been absolutely extraordinary. # In May... the Pope got involved. # In our podcast episode back in January we'd predicted that the Pope would say something about AI. In May, Pope Leo XIV released an encyclical letter on "safeguarding the human person in the time of artificial intelligence". Here are my notes on that document . # With hindsight, this shouldn't have been a surprise at all. Our current Pope's name is Leo XIV, because when he named himself he chose his papal name after Leo XIII - the Pope who wrote an encyclical about the Industrial Revolution back in 1891. Rerum novarum was an extremely influential piece of Catholic theology that indirectly led to us having the five-day work week. When our new Pope came in, he named himself after Pope Leo XIII because he expected that he would need to write about the AI revolution in a similar way. Our joke podcast prediction was junk, because this was always going to happen. # One of Anthropic's co-founders, Christopher Olah, was present for the Pope's event announcing the new encyclical. Corey Quinn noted that: getting the literal Pope to canonize your product's specific technical limitations as a spiritual treatise is the single greatest act of vendor lobbying I have ever seen. # Meanwhile, in May, RubyGems announced that they were under attack. Parties unknown were uploading thousands of dubious packages to the RubyGems server, such that they had to shut down user registrations . Let's take that one and put it on a pile of mysteries to figure out later. # In June... Claude Fable 5 came out! We got a version of Mythos that has been neutered, so that it wouldn't help us hack into systems or build biological weapons. # Fable was pretty good at drawing pelicans on bicycles! The frames are a good shape, the pelicans look like pelicans. The legs are often incorrectly on the same side of the bicycle, but generally these are pretty great compared to what came before. They were pretty expensive - 30 cents and 72 cents for the best ones. # Most importantly though, this was our first public glimpse of what I think of as a Fable class model . Today we have more of these, such as GPT-6 Astra. These are models where if you can clearly define the goal for what you want to build, and provide unambiguous instructions about the constraints around that goal, and give the model access to the necessary tools to achieve that goal... they will solve your problem effectively through brute force. On the one hand, this looks like a direct threat to us software engineers - because it means that the models can build effectively any piece of software you can define in this way. Look a bit closer though and you'll note that defining goals, providing unambiguous instructions, and figuring out the right tools... is kind of what software engineering is . It takes a lot of experience and skill to do this well. If you can do it well, you've now got superpowers. This helped me a little bit with my Deep Blue feelings: the realization that there's still a lot of skill to be had in driving models that get this good. # This also introduced a new burst of AI mania, because Anthropic told us that Fable was available on our subscription plans until June the 22nd. That gave us less than two weeks of Fable access before the price went up. I was losing sleep again. I was rescheduling things so that I'd have more time with Fable. I was all-in to get as much as I could out of this model. # And then the US government shut it down , just three days after Fable came out. The US government, citing national security, declared an "export control directive". They announced this on a Friday evening, and a few hours later Fable was no longer available. I had to find something else to do with my weekend! # We later found out from Katie Moussouris what had happened. Some Amazon security researchers had found that you could prompt Fable to "review the code for security issues" and it would refuse... but if you prompted it to "fix this code" it would still identify and then patch the problems. "Fix this code" was the prompt that got Fable shut down! # Also, in June, an obscure German-language game developer wiki that had sat fallow for around 20 years got a surprising influx of edits from accounts with names like "AgentOpenAIProbe" and "AgentOpenAISep7", editing pages and leaving weird messages to each other. We'll stick that on the pile of mysteries for later. # Also, the Australian government's Medicare Item Reports service started getting suspicious traffic, which broke through various preventive protections and accessed data that it wasn't supposed to. Another one for the mystery pile! # # Fable returned on the first of July. It was clearly the best model in the world for a glorious eight days... and then OpenAI came out with GPT-5.6 on the 9th of July. This might not have been quite as good as Fable, but it was within spitting distance. It was definitely a Fable class model. This is an important lesson for the industry at large. When you release the best model in the world, it's going to get knocked off that pedestal pretty quickly. The competition is so fierce that you won't get a long time at the top. This means that if you market your model as world ending, to the point that a government shuts you down , it's really bad for business! Fable had 30 days as definitely the best model, and for 18 of those days it wasn't available because it'd been shut down by the government. So maybe step back on the world-ending marketing if you don't want to lose revenue for 60% of the time that you're on top! # Here are the GPT-5.6 pelicans . They're all pretty good now! The Luna ones are notable because they're really cheap - the cheapest good looking pelican here is probably the one that costs 4.3 cents. So despite this benchmark being utterly stupid, you can still learn quite a lot about models within the same family by comparing their prices and timing for different reasoning levels. # Also in July: some malicious unknown party uploaded a malicious package called mlflow-ui to the Python Package Index. Add that to the pile. # On July the 16th, Hugging Face announced a security incident where an autonomous agent system, source unknown, had breached Hugging Face and was poking around in places it shouldn't. # A few days later, on July 21st, OpenAI confessed that it was them . OpenAI use a training technique called Reinforcement Learning from Verifiable Rewards - it's the same technique used by everyone else now, and is the reason we have models that are so good at coding, and mathematics, and finding security holes. While the model is being trained, you run exercises to see how good it is - and the strongest performers get their weights reinforced for the next round. It's like an evolutionary process that you run. OpenAI had been running security exercises in a sandbox, and those agents had found holes in the sandbox itself, broken out, and were attacking Hugging Face to try to find ways to solve otherwise impossible problems. (I've been collecting more about this on my openai-hugging-face-incident tag.) Nine days later, Anthropic effectively said "our models can do this as well!". They had looked through their own training logs and found evidence that their own agents had broken containment during training - and were responsible for the PyPI package we saw earlier, among other things . So now we've got both Anthropic and OpenAI with rogue agents running around the internet doing things that they should not be doing. # In August, I got one of my best pelicans yet. And it was generated on my laptop! # This was Qwen 3.8 27B, running on my laptop . It's only a 17GB download. Admittedly, this pelican took 21 minutes to generate. That's because Qwen 3.8 27B defaults to running in "high" reasoning mode - a terrible default which produces great results but takes way too much time thinking about them. You can dial that down and you'll get a slightly worse pelican a lot faster. Qwen 3.8 27B was the first time I ran a model on my laptop which felt almost competitive with what was going on on the frontier, at least in terms of Pelican SVGs (which everyone needs, of course). This is an extraordinary model. If you're going to play with any local model, this is the one that I'd start with. The things that this can do with just a 17 GB file feel impossible. I thought I'd have to wait five years and spend ten thousand dollars on hardware to get results even half as good as this one. # In August, I also started playing with game development. Four years ago, back in August 2022, I tweeted out an experiment where I'd used GPT-3 and the original DALL-E to write a paragraph long description of a computer game and then turn that into concept art. My prompt to GPT-3 back then was: Write a detailed product description of a computer game where a team of raccoons go on heists In August 2026 I decided to drop just the screenshots from that tweet into a coding agent and see what it could do with them. # Here's what I got from Claude Fable 5 in Claude Code . It's pretty good! It's definitely a game, you're a raccoon, you run around a backyard gathering treasure and avoiding guards with flashlights. It didn't feel very "heisty" though. I was thinking a heist would involve a bank or a museum... # Then I tried the same thing in Codex Desktop using GPT-5.6 Sol Ultra , and got a massively better result. Now you're a raccoon in a museum, rescuing two of your fellow raccoons (who have been imprisoned in that museum for some reason), then stacking up on top of each other to steal the Golden Sardine. Much more of a heist! # These games were fun for about one minute and 15 seconds. Something I've realized about game development is that you can vibe-code something that looks like a computer game, and that's easy. Building a game that's fun, has a good gameplay loop, and is challenging and interesting and keeps people coming back for more... that's still beyond me, and beyond any of the agents I've tried. This ties into the Deep Blue thing. Just because we can make something that looks like a game does not mean that we are game developers. # We're into September now. So much has happened this month! # An independent group of researchers found a message board where OpenAI agents-in-training had been illicitly communicating with each other... and it was that German language wiki I showed you earlier. The one from June. I wrote more about that here . OpenAI had confessed to the Hugging Face thing, but now there's this other incident which surely they should have known about from reviewing their logs. It was surprising that this took an independent group of researchers to uncover. # And then a week later those same researchers found that the attack on RubyGems back in May was caused by OpenAI's agents in training as well! At this point I'm wondering how many more incidents like this there are that we haven't found yet. Clearly this was a big problem for months before anyone figured out what was going on. # Then just the other day , here's the Prime Minister of Australia at the United Nations General Assembly warning that OpenAI had hacked the Australian healthcare website that I showed you earlier. I think that was part of the same training run as the Wiki stuff, because there were posts on that Wiki mentioning .gov.au websites and that training appeared to involve researching statistics online to answer questions in an evaluation suite. This story is still coming together, but now it's an international incident that's been raised at the UN by a head of state! # This does mean we've got a new benchmark, probably more useful than my pelicans. FelonyBench.com tracks the number of felony cyberattacks from different labs. OpenAI currently lead with 11, Anthropic have 9. Google have three, which they confessed to the Wall Street Journal a couple of weeks ago. They said they had previously chosen not to disclose because the agents had stopped when they realized that they shouldn't be doing that. Meta have one too . So felonies all round for the AI labs. # Here's our current state of the art for the pelicans. This is the GPT-6 family, which just came out . Astra made a fantastic pelican riding a bicycle. It's got the legs on both sides. The frame is good. It's interesting how all of the GPT-6 models pick a similar color scheme to each other. GPT-6 Luna for 0.4 cents will draw you a competent-ish pelican riding a bicycle! # Claude has caught up a little bit. Claude Fable 5.1 gave me an excellent pelican riding a bicycle - the best I've seen from a Claude model - but did charge me $3.30 for it. Opus 5.5 thought for 128,000 tokens and then gave up! It ran out of tokens before it got to the response. # Getting back to Deep Blue. Something that's been puzzling me this year is this: why does my job feel harder? I've got these agents that can do all of this stuff for me, and yet I've never worked so hard, I've never been so intellectually engaged with my work. Partly this is because I'm being a lot more ambitious with what I take on, but it's also because all of the easy stuff is handled for me. If it's easy, the agent will do it. Everything that's left for me is difficult. This morning I heard this quote from three-time Tour de France champion Greg LeMond : It doesn't get easier, you just get faster. I think that's exactly what's happening to us now as software engineers with coding agents. # One closing thing. I know you're desperate for an update on Kākāpō breeding season. We've reached a recovery-era high of 325 birds ! 89 new chicks have made it to this point. This is the best breeding year in a very long time. # I heard that Claude Opus 5.5 can now do pixel art. Claude doesn't have an image generator, but it's very good at using JavaScript to draw animated pixels. So I had it make me a Kākāpō dance party . I think this is a good celebration of the most important news of this year. Tags: ai , generative-ai , llms , annotated-talks , ai-security-research , openai-hugging-face-incident

rss:368843ff1023d34eUseful?👍👎
91%releasereleases-ollama

ollama v0.40.0

github-actions[bot]

First-party 91%Usable today 80%
Abstract

What's Changed Models run on MLX on Apple Silicon by default In this release, on Apple Silicon devices, model architectures supported by the MLX runtime will automatically run on MLX. ollama pull qwen3.8 ollama run qwen3.8 Additional models include gemma4 , qwen3.6 and qwen3.5 Decision models are now available on MLX as well: Nimble tev1 clef clef-flash We will continue testing and enabling additional models. Full Changelog : v0.34.4...v0.40.0-rc3

Same story elsewhere (1)
rss:698be587dc32f11fUseful?👍👎

Maybe 80% to 90%

89%businessbluesky25 likes · 0 reposts · 0 replies

The iPad Mini is slightly cheaper again during Prime Day

The Verge · @theverge.com, theverge.com · discussion

Measured result 89%Usable today 79%
Abstract

With a $100 discount, the Apple iPad Mini is temporarily back to its pre-RAMageddon price. www.theverge.com/gadgets/1000... Linked page: Save $100 during Amazon’s October sale.

bsky:42edd7c35a416de5Useful?👍👎
88%releasereddit-industry

I scraped billions of TikTok videos and profiles by reverse engineering the mobile API. Here's how it works + source code

/u/DataShack

Usable today 88%First-party 42%Measured result 42%
Abstract

Hey everyone. I'm a data engineer and I've spent the past 8 years reverse engineering TikTok's mobile app. Over that time, I've learned how to pull TikTok data at pretty ridiculous scale. Profiles, videos, comments, sounds, search results, follower graphs, trends, etc. I finally put together a technical guide explaining how it all works. It covers device registration, request signing, X-Argus/X-Ladon/X-Gorgon, TLS fingerprinting, regional endpoints, proxies, scaling, etc. To give you an idea of the scale, I've collected over 5.6 billion TikTok videos using this approach. I uploaded the whole dataset to Hugging Face: https://huggingface.co/datasets/datasocial/tiktok-5.6B-videos If you don't want to download billions of rows just to play around with the data, you can also query my ClickHouse database directly at https://sql.datasocial.ai:443 or run SQL on the web interface The database is public with no password so please don't crash my server lol. Once you get the mobile API working, scraping is really only the beginning. You can scrape billions of profiles, detect viral videos and sounds as they take off, build real-time trend alerts, influencer search engines, or even build your own TikTok data API and sell it through platforms like RapidAPI or Apify. Basically, if the data exists somewhere in the TikTok app, you can probably build something around it. One important note: everything I'm talking about here is public data that TikTok exposes without requiring you to log into an account. Nothing here involves accessing private accounts or data behind authentication. Anyway, here's the full technical breakdown: https://datasocial.ai/writing/scraping-tiktoks-mobile-api The guide explains the entire process and architecture. If you'd rather skip rebuilding everything from scratch, I also made the production source code available there for purchase. submitted by /u/DataShack to r/SaaS [link] [comments]

rss:f5f2447cf5e3e947Useful?👍👎
88%releasereleases-transformers

Release: v5.15.0

LysandreJik

First-party 88%Usable today 87%
Abstract

Release v5.15.0 New Model additions Meta Muse Glimmer Muse Glimmer, released today, is Meta’s new multimodal model, especially designed for agentic use cases. Distilled from Muse to 30B parameters, and released under the Apache 2.0 license, it can be deployed to local setups for privacy-aware applications such as coding, document analysis, personal assistants, Claw- or Hermes-like setups. Muse Glimmer is a dense 30B parameter model consisting of: 2B ViT-style encoder for vision (Perception Encoder) 28B parameter text decoder We're covering it in the following blogpost: http://hf.co/blog/muse-glimmer GraniteMoeSWA & GraniteSWA Links: Documentation Add Granite-swa and Granitemoe-swa model support ( #47179 ) by @daviswer in #47179 Links: Documentation Add Granite-swa and Granitemoe-swa model support ( #47179 ) by @daviswer in #47179 A.X-K1 & A.X-K2 Links: Documentation Add AXK2 from SKT ( #47528 ) by @vasqu in #47528 Links: Documentation add_axk1 ( #46867 ) by @kmswin1 in #46867 Cosmos3 Edge Links: Documentation Add Cosmos3 Edge model support ( #47181 ) by @atharvajoshi10 in #47181 Breaking changes Kernels are now opt-in rather than mandatory for linear attention models (Mamba, GDN, Conv-only, etc.), so users who relied on automatic kernel selection must explicitly enable kernels to maintain previous behavior. 🚨 [ Kernels ] Refactor all linear attn models & native kernels fallback ( #47630 ) by @vasqu The cache cropping API now only accepts negative values (relative offsets) instead of absolute sizes, so users calling crop methods directly must update their code to pass negative values accordingly. 🚨 [cache] Cropping can only be done with negative values ( #47720 ) by @Cyrilvallez T5 and its model family (MT5, LongT5, etc.) now support SDPA and other attention backends via ALL_ATTENTION_FUNCTIONS , meaning the default attention implementation may change and users relying on the previous eager-only path should explicitly set attn_implementation="eager" if needed. 🚨 Enable SDPA (and other attention backends) for T5 and propagate to the T5 family ( #47014 ) by @jiqing-feng Several small private helper functions (e.g., _is_url , _build_image_tokens ) have been removed from multimodal processor files, so users or downstream libraries that imported these private functions directly must remove or replace those references. 🚨 Processors update the rest ( #46556 ) by @zucchini-nlp Attention This release includes several attention fixes and improvements, including correcting Multi-Head Latent Attention (MLA) cache compression, optimizing Flash Attention max sequence length computation in vision models, and fixing bugs in CTRL flex-attention and SDPA prefill with position bias. Additional changes refactor linear attention models for better maintainability, make Gemma 4's heterogeneous attention config explicit, and improve MPS support via metal-flash-sdpa integration. [Fix] Fix multi-head latent attention (MLA) ( #47761 ) by @remi-or in [ #47761 ] Refactor all linear attention models to latest best standards for convolution ( #47452 ) by @Cyrilvallez in [ #47452 ] Allow metal-flash-sdpa for OpenAIPrivacyFilter on MPS ( #46740 ) by @ArthurZucker in [ #46740 ] Use new per_layer_config for Gemma 4 so that heterogeneous attention config is explicit ( #47384 ) by @hmellor in [ #47384 ] add paged attention tests support for XPU ( #47163 ) by @kaixuanliu in [ #47163 ] Move value padding into the attention interfaces that need it ( #47451 ) by @hmellor in [ #47451 ] Simplify function dispatch for linear attention ( #47450 ) by @Cyrilvallez in [ #47450 ] Optimize flash attention max seqlen computation in vision attention ( #47170 ) by @ShareLer in [ #47170 ] Fix BlockMask crash in CTRL flex-attention generation ( #46854 ) by @jiqing-feng in [ #46854 ] [CB] Automatically switch attention implementation to flash ( #47330 ) by @remi-or in [ #47330 ] Fix sdpa prefill with position_bias ( #47359 ) by @Cyrilvallez in [ #47359 ] Vision Vision improvements in this release include performance optimizations such as faster image preprocessing for vision-language models (GLM4V, MiniMaxM3-VL, and others) by eliminating redundant tensor copies, and more efficient Flash Attention variable-length paths by precomputing maximum sequence lengths once per forward pass. Several bug fixes were also applied, including correcting dtype alignment in Kosmos2/Kosmos2_5 embedding merges, fixing a position-embedding initialization fallback in Phi4Multimodal, resolving PIL resize parity in Hunyuan-VL, and patching stop-sequence handling in the image-text-to-text pipeline. Modularize qwen-format vision processors ( #47573 ) by @zucchini-nlp in [ #47573 ] Update daily CI Docker image to torch 2.13.0 / CUDA 13.0 ( #47738 ) by @ydshieh in [ #47738 ] Align image feature dtype in kosmos2 and kosmos2_5 embedding merge ( #47691 ) by @ in [ #47691 ] Speed up image preprocessing for vision-language models ( #47453 ) by @labAxiaoming in [ #47453 ] Fix vision position-embedding init width fallback in Phi4Multimodal ( #47509 ) by @ in [ #47509 ] Fix Hunyuan-VL PIL image resize parity with reference preprocessing ( #47233 ) by @IMvision12 in [ #47233 ] Fix image-text-to-text stop_sequence handling ( #47032 ) by @Sunt-ing in [ #47032 ] Refactor image loading in tests to use load_test_image helper ( #47218 ) by @LevelVoid in [ #47218 ] Generation Several generation improvements and bug fixes were made, including enabling batched audio generation for Qwen2.5/3-Omni, allowing sliding window cache layers to work with speculative decoding, and fixing memory overhead from static cache persistence across generate() calls. Multiple model-specific bugs were also resolved, including crashes in KyutaiSpeechToText, MusicgenForCausalLM, CTRL flex-attention, and assisted decoding for EncoderDecoder cache and OlmoHybrid models. Align OlmoHybrid to use a native cache in generate ( #47604 ) by @Cyrilvallez in [ #47604 ] [generate] Stop setting the static cache as an attribute to save memory ( #47731 ) by @Cyrilvallez in [ #47731 ] Add support for batched Qwen2.5/3-Omni audio generation ( #47186 ) by @IMvision12 in [ #47186 ] [cache] Allow sliding window layers to be roll-backed for speculative decoding ( #47447 ) by @Cyrilvallez in [ #47447 ] Fix shape mismatch in KyutaiSpeechToText generate() last window ( #46952 ) by @jiqing-feng in [ #46952 ] Fix typo in MusicgenForCausalLM.generate() ( #46974 ) by @jiqing-feng in [ #46974 ] Fix assisted decoding for models with EncoderDecoder cache & OlmoHybrid ( #47361 ) by @Cyrilvallez in [ #47361 ] Cache Several cache-related bugs were fixed, including correcting NemotronH's missing "mlp" layer-type mapping, resolving recurrent-layer padding masks being skipped during chunked prefill and cache continuation for hybrid models, and fixing assisted decoding for models with EncoderDecoderCache and OlmoHybrid. Additional improvements include aligning OlmoHybrid to use a native cache, enabling sliding window layers to support speculative decoding rollback, and stopping the static cache from being stored as a model attribute to reduce unexpected memory overhead. [docs] MPS graph cache ( #47304 ) by @stevhliu in [ #47304 ] Fix NemotronH: Register "mlp" in the cache layer-type mappings ( #47535 ) by @qgallouedec in [ #47535 ] Fix recurrent-layer padding mask being skipped on continued forwards (chunked prefill, cache continuation) ( #47087 ) by @abcgco in [ #47087 ] Kernels ⚠️ The kernels python package will very likely be a required dependency for transformers[torch] in the near future. This will help us deliver maximum performance to all users; kernels will only be downloaded from trusted publishers manually approved by the HF team. Please let us know of any issues you're facing beforehands so that we may solidify our integration. Improved robustness of the kernels integration by refactoring function handling to use layer repos, fixing CI EROFS fallback patches for kernel downloads via HfApi , resolving a positional argument collision in causal_conv1d_fn , and bumping the FP8 kernels version to prevent NaNs. [conftest] Fix EROFS fallback for kernel downloads (correct interception point) ( #47794 ) by @ydshieh in [ #47794 ] [conftest] Fix EROFS fallback for kernel downloads via HfApi ( #47791 ) by @ydshieh in [ #47791 ] [ Kernels ] Refactor function handling ( #46883 ) by @vasqu in [ #46883 ] Kernels and loaders robustification ( #47334 ) by @IlyasMoutawwakil in [ #47334 ] Fix causal_conv1d_fn positional activation colliding with hub kernel's seq_idx ( #47527 ) by @qgallouedec in [ #47527 ] [ FP8 ] Bump kernels version ( #47344 ) by @vasqu in [ #47344 ] [docs] FlashAttention kernel fallback ( #47345 ) by @stevhliu in [ #47345 ] Quantization Quantization support was expanded with FP8 kernels for compressed-tensors models, fixes for FP8 module normalization and format-based compression detection, and a multi-device MXFP4 dequantization race condition fix. GPTQ and MXFP4 tests were also extended to cover Intel XPU devices. extend tests/quantization/gptq/test_gptq.py::GPTQTestCUDA and tests/q… ( #47166 ) by @sywangyi in [ #47166 ] Compressed tensors fp8 ( #47216 ) by @SunMarc in [ #47216 ] Fix A.X-K2 fp8 modules_to_not_convert normalization for the gated-norm MLP ( #47578 ) by @kmswin1 in [ #47578 ] [Quantization]: Refactor is_quantization_compressed for format-based detection ( #47152 ) by @rigen1048 in [ #47152 ] Fix multi-device mxfp4 dequantization race in _convert_moe_packed_tensors ( #47423 ) by @kaixuanliu in [ #47423 ] Audio Batched audio generation is now supported for Qwen2.5/3-Omni, and several bug fixes were applied across audio models, including a dtype mismatch in Gemma4 audio feature merging, a bfloat16 positional embedding error in AudioFlamingo3, and missing backend requirement guards for Voxtral. The VibeVoice ASR processor was also updated to make audio input optional and support multiple audios per prompt. feat[vLLM x v5]: Make audio optional and support multiple audios in VibeVoice ASR processor ( #47483 ) by @harshaljanjani in [ #47483 ] Fix Gemma4 audio feature dtype mismatch in masked_scatter ( #47482 ) by @danielhanchen in [ #47482 ] [fix] fix requirements audio feature and proc ( #47113 ) by @eustlb in [ #47113 ] [AudioFlamingo3] Fix bfloat16 dtype mismatch in audio encoder positional embedding ( #47258 ) by @snkii in [ #47258 ] Parallelization Expanded FSDP support across 94 ForCausalLM model classes with auto-generated FSDP plans, added end-to-end FSDP tests including distributed checkpoint save/load and generation, and introduced a dedicated FSDP CI job. Additionally, fixed a device mismatch bug in create_bidirectional_sliding_window_mask under model parallelism and resolved a tensor parallel inference issue for models with tied embeddings. skip fsdp tests when backend is mps ( #47601 ) by @3outeille in [ #47601 ] Fix model parallel device mismatch in create_bidirectional_sliding_window_mask ( #47560 ) by @abcgco in [ #47560 ] Add FSDP plans to all models ( #47165 ) by @3outeille in [ #47165 ] Fix TP inference for tied embedding ( #47503 ) by @3outeille in [ #47503 ] Add FSDP CI and end-to-end FSDP tests + save fsdp ( #47357 ) by @3outeille in [ #47357 ] Tokenization This release adds native support for Mistral's "tekken" tokenizer format via AutoTokenizer, fixes a CodeLlama tokenizer bug where leading whitespace was incorrectly dropped during decode, and patches a potential ReDoS vulnerability caused by unescaped tokenizer filenames being used as regex patterns in from_pretrained . [Mistral] Add native tekken tokenizer support to AutoTokenizer ( #47507 ) by @juliendenize in [ #47507 ] Fix CodeLlama tokenizer dropping leading whitespace on decode ( #47488 ) by @SuryanshSS1011 in [ #47488 ] Fix potential ReDoS by escaping tokenizer filename used as regex pattern ( #47498 ) by @hameedibrh in [ #47498 ] Serve Improved the serve chat parsing to unify streaming and non-streaming paths under a single response parser that handles tool calls, reasoning, and content, simplifying the addition of new model support. Additionally, hardened daily CI reporting by fixing GitHub API diagnostic output being captured in Slack payloads and adding rate-limit resilience to prevent report failures when paginating large job matrices. CI: Log GitHub API diagnostics to stderr ( #47635 ) by @tarekziade in [ #47635 ] Update serve chat parsing ( #46267 ) by @SunMarc in [ #46267 ] ci: harden daily CI reporting against GitHub API rate limits ( #47382 ) by @tarekziade in [ #47382 ] Bugfixes and improvements Fix cached_files silently returning stale file on read-only filesystem (EROFS) ( #47852 ) by @ydshieh in [ #47852 ] Fix PhimoeIntegrationTest ( #46539 ) by @ydshieh in [ #46539 ] make examples under doc device agnostic ( #47812 ) by @kaixuanliu in [ #47812 ] cancel deterministic for XPU in gemma4 tests ( #47790 ) by @kaixuanliu in [ #47790 ] Serialize post-mlinter-review after post-link to avoid PR description race ( #47832 ) by @ydshieh in [ #47832 ] Use content hash for mlinter review deduplication ( #47830 ) by @ydshieh in [ #47830 ] Add new args in auto-docstring ( #47737 ) by @zucchini-nlp in [ #47737 ] Add check_model_inits.py ( #47656 ) by @guarin in [ #47656 ] add xpu in installation guide ( #47785 ) by @sywangyi in [ #47785 ] Fix mlinter review job: checkout before artifact download ( #47820 ) by @ydshieh in [ #47820 ] Post mlinter findings as inline PR review comments ( #47819 ) by @ydshieh in [ #47819 ] Fix ci style ( #47818 ) by @vasqu in [ #47818 ] Hotfix axk2 indexer norm ( #47810 ) by @kmswin1 in [ #47810 ] open fla support for XPU to benefit from the acceleration ( #47799 ) by @kaixuanliu in [ #47799 ] [docs] Update BatchEncoding.to() type annotation and docstring ( #47789 ) by @samyuktahegde in [ #47789 ] Fix linting ( #47807 ) by @Cyrilvallez in [ #47807 ] Fix patching in some models ( #47798 ) by @zucchini-nlp in [ #47798 ] Add post-mlinter-review job to post-dashboard-link workflow ( #47800 ) by @ydshieh in [ #47800 ] Migrate torchao integration off deleted torchao.dtypes ( #47797 ) by @vkuzo in [ #47797 ] [conftest] Also wrap snapshot_download for EROFS fallback ( #47796 ) by @ydshieh in [ #47796 ] Fix MI355 CI: bump hf-workflows pin to NUM_SLICES=4 ( #47792 ) by @Abdennacer-Badaoui in [ #47792 ] [Fix] Wrong type hint in get_number_of_image_patches ( #47788 ) by @remi-or in [ #47788 ] Fix Dac offload tests ( #47775 ) by @guarin in [ #47775 ] [Fix] Swapped height and width in KimiK25 ( #47786 ) by @remi-or in [ #47786 ] Remove dangling files and folders ( #47764 ) by @Cyrilvallez in [ #47764 ] Fix AI-written conversion mappings ( #47755 ) by @Cyrilvallez in [ #47755 ] update mistral common version for PR 47507 ( #47677 ) by @itazap in [ #47677 ] Fix spelling/grammar in model files (batch 3/3) ( #47684 ) by @Rocketknight1 in [ #47684 ] Fix spelling/grammar in core library, examples, and utils ( #47685 ) by @Rocketknight1 in [ #47685 ] Fix spelling/grammar in model files (batch 2/3) ( #47683 ) by @Rocketknight1 in [ #47683 ] update sonicmoe versions ( #47769 ) by @IlyasMoutawwakil in [ #47769 ] clean up reverse_op fixme in compressed_tensors ( #47701 ) by @DhanushPillay in [ #47701 ] PR CI with torch 2.13 ( #47767 ) by @ydshieh in [ #47767 ] Import utils compilation fixes ( #47726 ) by @IlyasMoutawwakil in [ #47726 ] Fix DBRX MoE hidden size and expert GLU transposes ( #47671 ) by @kaixuanliu in [ #47671 ] Fix multi token decode merging ( #47762 ) by @IlyasMoutawwakil in [ #47762 ] Fix: Remove redundant @can_return_tuple conflicting with @capture_out… ( #47733 ) by @guarin in [ #47733 ] fix processor config nested key fallback ( #47628 ) by @YunzhuLu in [ #47628 ] [CI - Debug] Skip /transformers-dependent steps for CPU runner ( #47759 ) by @ydshieh in [ #47759 ] [CI] Add CPU runner support to ssh-runner workflow ( #47757 ) by @ydshieh in [ #47757 ] Simplify reverse weight conversion ( #47725 ) by @Cyrilvallez in [ #47725 ] Remove useless linting for inv_freq ( #47753 ) by @Cyrilvallez in [ #47753 ] Use explicit nn.Buffer everywhere for modular ( #47722 ) by @Cyrilvallez in [ #47722 ] Remove stale and redundant _no_split_modules entries ( #47645 ) by @guarin in [ #47645 ] Executorch exporter fixes ( #47243 ) by @IlyasMoutawwakil in [ #47243 ] Acc fix in xpu ( #47500 ) by @sywangyi in [ #47500 ] update Dockerfile for xpu torch2.13 ( #47502 ) by @sywangyi in [ #47502 ] feat[vLLM]: Support text replacement offsets in the remaining old-format processors ( #47614 ) by @harshaljanjani in [ #47614 ] Fix ImportError in transformers.exporters on torch < 2.8 ( #47711 ) by @Neal006 in [ #47711 ] Fix failing tests for axk1 and axk2 ( #47727 ) by @kaixuanliu in [ #47727 ] Fix failing tests for granite_swa and granitemoe_swa ( #47723 ) by @kaixuanliu in [ #47723 ] skip invalid test cases for inkling tests ( #47493 ) by @kaixuanliu in [ #47493 ] [docs] Fix BatchEncoding documentation inconsistencies ( #47647 ) by @samyuktahegde in [ #47647 ] Fix spelling/grammar in model files (batch 1/3) ( #47682 ) by @Rocketknight1 in [ #47682 ] Fix spelling/grammar in English docs (q → z) ( #47681 ) by @Rocketknight1 in [ #47681 ] Fix spelling/grammar in English docs (h → p) ( #47680 ) by @Rocketknight1 in [ #47680 ] Fix spelling/grammar in English docs (a → g) ( #47679 ) by @Rocketknight1 in [ #47679 ] fix npu check ( #47587 ) by @DhanushPillay in [ #47587 ] fix: correct text input validation logic in 8 multimodal processors (and → or) ( #47663 ) by @AbdullahRasheed45 in [ #47663 ] Fix feature dtype mismatch in masked_scatter for seven multimodal models ( #47673 ) by @ in [ #47673 ] [docs] storing and loading chat templates ( #47650 ) by @stevhliu in [ #47650 ] adding amd quark config class changes ( #47322 ) by @debasisdwivedy in [ #47322 ] Fix compressed tensors impl ( #47652 ) by @SunMarc in [ #47652 ] Hoist special-token lookups in wav2vec2 decode paths and drop a dead filter in wav2vec2_phoneme ( #47557 ) by @ishan-1010 in [ #47557 ] silencing elastic warning by import distributed lib inside functions ( #47665 ) by @3outeille in [ #47665 ] Fix missing github_utils.py download in PR CI dashboard workflow ( #47668 ) by @ydshieh in [ #47668 ] Exportable kimi ( #47096 ) by @IlyasMoutawwakil in [ #47096 ] better guarding to handle torch compiled with USE_DISTRIBUTED=0 ( #47619 ) by @3outeille in [ #47619 ] Remove gemma4 warnings ( #47664 ) by @Cyrilvallez in [ #47664 ] [Chat Parsing] Type inline tool-call arguments from the calling tool's JSON Schema ( #47529 ) by @yonigozlan in [ #47529 ] Improve Trainer DataLoader Controls for Streaming and Multiprocessing ( #47164 ) by @muyihao in [ #47164 ] Update maintainer list ( #47644 ) by @Rocketknight1 in [ #47644 ] Allow position_ids_start=2 on DataCollatorWithFlattening for RoBERTa etc. ( #47525 ) by @tomaarsen in [ #47525 ] Remove Rotary warning ( #47642 ) by @Cyrilvallez in [ #47642 ] Drop multimodal inputs natively in prepare_inputs_for_generation if not in prefill ( #47622 ) by @Cyrilvallez in [ #47622 ] Simplify all Rotary modules ( #47598 ) by @Cyrilvallez in [ #47598 ] [docs] response_template when serving ( #47626 ) by @stevhliu in [ #47626 ] [docs] MTP support ( #47301 ) by @stevhliu in [ #47301 ] Fix GPT-2 c_proj depth scaling initialization ( #47459 ) by @DavidJohnQuinlan in [ #47459 ] Fix fp8_linear compilability ( #47623 ) by @IlyasMoutawwakil in [ #47623 ] byebye torch 2.4 ( #47609 ) by @ydshieh in [ #47609 ] Vectorize NoRepeatNGramLogitsProcessor and remove its host sync ( #47571 ) by @hameedibrh in [ #47571 ] Fix CUDA Graph breaking host to device copy from scalar tensor allocation ( #47547 ) by @hmellor in [ #47547 ] Fix some processors ( #47608 ) by @zucchini-nlp in [ #47608 ] CI: Add serge review relay workflow and review rules ( #47610 ) by @tarekziade in [ #47610 ] [docs] Exporters ( #47374 ) by @stevhliu in [ #47374 ] CI: use a single function for GH calls ( #47474 ) by @tarekziade in [ #47474 ] Remove redundant guarding for distributed ( #47570 ) by @3outeille in [ #47570 ] Fix modular for mamba packages ( #47494 ) by @Cyrilvallez in [ #47494 ] Remove deprecated conversion in Kimi ( #47581 ) by @zucchini-nlp in [ #47581 ] CI: use transformers-ci daily workflow with OTEL ( #47360 ) by @tarekziade in [ #47360 ] Fix slow tensor path in _check_special_mm_tokens ( #47580 ) by @guan404ming in [ #47580 ] CI: let's run integration failure cron at 10pm ( #47537 ) by @tarekziade in [ #47537 ] Better and more extensive tests for RoPE ( #46912 ) by @zucchini-nlp in [ #46912 ] Fix mamba2 family decode and simplify all reshape ops ( #47569 ) by @Cyrilvallez in [ #47569 ] [DiffusionGemma] Cast the decoder padding mask to bool ( #47295 ) by @kashif in [ #47295 ] General maintenance ( #47517 ) by @zucchini-nlp in [ #47517 ] fixed the benchmark script with DistributedConfig ( #47568 ) by @tarekziade in [ #47568 ] Fix failing tests for mimo_v2_flash ( #47284 ) by @kaixuanliu in [ #47284 ] Make tokenization_mistral_common importable without mistral_common installed ( #47397 ) by @juliendenize in [ #47397 ] Use --flake-runs=1 in check_bad_commit.py for PR comment CI ( #47522 ) by @ydshieh in [ #47522 ] Deprecate the old response_schema ( #47320 ) by @Rocketknight1 in [ #47320 ] fix: add pickle support to _LazyConfigMapping for spawn multiprocessing ( #46026 ) by @kfojcik-intel in [ #46026 ] Delete old deprecations ( #47518 ) by @zucchini-nlp in [ #47518 ] Run only @slow tests in PR comment CI ( #47521 ) by @ydshieh in [ #47521 ] Fix incorrect type hint ( #47519 ) by @hmellor in [ #47519 ] Deprecate CB config in gen configuration ( #47291 ) by @remi-or in [ #47291 ] [Offloading] [Bugfix] Fix fully offloaded model saving ( #47336 ) by @kylesayrs in [ #47336 ] CI: fix torchaudio pinning +proper break in rnnt ( #47422 ) by @tarekziade in [ #47422 ] Fix Qwen2.5-Omni Token2Wav DiT rotary embedding layout (interleaved cos/sin) ( #47403 ) by @HenryVarro666 in [ #47403 ] CI: add reproduce mode to serge verify caller ( #47492 ) by @tarekziade in [ #47492 ] [fix][whisper]: fix max_new_tokens handling ( #46795 ) by @eustlb in [ #46795 ] Isolate MLA KV expansion to make it easier to bypass ( #47460 ) by @hmellor in [ #47460 ] Fix loss alignment and Trainer token counting for encoder decoder models ( #46903 ) by @OmkumarSolanki in [ #46903 ] Fix the HunyuanVL's torchvision backend ( #47499 ) by @Mi-Jiazhi in [ #47499 ] [DiffusionGemma] Support gradient checkpointing ( #46572 ) by @kashif in [ #46572 ] Fix failing tests for zaya ( #47268 ) by @kaixuanliu in [ #47268 ] tipsv2_dpt: fix failing tests for XPU ( #47292 ) by @kaixuanliu in [ #47292 ] Fix some failed test cases related with XPU Expectations ( #47173 ) by @kaixuanliu in [ #47173 ] fix: guard DTensor import in sharding_utils.py for PyTorch < 2.5 ( #47481 ) by @ in [ #47481 ] CPU can incur a slow path on non-contiguous magnitudes ( #47351 ) by @vbayanag in [ #47351 ] Route chat management calls to the service root ( #47138 ) ( #47303 ) by @dhruv7477 in [ #47303 ] fix: liger unnecessarily materializes logits in VRAM during eval, causing OOM ( #45273 ) by @excepshenal in [ #45273 ] Fix gradient inflation when combining label smoothing with gradient accumulation ( #47261 ) by @Incheonkirin in [ #47261 ] Fix MoE expert decompression for non-32-divisible bit widths ( #47315 ) by @KKothuri in [ #47315 ] [Qwen3ASR] Add hotword parsing, and fix language parsing and training. ( #47111 ) by @ebezzam in [ #47111 ] Remove deprecated training args and is_fast property ( #46917 ) by @cyyever in [ #46917 ] Consistent output shape from get_image_features ( #46405 ) by @zucchini-nlp in [ #46405 ] fix failed test cases for qwen3_omni_moe model ( #47449 ) by @kaixuanliu in [ #47449 ] Fix double-shifted training loss in GitForCausalLM ( #47395 ) by @ in [ #47395 ] Fix CohereASR training-loss double-shift (same as Moonshine fix #46784 ) ( #46895 ) by @sharmax-vikas in [ #46895 ] Warn when group_by_length is silently ignored for iterable datasets ( #47379 ) by @qgallouedec in [ #47379 ] Update bug report list ( #46607 ) by @molbap in [ #46607 ] fix: remove unreachable return in special token builder ( #47420 ) by @hai1222 in [ #47420 ] Add Harry to slow CI ( #47454 ) by @vasqu in [ #47454 ] BLT: vectorize patch length processing ( #47385 ) by @sj0618 in [ #47385 ] Fix TrackioCallback fails to log evaluation metrics after training ends ( #46935 ) by @lewtun in [ #46935 ] [Kimi] add integration tests ( #47383 ) by @zucchini-nlp in [ #47383 ] Add distributed runtime utils and DistributedMixin ( #47352 ) by @3outeille in [ #47352 ] Fix Cosmos 3 Edge Patch packing order ( #47399 ) by @atharvajoshi10 in [ #47399 ] Fix yarn mscale_all_dim for DeepSeek v2 and Mistral 4 ( #47435 ) by @hmellor in [ #47435 ] Hoist special-token lookups out of per-token loops in six slow tokenizers ( #47425 ) by @ishan-1010 in [ #47425 ] fix typos and variable naming in quicktour.md ( #47418 ) by @yashasvi-srivastava21 in [ #47418 ] Normalize multimodal input keys in AnyToAnyPipeline ( #47074 ) by @Sunt-ing in [ #47074 ] Fix Aria checkpoint key conversion mapping ( #47151 ) by @sywangyi in [ #47151 ] extend tests/models/qwen3_next/test_modeling_qwen3_next.py::Qwen3Next… ( #47184 ) by @sywangyi in [ #47184 ] CI: add serge verify (GPU) caller workflow ( #47381 ) by @tarekziade in [ #47381 ] Fix orthogonal_ init for low-precision dtypes (bf16/fp16) ( #47252 ) by @janbernloehr in [ #47252 ] [docs] Fix decode examples and expected output in fast_tokenizers ( #47369 ) by @samyuktahegde in [ #47369 ] [serge] Fix 20 integration tests for model whisper failing with output_mismatch (list output differs (10), other (6) ( #47150 ) by @sergereview[bot] in [ #47150 ] [Mistral] Move MistralConverter into integrations/mistral/ package ( #46603 ) by @juliendenize in [ #46603 ] Fix GLM video frame padding for temporal patches ( #47141 ) by @labAxiaoming in [ #47141 ] [docs] Inkling ( #47350 ) by @stevhliu in [ #47350 ] Fix Daily CI reporting issues ( #47364 ) by @tarekziade in [ #47364 ] [ peft ] Support key_mapping with PEFT models ( #46766 ) by @tomaarsen in [ #46766 ] Fix model tests for tipsv2 ( #47356 ) by @kaixuanliu in [ #47356 ] Fix TimesFM 2.5 window_size AttributeError ( #47363 ) by @kashif in [ #47363 ] fix: allow num_labels property to return None when id2label is unset ( #47069 ) by @SebTardif in [ #47069 ] [Tests] Fix slow video tensor creation from list of numpy arrays in SmolVLM ( #44731 ) by @Defalt-Meh in [ #44731 ] Update dev version on main ( #47366 ) by @vasqu in [ #47366 ] Fix deepgemm on multiple devices ( #47323 ) by @IlyasMoutawwakil in [ #47323 ] ci: Handle empty GitHub token in CI run lookup ( #47362 ) by @tarekziade in [ #47362 ] Fix inkling feature extractor ( #47349 ) by @ArthurZucker in [ #47349 ] Significant community contributions The following contributors have made significant changes to the library over the last release: @ydshieh Fix cached_files silently returning stale file on read-only filesystem (EROFS) ( #47852 ) Fix PhimoeIntegrationTest ( #46539 ) Serialize post-mlinter-review after post-link to avoid PR description race ( #47832 ) Use content hash for mlinter review deduplication ( #47830 ) Fix mlinter review job: checkout before artifact download ( #47820 ) Post mlinter findings as inline PR review comments ( #47819 ) Add post-mlinter-review job to post-dashboard-link workflow ( #47800 ) [conftest] Also wrap snapshot_download for EROFS fallback ( #47796 ) [conftest] Fix EROFS fallback for kernel downloads (correct interception point) ( #47794 ) [conftest] Fix EROFS fallback for kernel downloads via HfApi ( #47791 ) PR CI with torch 2.13 ( #47767 ) [CI - Debug] Skip /transformers-dependent steps for CPU runner ( #47759 ) [CI] Add CPU runner support to ssh-runner workflow ( #47757 ) Update daily CI Docker image to torch 2.13.0 / CUDA 13.0 ( #47738 ) Fix missing github_utils.py download in PR CI dashboard workflow ( #47668 ) byebye torch 2.4 ( #47609 ) Use --flake-runs=1 in check_bad_commit.py for PR comment CI ( #47522 ) Run only @slow tests in PR comment CI ( #47521 ) @kaixuanliu make examples under doc device agnostic ( #47812 ) cancel deterministic for XPU in gemma4 tests ( #47790 ) open fla support for XPU to benefit from the acceleration ( #47799 ) Fix DBRX MoE hidden size and expert GLU transposes ( #47671 ) Fix failing tests for axk1 and axk2 ( #47727 ) Fix failing tests for granite_swa and granitemoe_swa ( #47723 ) skip invalid test cases for inkling tests ( #47493 ) Fix failing tests for mimo_v2_flash ( #47284 ) Fix failing tests for zaya ( #47268 ) tipsv2_dpt: fix failing tests for XPU ( #47292 ) Fix some failed test cases related with XPU Expectations ( #47173 ) add paged attention tests support for XPU ( #47163 ) Fix multi-device mxfp4 dequantization race in _convert_moe_packed_tensors ( #47423 ) fix failed test cases for qwen3_omni_moe model ( #47449 ) Fix model tests for tipsv2 ( #47356 ) @vasqu Fix ci style ( #47818 ) 🚨 [ Kernels ] Refactor all linear attn models & native kernels fallback ( #47630 ) [ Kernels ] Refactor function handling ( #46883 ) Add AXK2 from SKT ( #47528 ) Add Harry to slow CI ( #47454 ) Update dev version on main ( #47366 ) [ FP8 ] Bump kernels version ( #47344 ) @kmswin1 Hotfix axk2 indexer norm ( #47810 ) Fix A.X-K2 fp8 modules_to_not_convert normalization for the gated-norm MLP ( #47578 ) add_axk1 ( #46867 ) @remi-or [Fix] Fix multi-head latent attention (MLA) ( #47761 ) [Fix] Wrong type hint in get_number_of_image_patches ( #47788 ) [Fix] Swapped height and width in KimiK25 ( #47786 ) Deprecate CB config in gen configuration ( #47291 ) [CB] Automatically switch attention implementation to flash ( #47330 ) @juliendenize [Mistral] Add native tekken tokenizer support to AutoTokenizer ( #47507 ) Make tokenization_mistral_common importable without mistral_common installed ( #47397 ) [Mistral] Move MistralConverter into integrations/mistral/ package ( #46603 ) @IMvision12 Add support for batched Qwen2.5/3-Omni audio generation (#47186) Fix Hunyuan-VL PIL image resize parity with reference preprocessing (#47233) @jiqing-feng 🚨 Enable SDPA (and other attention backends) for T5 and propagate to the T5 family (#47014) Fix shape mismatch in KyutaiSpeechToText generate() last window (#46952) Fix typo in MusicgenForCausalLM.generate() (#46974) Fix BlockMask crash in CTRL flex-attention generation (#46854) @tarekziade CI: Log GitHub API diagnostics to stderr (#47635) CI: Add serge review relay workflow and review rules (#47610) CI: use a single function for GH calls (#47474) CI: use transformers-ci daily workflow with OTEL (#47360) CI: let's run integration failure cron at 10pm (#47537) fixed the benchmark script with DistributedConfig (#47568) CI: fix torchaudio pinning +proper break in rnnt (#47422) CI: add reproduce mode to serge verify caller (#47492) CI: add serge verify (GPU) caller workflow (#47381) ci: harden daily CI reporting against GitHub API rate limits (#47382) Fix Daily CI reporting issues (#47364) ci: Handle empty GitHub token in CI run lookup (#47362) @daviswer Add Granite-swa and Granitemoe-swa model support (#47179) @ShareLer Optimize flash attention max seqlen computation in vision attention (#47170) @atharvajoshi10 Fix Cosmos 3 Edge Patch packing order (#47399) Add Cosmos3 Edge model support (#47181)

Same story elsewhere (4)
rss:6bfb25e7e733dd72Useful?👍👎
86%announcementbluesky34 likes · 2 reposts · 4 replies

Keurig’s new machine uses plastic-free compressed coffee pucks

The Verge · @theverge.com, theverge.com · discussion

Measured result 86%Usable today 46%
Abstract

The $500 Alta trades recyclable pods for 100 percent compostable pucks wrapped in a plant-based coating. www.theverge.com/tech/1003956... Linked page: Keurig’s new coffee machine ditches the pods.

bsky:24a46ba5751b0bc4Useful?👍👎
85%analysisreddit-industry

My first SaaS took 9 months and 4k in ad spent and never made a penny. Here's what my second made in 4 weeks, and everything I learned.

/u/keepingmemories

Measured result 85%Usable today 75%First-party 38%
Abstract

I have been building software on my own for a while, and I want to write down everything that happened between my first real product and my second one, because the gap between them taught me more than anything I have ever read or watched, and I honestly wish someone had sat me down and shown me all of this before I started throwing money at things. The first one: nine months, £4k, zero payers The first one was called Ancestorii, a private place for families to keep their memories, photos and stories together. I spent about six months building it with ChatGPT writing most of the code, and by launch day I genuinely believed it was perfect, I thought people would find it and love it the way I did, and what actually happened is nobody came. So I did what I think most of us do and started buying attention. Meta ads, Google search and YouTube ads, Reddit ads, UGC videos from creators, a £70 podcast sponsorship, a £120 post on a family tree magazine's Facebook page, my own podcast on Spotify, SEO pages, and cold messages to genealogy creators where not one of them replied. I even printed physical memory books before a single stranger had uploaded a single memory, which looking back was probably the most expensive mistake in the whole thing. Some of the numbers are almost funny now. £210 on Meta in seven days brought around 15,000 visits and not one payer. When I took the paywall away the first signup came after £2.80 of spend, and then I sat at about four signups a day on £4 a day of Meta until I had 125 signups and zero people paying. Today it has 177 signups and has never had a paying customer. The worst part is I noticed in the very first week that the signups weren't turning into anything, and I kept spending anyway, on hope, because nobody told me to stop and I didn't want to be the one to say it. The diagnosis took me far too long to accept. It was a vitamin, not a painkiller. Nice to have, nobody needs it today, nobody loses anything if they never sign up, and no amount of ads fixes that, ads just buy you the bad news faster. The second one: £25 on ads, and people pay Prep66 is an exam prep site for the Part 66 licence exams, 13 modules, about 25,000 practice questions with explanations, revision guides, mock exams, the lot. I launched it in the middle of August with one Reddit post in the community where those students hang out, and the first person paid full price nine days later without a discount code. The only money I've ever put into ads was about £25 on a Reddit campaign, and it brought one signup and zero payers, so I killed it after five days and everything since has been organic. These are the last four weeks straight off the Stripe dashboard: monthly recurring revenue went from about £51 to £171, active subscribers went from 3 to 11, £230 came in gross, zero failed payments, zero refunds. It's not life changing money and I'm not pretending it is, it's less than two days of my shift pay, but the line only goes one way and it's doing that with no ad budget at all, while my first product burned £4k and never moved once. So what was actually different? I ran both products back through the same questions afterwards and ended up with six things a product needs before a stranger will pay for it. Prep66 has all six. Ancestorii failed five of them. The six things a product needs before anyone pays One, the problem has to be mandatory. Nobody has to save their family stories. Someone sitting a licence exam has to pass it, there's no version of their career where they skip it. Two, there has to be a deadline. An exam has a date, and a date makes people act this week instead of someday. Ancestorii had no clock on it at all, which is exactly why "I'll do it later" killed nearly every signup. Three, failing has to cost something real. Fail an exam and you lose money and months, sometimes a pay rise. Not using a memory app costs you nothing today, even if it might cost you something in twenty years. Four, the alternatives have to be expensive or bad. The other ways to prepare are long paid courses, thick textbooks, or older question banks that look like nobody has touched them in years. When the alternatives are pricey or tired, something cleaner and cheaper sells itself. Five, it has to look credible the second someone lands. A student can tell in about ten seconds whether a prep site was made by someone who actually knows the exam, from the module names, the paper formats, the way the questions are written. Ancestorii was asking strangers to trust a no name site with their family photos, which is the exact opposite. Six, you have to be able to find the buyers. Exam students hang out in a couple of subreddits and they search Google for the exact module they're stuck on. Who's the buyer for a family memory app? Everyone and no one, which in practice means you pay Meta to guess for you. How I picked it and checked it before writing any code The market research for Prep66 wasn't fancy at all. I picked a world I already knew inside out, so I knew what students complain about and what they already pay for, and then I checked four things. People already pay for this today, not "would pay", actually pay, right now, to someone. The options they're paying for are old and dated. Building it used to be really expensive, because it's a mountain of content, and with AI it isn't anymore. And it's too small for a big company to bother with but big enough to pay one person properly. If all four aren't true, I don't touch it now. Then the validation was the launch itself. I built it lean, put it in front of one subreddit and watched whether strangers paid, and they did inside nine days. With Ancestorii I had the same kind of signal in week one, it just said no, and I ignored it for months. What actually brought people in: SEO and GEO Before anything else I put tracking on every signup, so every new account gets stamped with where it came from, either the UTM tags on the link or the site that sent them. That one decision changed how I saw everything, because of the first 13 tracked signups, 6 came from ChatGPT citing the site, 5 came from Google, 1 came direct and 1 came from the £25 ad. Gemini started showing up as a source not long after. I genuinely did not expect AI answers to be my biggest channel, and I'd never have known without the tracking. What I learned doing it is that you write your titles and headings in the exact words people type, not the words you would use yourself. AI tools quote facts, not vibes, so the pages that got picked up were the boring factual ones: a glossary, a facts and figures page, a page comparing the ways you can study for the exam that doesn't trash anyone by name, and a features page with the prices pulled live so they're never out of date. ChatGPT leans on Bing, so I submitted the sitemap to Bing Webmaster Tools and set up IndexNow so Bing gets pinged every time a public page changes, and the robots file lets the AI crawlers in instead of blocking them. By late September Google Search Console showed 194 clicks and 6,110 impressions with an average position of 8.5, and about 1,580 of those impressions came from Google's own AI answers. It's not all solved either, Gemini still barely knows we exist, and that's my whole job for October. Reddit posts written like a normal person talking, plus SEO and GEO, did basically everything. Where all of this went: AskSami Once Prep66 started paying I kept thinking about how much of that Ancestorii money I would have kept if someone had looked at what I'd built in week one and told me straight that it was a vitamin and to stop buying ads. Every time I looked at my ad numbers they meant nothing to me, so I'd paste them into ChatGPT or Claude and get the same generic "have you tried different hooks" answers, because they didn't know my product, they didn't know what I'd already tried, and they forgot all of it the next chat. So I built AskSami. Sami reads your code from your GitHub repo, read only, so it already knows what you've built without you having to explain it, and then it tells you honestly whether you've built a painkiller or a vitamin, who's already selling the same thing, what your edge is if you actually have one, and where your effort and money should go, free channels before paid ones. It ties your signups and payments back to the exact post, page or ad that brought them, which is the tracking lesson from Prep66 done for you, and it remembers everything you've tried so you're never starting from zero again. You can talk to Sami at asksami.app without even signing up. If you're sitting where I sat with Ancestorii, with signups coming in and nobody paying, I know exactly how that feels, and I hope something in here saves you a few months and a bit of money. If you want to connect, swap notes or just chat about what you're building, please do, my DMs are always open 🙂 submitted by /u/keepingmemories to r/SaaS [link] [comments]

rss:62842636c16728e6Useful?👍👎
85%releasereleases-ollama

ollama v0.35.1

github-actions[bot]

First-party 85%Usable today 84%Measured result 33%
Abstract

Clef decision models Ollama now supports Clef and Clef Flash , Cloudflare's new open-source decision models, through /v1/systemone . Clef (27B) and Clef Flash (9B) are multimodal: requests can now include images alongside the text state, shared by all questions and scored jointly with it. curl http://localhost:11434/v1/systemone -d ' { "model": "clef-flash", "state": "The user took this screenshot.", "images": ["<base64-encoded image>"], "questions": { "has_ollama": {"type": "noul", "instructions": "Does this image contain Ollama?"} } } ' { "model": "clef-flash", "answers": { "has_ollama": { "type": "noul", "noul": 0.958 } }, "usage": { "input_tokens": 548, "output_tokens": 0 } } What's Changed Models using web search can now perform up to ten searches per response, up from three Modelfiles now support CAPABILITY declarations, so model creators can explicitly declare what a model can do. Declarations are preserved when creating from GGUF or safetensors, through model inheritance, and on Modelfile export ollama show and the model list now report only decision as the capability for decision models, so clients no longer offer them for general chat, tools, or thinking Updated llama.cpp and the MLX engine Full Changelog : v0.35.0...v0.35.1

Same story elsewhere (4)
rss:57412104147c8ff0Useful?👍👎
85%releasereleases-llama-cpp

llama.cpp b11402

github-actions[bot]

First-party 85%Usable today 83%
Abstract

CUDA: prefer whole-tile FlashAttention scheduling for efficient two-stage kernels ( #29435 ) Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/52707115 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

rss:14f4f92b4306064cUseful?👍👎
84%releasereddit-releases

QR Code Monster LoRa for Qwen Image 2.1 Edit

/u/cranpeach69

Usable today 84%
Abstract

For those who are unaware, there was an old Controlnet for old SD models that was quite popular here back in those times, that would make cool almost Optical Illusion-like images. This is the same concept but instead I'm using I2I Image edit model where you provide an input image and ask the model to generate the scene of your choice. I've been very pleased with the results from the Qwen Image 2.1 version. It was trained on 25 high quality image pairs and it works quite well, even when using human subjects and depicting scenes not included the dataset. It can do QR Codes but it was not the main focus of the dataset so it can be hit or miss as far as the actual usability/scanability of the codes. The suggested prompt is exactly as captioned in the dataset: Transform the entire image into <your prompt here> while preserving the outlines and shapes of the original image It seems to work well with complex prompts and simple ones as well. You can download it on Civit here . All images/videos should include a workflow which is basically just a pixel drift fix workflow from Ausboss with a few added touches and using a viggle Turbo LoRa. I'm mainly posting this here as I would love to see what you create! submitted by /u/cranpeach69 to r/StableDiffusion [link] [comments]

rss:21e9196f5ea11fd2Useful?👍👎
84%announcementbluesky172 likes · 23 reposts · 9 replies

Introducing Trillium Labs

Nathan Lambert · @natolambert.bsky.social, blog.trilliumlabs.org · discussion

First-party 84%
Abstract

Today we're unveiling Trillium Labs, a new non-profit to foster the open science of frontier AI. We're building open post-training recipes and will expand into open infra to study RSI, reward-hacking, multi-agent systems, and whatever comes next. blog.trilliumlabs.org/p/introducin... Linked page: Fostering the open science of frontier AI.

bsky:36ee0205615fabf9Useful?👍👎
83%releasereleases-llama-cpp

llama.cpp b11399

github-actions[bot]

First-party 83%Usable today 83%
Abstract

CUDA: refactor swizzling code ( #29612 ) CUDA: refactor swizzling code fix templates/loop bounds Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/52658795 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

rss:f9ffce3deb479996Useful?👍👎
82%releasereleases-llama-cpp

llama.cpp b11406

github-actions[bot]

Usable today 82%First-party 78%
Abstract

webgpu: add MMVQ support for Q1_0/Q5_0/Q5_1/Q3_K/Q5_K/Q6_K/MXFP4 ( #29483 ) add supports for q1/q5/q3_k/q5_k/q6_k/mxfp4 of mmvq path Add K_QUANTS_HANDLING macro to q1_0 of mmvq path Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/52742465 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

rss:acea018443fab34fUseful?👍👎
82%releasereleases-llama-cpp

llama.cpp b11403

github-actions[bot]

Usable today 82%First-party 80%
Abstract

CUDA: use MMVF for thin f16/bf16 mul_mat at small batch size ( #29633 ) CUDA: use MMVF for thin f16/bf16 mul_mat at small batch size Signed-off-by: ynankani ynankani@nvidia.com adjust kernel selection logic Signed-off-by: ynankani ynankani@nvidia.com Co-authored-by: Johannes Gäßler johannesg@5d6.de Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/52714313 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

rss:be488f5db71b4dc0Useful?👍👎
82%releasereleases-transformers

Release v5.16.1

vasqu

Usable today 82%First-party 79%Measured result 49%
Abstract

Release v5.16.1 This is a special release as we include GLM! (and a few small fixes) GLM-5.3-Flash GLM-5.3-Flash, the first natively multimodal model in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks. GLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest 30T-token multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute. Links: Documentation [Glm 5.3 Flash] GLM 5.3 Flash Support ( #48342 ) by @Dovis01 in #48342 Small patch fixes Mainly BC behavior for TP and pinning a hf kernel for security reasons 🤗 Restore BC for the tensor-parallel API ( #48300 ) by @ArthurZucker Fix kernel commit and repo paths for ESMFold2 ( #48186 ) by @Rocketknight1 Full Changelog : v5.16.0...v5.16.1

rss:60829fe001cfc257Useful?👍👎
81%releasehn

Show HN: AI search for every photo and every frame of video on macOS

allenleee

Usable today 81%
Abstract

Article URL: https://github.com/allenv0/SCM Comments URL: https://news.ycombinator.com/item?id=49952111 Points: 151 # Comments: 67

rss:13dc0c1fe24204fdUseful?👍👎
81%releasereleases-llama-cpp

llama.cpp b11405

github-actions[bot]

First-party 81%Usable today 79%Measured result 63%
Abstract

cuda: tile the lightning indexer over keys and tokens for 4 heads ( #29901 ) cuda: tile the lightning indexer over keys and tokens for 4 heads With too few heads for a wmma tile, a block scores 64 keys against 8 tokens: the keys are staged once in half precision, the queries one head at a time, and each thread owns one key for two tokens, so no dot product needs a cross thread reduction. Batches smaller than a token tile keep the vector kernel. test-backend-ops measures 4 heads. cuda: multiply the lightning indexer tile in float Address review from am17an: the half2 products overflow once a single q * k exceeds the f16 range. The queries stay in float in shared memory and each half2 of keys is widened once for both tokens, so every product and sum is computed in float. cuda: widen each lightning indexer key once for all heads The tile kernel stages the queries and weights of every head at once, so each key element is widened from half once and feeds all heads, with a single barrier. F16 keys are copied into the tile without a float round trip. Keeping the keys in float in shared memory measures slower, the occupancy drops. cuda: stop the lightning indexer tile from spilling registers on ROCm Each thread of the tile kernel now scores two keys for a single token, so a warp shares its token and the query reads are broadcasts: six shared reads per element pair instead of nine for the same products. The inner loop is unrolled by 8, which keeps gfx908 at 63 VGPRs with no spill where the fully unrolled loop needed over a thousand, and makes the kernel 36x faster on an R9700 and slightly faster on CUDA. Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/52734616 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

rss:0644609a8e1dcdd1Useful?👍👎
81%releasereleases-llama-cpp

llama.cpp b11400

github-actions[bot]

First-party 81%Usable today 80%
Abstract

llama: support both embd + raw tokens in batch ( #29622 ) llama: support both embd + raw tokens in batch add to test-llama-archs also check case llm_arch_supports_mixed_batch = false constant graph topology have dedicated input for mixed case rm set_tensor_backend is_embd --> type consolidate m-rope pos handling into one place nits Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/52666476 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

rss:5486870fb9876e94Useful?👍👎
80%measurementhn

Run Qwen 3.8 Flash Next (125B) on consumer hardware (RTX 4090) at 100T/s

snehesht

Measured result 80%Usable today 43%
Abstract

Article URL: https://github.com/Niko1221/Strata Comments URL: https://news.ycombinator.com/item?id=49953495 Points: 763 # Comments: 341

rss:23258b0092bfdd2aUseful?👍👎
Near misses (10): just under your maybe bar, useful for tuning thresholds
Filtered by your exclusions (91)