Flagship models are not always better A developer building a realtime note-taking app found that Apple's on-device Foundation Models failed to process a 27-minute conversation, while a smaller Qwen model succeeded using a hierarchical map-reduce technique. The benchmark reveals that flagship models are not always better for long-context tasks. Frontier Models Suck Sometimes A Benchmark Written on Jul 8, 2026 • 18 minute read • Share on 𝕏 https://x.com/intent/tweet?url=I%20just%20read%20this%20insightful%20blog%20post%20by%20%40tejask%20at%20https%3A%2F%2Ftej.as%2Fblog%2Fnote-app-ai-benchmark-apple-intelligence-sucks I’ve been building a small realtime note taking app. It’s like one button: you tap it, you talk on your iPhone or from your wrist on the Apple Watch, and it hands your rambling thought back to you as text plus like a summary, some action items you buried, and some questions you left dangling. On-device speech-to-text, then “AI analysis,” then explore. The word carrying the entire app on its back in that sentence is AI . The “AI” that was counting words I decided to start small: the first version’s “AI” was just a heuristic, algorithm-based solution not generative . It counted words. The “topics” it proudly surfaced were, literally, just the most frequent tokens in your transcript. So it would inform you, with total confidence, that today’s themes were “know” and “it’s” . I looked at it and was like bruh this isn’t AI, it’s Array.prototype.sort .At this point I was like okay, maybe I don’t need regex for this but like a real language model. But it had to be on-device and private. It also needed to process loooooooooong conversations, like 2-hour podcast episodes and things. How can we process that when language models often come with smaller context windows https://en.wikipedia.org/wiki/Context window ? Hierarchical map-reduce A language model can only look at so much text at once: a budget called its context window . Apple’s on-device model tops out around 4,000 tokens where a token is roughly 1 english word . Even a small Qwen model that could fit on an iPhone I downloaded it isn’t much roomier: a 27-minute ramble is many times that. So you run straight into a genuinely strange question: how do you summarize something that doesn’t even fit inside the reader’s head? Picture summarizing a fat book when you can only hold a few pages in your mind at a time. You wouldn’t try to swallow it whole, you’d read one chunk, jot the key points on an index card, and move on. Chunk, card. Chunk, card. Do that for the whole book and you’ve quietly turned one impossible task into a stack of very possible ones. In other words, Map : slice the transcript into bite-sized pieces that do fit, and run the model on each piece on its own. Each pass pulls out just that slice’s key points, action items, and questions. It’s called “map” because you apply the same little function across every piece. This is the same concept as. array.map Reduce : now gather all those index cards into a pile and write the final answer from the cards , not from the original book. Merge the duplicates, drop the overlap, fold it all into one clean set plus a title and a summary. “Reduce” just means folding many things down into one. This is the same concept as. array.reduce Hierarchical : when there are so many chapters that even the pile of index cards won’t fit on the table, group the cards, summarize each group onto a new card, and do it again: summaries of summaries until the whole thing finally fits. Like folding a long letter in half, and in half again, until it’s pocket-sized. A short note never needs that extra fold, a genuinely multi-hour recording does, and this is what keeps the whole thing from tipping over. Apple Intelligence said no The tasteful, on-brand move for a privacy-first notes app is Apple’s Foundation Models https://developer.apple.com/documentation/foundationmodels . Real LLMs on the device without talking to the cloud that just work offline. Wow. I wired it in behind the analyzer, kept my chunked map-reduce pipeline, and fed it a real recording: a genuinely private, 27-minute conversation with my wife https://de.linkedin.com/in/lea-artemov-839107239/ about random stuff. Half an hour of half-formed thoughts about moving countries, a birthday, the price of a Tesla in Berlin, the people at last week’s meetings. The exact kind of sprawling human talk this app exists to make sense of. Apple’s model looked at it and returned: Detected content likely to be unsafe. At this point, even though there was nothing unsafe in it, I turned the safety dial all the way down to Apple’s most permissive setting permissiveContentTransformations https://developer.apple.com/documentation/foundationmodels/systemlanguagemodel/guardrails/permissivecontenttransformations and it still refused. Apple Intelligence is such garbage. I just want to transcribe a voice note on device from a regular conversation and it refuses. Absolute trash. — Tejas Kumar @TejasKumar View tweet A guardrail that fires on a private note about a birthday isn’t a guardrail but instead some bullshit that ruins people’s experience. I needed something better. So I downloaded a brain Pivot: open weights. Qwen3-4B-Instruct-2507 https://huggingface.co/unsloth/Qwen3-4B-Instruct-2507-GGUF , Apache-2.0, quantized to a 4-bit GGUF. This weighs pun intended in at ~2.3 GB and runs fully on-device through llama.rn https://github.com/mybigday/llama.rn . Same hierarchical map-reduce pipeline, but I just swapped the model using react-native-ai https://www.react-native-ai.dev/ . No cloud, no key, no guardrail. It analyzes whatever you record, because it’s yours and it never leaves. It works. Getting 2.3 GB of model to actually run on an iPhone was two good battles. Battle one: memory On the CPU it was so slow the app looked hung to the point where you start checking the debugger to see if you’ve deadlocked yourself. Move it to the GPU n gpu layers: 99 , full Metal offload and it flies, but mapping ~2.5 GB into resident memory gets you instantly jetsammed on an 8 GB iPhone. The fix is a single entitlement, com.apple.developer.kernel.increased-memory-limit https://developer.apple.com/documentation/bundleresources/entitlements/com.apple.developer.kernel.increased-memory-limit . This btw is Apple quietly conceding that your phone can, in fact, hold other language models in addition to its own. 🤫 Battle two: the model thought itself to death Qwen3 is a “thinking” model. Its chat template opens a