Tuesday, October 20, 2026
-
MiniMax M3.1 Flash: $0.15 in, $0.60 out per 1M tokens, 200+ tokens/s
MiniMax released M3.1 Flash on October 19, 2026 through its API, M Plan and MiniMax Code, priced at $0.15 input, $0.60 output and $0.015 cached input per 1M tokens. The company reports 73.7% on DeepSWE v1.1, 61.7 on OSWorld V2 and 29.6 on Agents' Last Exam, with everyday output above 200 tokens per second and a median above 170. Weights and a Pro version are promised for later, with no date.
Heat · Hacker News story "MiniMax M3.1 Flash" from October 19, at 328 points and 141 comments in the official HN API on October 20What people foundMiniMax says agentic tasks cost 70% less than on its previous model and online inference is nearly three times faster. All scores are vendor reported, and the post states neither parameter count nor context length, so check limits before routing long agent runs to it.Learn it15 min · 5 steps
Key ideas
- Cached input pricing
- Tokens the provider has already seen in a repeated prompt prefix are billed at a much lower rate, here one tenth of normal input.
- Tokens per second and P50
- Output speed is how fast text streams back, and P50 is the median across requests, so half of calls are at least that fast.
- Agentic benchmark
- A test such as DeepSWE or OSWorld that scores a model on multi step tasks with tools, code or a computer screen rather than single answers.
Steps
- Read the MiniMax M3.1 Flash blog post first, focusing on the pricing table and the benchmark chart.
- Note which numbers are vendor reported and which details are missing, such as context length and parameter count.
- Compare the per 1M token prices with the cheap model currently used for sub tasks in a project.
- Estimate the cost of one typical agent run by multiplying its input, cached input and output tokens by the three prices.
- Self check: if an agent run uses 2M fresh input tokens, 8M cached input tokens and 0.5M output tokens, what does it cost on M3.1 Flash?
Try it30 min · 5 steps
You need: A MiniMax API account and key, Python 3 or curl, and a small set of own coding prompts.Steps
- Create an API key on the MiniMax platform and read its quick start to find the base URL and request format.
- Send one short chat request with the model id
MiniMax-M3.1-Flashand confirm a reply comes back. - Run 10 of your own coding prompts with streaming on and record time to first token and total output tokens per second.
- Send the same long system prompt twice and compare the reported cached token counts and billed cost.
- Score the 10 answers by hand against the current default model on the same prompts.
Small angles to try
- Use it only for sub tasks such as file search or test writing inside an existing agent and compare total run cost.
- Measure how speed changes with output length, short replies versus 2,000 token answers.
- Repeat the test at a busy hour of the day to see whether the 170 tokens per second median holds.
Sources:MiniMax blog: M3.1 Flash -
Inception Mercury 3: a diffusion LLM at 1,068 tokens/s with 1M context
Inception Labs launched Mercury 3 on October 19, 2026, calling it the most capable diffusion based LLM so far, with 1,068 tokens per second on NVIDIA GPUs and a context window raised from 260K to 1M tokens. List pricing is $0.20 input and $0.70 output per 1M tokens, half that during launch, and the OpenAI compatible API is available on Inception, OpenRouter, Baseten and Vercel. Inception says it beats GPT-6 Luna and Claude Haiku 5.5 across a range of benchmarks but does not name the suites.
Heat · Hacker News story "Mercury 3: Diffusion at scale" from October 19: 211 points and 82 comments in the official HN API at writing timeWhat people foundOn 50 live Mind2Web browser tasks in Inception's own harness, Mercury 3 finished 50%, and in a search test by Octen AI its median generation time was 0.9 s with 2.2 s end to end. All figures are vendor reported, and the new accounts get 100 million free tokens, so a latency check costs nothing.Learn it15 min · 5 steps
Key ideas
- Diffusion language model
- Instead of writing one token at a time, the model starts from a rough draft of many tokens and refines them in parallel over several steps.
- Autoregressive decoding
- The usual LLM method of predicting each next token from all previous ones, which makes speed depend on output length.
- OpenAI compatible API
- An endpoint that accepts the same request format as OpenAI chat completions, so existing clients work by changing the base URL and key.
Steps
- Read the Inception blog post on Mercury 3 first, noting the speed, context and pricing claims.
- Read a short explainer on diffusion versus autoregressive text generation to see why parallel refinement can be faster.
- Read the Inception get started docs to see the base URL and how a request is shaped.
- List which claims are measured by Inception itself and which benchmark suites are not named.
- Self check: why would a diffusion model help a voice agent more than a batch summarization job?
Try it30 min · 5 steps
You need: An Inception API key, Python 3 with theopenaipackage, and 10 to 20 own prompts. New accounts include 100 million free tokens.Steps
- Create a key on the Inception API platform and export it as
INCEPTION_API_KEY. - Point the OpenAI Python client at
https://api.inceptionlabs.ai/v1and look up the current Mercury 3 model id in the Inception docs model list. - Send 10 prompts with streaming on and log time to first token, total time and output tokens per second.
- Run the same prompts against the fast model already in use and put both sets of timings in one table.
- Read the answers side by side and mark which ones are wrong or weaker.
Small angles to try
- Try a long context prompt of several hundred thousand tokens to test the 1M window.
- Compare low and high
reasoning_effortsettings for speed and quality. - Call the same model through OpenRouter and compare latency with the direct API.
-
qwen3-4b-deslop: a 2.5 GB Qwen3-4B with AI writing tics trained out
A Show HN on October 19 shared qwen3-4b-deslop v4, a rank 16 LoRA on Qwen3-4B-Instruct-2507 trained on 161 filtered teacher answers, plus a 175 byte edit to four MLP neurons. On 40 held out prompts its slop score fell from 121 to 12.5 per 1,000 words and em dashes from 20.5 to 0, while it still answered 30 of 30 factual questions. The quantized build is 2.5 GB and runs locally through Ollama.
Heat · Show HN on October 19: 148 points and 109 comments on Hacker News search, 144 points and 105 comments in the official HN API at writing timeWhat people foundThe author shows that a small LoRA trained for one to three hours on an M2 MacBook Air, plus a tiny neuron edit, removes style tics that prompts struggle to remove, and it is measurable before and after. The post does not state a license, so check before shipping it.Learn it15 min · 5 steps
Key ideas
- LoRA
- A fine tuning method that trains small low rank weight updates next to a frozen model, so the adapter is tiny, here 126 MB.
- Distillation from a teacher
- A stronger model writes example answers, the best are kept by filters, and the small model is trained to imitate them.
- Neuron edit
- Directly changing the weights of a few specific neurons that were found to drive a behavior, instead of retraining.
Steps
- Read the author's write up on 100toolkit first, start to finish.
- Write down the pipeline in four steps: prompts, teacher answers, filters, LoRA, then the neuron edit.
- Look at how the slop score and em dash rate are defined and why a factual quiz is included.
- Skim the Hacker News thread for critiques of the metric.
- Self check: why does the author test 30 factual questions after removing style tics?
Try it30 min · 5 steps
You need: A laptop with Ollama installed and about 3 GB free disk. No API key needed.Steps
- Install Ollama from its official site if it is not already present.
- Run
ollama run hf.co/erikkannike/qwen3-4b-deslop-v4-GGUF:Q4_K_Mto download and start the model. - Pull the plain Qwen3-4B-Instruct-2507 model in a similar quantization for comparison.
- Ask both models the same five writing prompts, such as a product announcement and a short essay.
- Count em dashes and stock phrases per answer and note any factual mistakes.
Small angles to try
- Ask both models ten factual questions from your own field to check knowledge loss.
- Use it to rewrite AI written text from another model and judge the result.
- Compare speed and memory use against the base model on the same machine.
Sources:Author's write up -
HexaShell: a coding agent writes its own robot tools, sets RoboDojo record
HexaShell is a thin harness that only turns an agent's commands into robot motion, letting Codex with GPT-6-Astra at medium effort drive a two arm robot from a command line with three calibrated RGB cameras. After each failure the agent reads the log and writes or fixes small programs it calls tools, mostly camera triangulation, which are frozen and then tested on new layouts. Across all 42 RoboDojo tasks it reaches 39.7% success and a 48.0 progress score, which the authors call a new state of the art.
Heat · 287 upvotes on Hugging Face Daily Papers for October 19, second paper of the day; arXiv v1 posted October 16What people foundSuccess splits sharply by task type: 92.5% on pushing, 65.0% on memory tasks and 8.3% on tight insertion. The authors argue the limit is physical contact, not reasoning: the agent usually sees why it failed but cannot make the motion work.Learn it15 min · 5 steps
Key ideas
- Agent harness
- The thin layer of code that connects a model to an environment, here mapping shell commands to robot actions.
- Tool evolution
- The agent writes small programs, tests them, repairs them after failures, and keeps the ones that work as reusable code.
- Triangulation
- Finding a 3D point by intersecting camera rays from two or more calibrated views, or one ray with a known plane like a table.
Steps
- Read the arXiv abstract and the method section of the HexaShell paper first.
- Open the HexaShell GitHub repo and read the tool contract file
interface/EpisodeAPI.md. - Open one task folder under
tasks/and read a frozentool.pyto see how a triangulation tool is written. - Compare the per category results and note where contact heavy tasks fail.
- Self check: why were tools built on 10 layouts and then tested on 10 new ones?
Try it30 min · 5 steps
You need: A computer with git and Python 3. No API key needed. Running tools on a robot requires RoboDojo in Isaac Sim, which is out of scope here.Steps
- Clone the HexaShell repository from GitHub.
- Read
interface/EpisodeAPI.mdand list the calls a tool is allowed to make. - Pick two tasks, one pushing and one tight insertion, and read their
enabled_tools.txtand tool code. - Open the results folder and compare success for those two tasks.
- Write a short note on what extra sensing or control an insertion tool would need.
Small angles to try
- Count how many of the 227 tools are enabled per task and see which tasks needed the most.
- Write a small fake
apiobject from the contract and unit test one triangulation tool on synthetic points. - Apply the same loop, read the log, patch a tool, freeze it, to a coding agent in a software project.
-
Half of Japan now searches with AI, and chatbots pick the credit card
A GEO Lab survey by CyberAgent, reported by ITmedia and Sankei on October 19, puts generative AI search use in Japan at 52.3% in August 2026, up from 21.3% in May 2025, while classic search fell from 91.9% to 86.9%. In a separate test, Branding Works asked ChatGPT and Gemini through their APIs with web search on which credit card to pick, three times a day over nine days, for 54 answers. Rakuten Card appeared in 63.0% of answers, but ChatGPT named no brand in about 74% of its answers, while Gemini named Rakuten Card every time.
Heat · ChatGPT is #3, Google Gemini #4 and Claude #14 on the Japan App Store top free chart, Apple feed updated October 19; ITmedia NEWS feature on October 19What people foundThe sources the AI answers cited were mostly comparison sites, my-best.com at 13.0% and kabutan.jp at 11.6%. Branding Works sells AI search optimization services, so the study is partly promotional and the sample is only 54 answers, but its method, same prompt through the API with search on and repeated over days, is easy to copy.Learn it15 min · 5 steps
Key ideas
- GEO
- Generative engine optimization, making content easy for AI assistants to find, cite and recommend, the AI era version of SEO.
- Mention rate
- The share of AI answers that name a given brand, measured over many repeated runs of the same prompt.
- Citation source
- The web page an AI answer links to as evidence, which often decides which brands appear.
Steps
- Read the ITmedia NEWS article first, with a translator if needed, for the adoption numbers.
- Read the Branding Works PR TIMES release and write down its exact method: models, prompt, search setting, days and runs.
- Note why ChatGPT and Gemini behaved so differently on the same question.
- List what makes the study weak: vendor bias, small sample, one prompt.
- Self check: if a product never appears in AI answers, which pages would you check first, based on the citation data?
Try it30 min · 5 steps
You need: Python 3 and API keys for at least one model with web search, such as OpenAI or Google Gemini. Use your own product category.Steps
- Write one neutral prompt asking for a recommendation in a product category you work in.
- Send it through the API with web search enabled three times, saving the full answer and cited URLs.
- Repeat the same runs with a second model.
- Count which brands are named and which domains are cited, as shares of all answers.
- Schedule the same script daily for a week and see how stable the mentions are.
Small angles to try
- Ask the same question in Japanese and in English and compare the brands named.
- Turn web search off and see how much the answers change.
- Check whether your own product pages appear among the cited domains.
-
BizBench: top agents pass about 64% of real payments company workflows
BizBench turns a leading payments company's real procedures into an executable environment with 789 knowledge documents, 601 discoverable business tools and 50 multi turn tasks that include resource limits, time dependencies, prior commitments and conflicting or outdated guidance. Deterministic checks score both whether the goal was reached and whether the execution was valid, without forcing one solution path. Claude Opus 5 reaches 64.0% strict success and GPT-6 Sol 61.3%.
Heat · About 170 upvotes on Hugging Face Daily Papers for 2026-10-19, third most upvoted paper that day per the Hugging Face APIWhat people foundScoring only outcomes hides bad execution: Qwen3.8-27B reaches the goal 42.0% of the time but passes strict checks only 32.7% of the time, and DeepSeek-V4.1-Flash averages 191.3 tool calls per run, about 70% more than the reference executions.Learn it15 min · 5 steps
Key ideas
- Strict success
- A task counts only if the goal is reached and every step along the way followed the rules, not just the final state.
- Execution validity
- Checks on the path an agent took, such as honoring limits and earlier commitments, scored separately from the outcome.
- Tool discovery
- The agent has to find the right tool among hundreds instead of receiving a short curated list.
Steps
- Read the arXiv abstract for 2610.20424 to get the setup and the headline numbers.
- Open the BizAgentBench README on GitHub and note what is included: tasks, knowledge documents, a simulated database, tools and scoring rules.
- Compare goal attainment against strict success for Qwen3.8-27B and write down why the gap matters.
- Look at the tool call count for DeepSeek-V4.1-Flash against the reference runs and think about cost.
- Self check: why can an agent reach the right final state and still fail BizBench?
Try it30 min · 6 steps
You need: Python 3.12, the BizAgentBench repo, two OpenAI compatible Chat Completions endpoints with streaming and native tool calling, one for the agent and one for the simulated user, and their API keys; a local server works with a placeholder keySteps
- Clone the BizAgentBench repo, then run
python3.12 -m venv .venvand. .venv/bin/activate. - Install dependencies with
python -m pip install -r requirements.txtand copy the config withcp configs/model.example.json configs/model.json. - Edit the
agentandusersections ofconfigs/model.json, then exportAGENT_API_KEYandUSER_API_KEYin your shell. - Check the install without model calls:
python -m unittest discover -s tests -v. - Run one task as a smoke test:
python tools/evaluate.py --config configs/model.json --output runs/smoke --numbers 1 --workers 1. - Read the output in
runs/smokeand compare the outcome score, the strict score and the number of tool calls.
Small angles to try
- Run the same task with two models and compare tool call counts, not just pass or fail.
- Run a few tasks with a small local model behind an OpenAI compatible server to see where strict checks fail.
- Add
--resumeto an interrupted run to continue in the same output directory.
-
Ask HN: how do engineers ship AI written code they don't understand?
An Ask HN thread started from a Meta engineer's LinkedIn post saying AI written code now "feels like a black box" in systems they understand only at a high level. Hundreds of replies converged on owning the design and interfaces, reviewing plans and behavior rather than every line, and verifying with tests and staged rollouts. Several also blamed organizations that push shipping volume over review and accountability.
Heat · 162 points and 273 comments on Hacker News, per the HN Algolia search API on 2026-10-20What people foundCommenter bitwizeshift: "I don't let the LLM design the code at all", only implementation of a design the human wrote. Commenter Silhouette pushes back on leaning on generated tests, saying a good test suite is among the areas where "current LLMs perform worst".Learn it15 min · 4 steps
Key ideas
- Design first delegation
- A human sets architecture, abstractions and interfaces, and the model only fills in the implementation.
- Plan review
- Reviewing the agent's written plan and the resulting behavior instead of reading every generated line.
- Staged rollout
- Releasing a change to a small slice of traffic first so problems show up before everyone is affected.
Steps
- Read the top of the Ask HN thread and the first reply chain from bitwizeshift.
- Read the Silhouette replies on why generated tests can add churn without covering important behavior.
- List the three or four practices that repeat most often across replies.
- Self check: which part of a change should a human always own, and why are AI written tests a weak safety net on their own?
Try it30 min · 5 steps
You need: Your own repo, any coding agent or chat model you already use, and a test runner for your languageSteps
- Pick a small feature in your own repo and write a short design note: interfaces, data shapes and edge cases.
- Ask your coding agent to implement exactly that design and to write a plan before editing files.
- Review the plan against your note and reject any change to the interfaces you defined.
- Write two or three behavior tests yourself for the edge cases, then run the suite.
- Compare the agent's own tests with yours and note which important cases it missed.
Small angles to try
- Repeat without a design note and compare how much of the result you can explain afterward.
- Deliberately break the implementation and see whether the agent written tests catch it.
- Time yourself reviewing the plan versus reviewing the full diff.
Sources:Ask HN thread -
Agentic Monitoring: let agents write monitor specs and code run them
In an October 19 post, Ben Congdon argues agents are well suited to production monitoring, using change point monitoring around binary releases and config pushes as his main case. He finds a pure agent loop works worse than a harness where the agent writes a monitoring spec and a deterministic system runs it, giving cleaner signals with far fewer tokens. He estimates a moderately large tech company could watch its whole fleet for "on the order of $100/day".
Heat · 99 points and 16 comments on Hacker News, per the HN Algolia search API on 2026-10-20What people foundBen Congdon's view: agents should write per change queries and monitoring specs, but plain code should execute them. He closes with "It will soon be reckless not to have agents monitoring your systems."Learn it15 min · 4 steps
Key ideas
- Change point monitoring
- Watching metrics and logs right after a release or config push, when regressions are most likely.
- Monitoring spec
- A written description of which queries to run, what to compare and what counts as an alert.
- Deterministic harness
- Ordinary code that runs the spec the same way every time, so the model is not in the loop for each check.
Steps
- Read Ben Congdon's Agentic Monitoring post from start to end.
- Note why he says change points are where regressions concentrate.
- Write down the difference between a pure agent loop and the spec plus harness design, and where tokens are spent in each.
- Self check: in the spec plus harness design, which part does the model do and which part runs without it?
Try it30 min · 5 steps
You need: Python 3 and a metrics or log export from a system you own; any chat model to draft the spec, or no API key needed if you write the spec by handSteps
- Export an hour of a metric such as error rate or latency from your own service around a recent deploy.
- Ask a chat model to write a small JSON spec for that deploy: which metric, the before and after windows, and an alert threshold.
- Write a short Python script that reads the spec and the data and prints whether the threshold was crossed.
- Run it on a deploy that went fine and on one that caused trouble, and compare the results.
- Note how many model calls the whole check needed compared with having the model read the raw data each time.
Small angles to try
- Have the model write specs for a config push instead of a binary release.
- Let the model see raw data directly and compare the noise against the spec plus script version.
- Add a log pattern count to the spec next to the metric check.
Sources:Ben Congdon: Agentic Monitoring -
Chat assistants move into office decks: ChatGPT Slides co-edits and exports
OpenAI added Slides to ChatGPT, which builds presentations from a chat, uploaded files, an outline or a template, and can match the style of an existing deck. Teammates can edit the same deck in real time with view, comment or edit permissions, and tag ChatGPT in comments to revise text or charts. Decks can be presented inside ChatGPT or exported to PowerPoint, PDF or Google Slides, on the Pro, Business and Enterprise plans; Impress Watch lists Pro from 16,800 yen.
Heat · Covered by Impress Watch on 2026-10-19; ChatGPT ranked third on Japan's and fourth on the US App Store top free charts in Apple's feeds updated late on 2026-10-19What people foundCharts become editable objects and speaker notes are generated with the deck, and the desktop app can hand a deck to PowerPoint or Keynote for further editing. Cheaper plans do not get it yet.Learn it15 min · 4 steps
Key ideas
- Style matching
- Giving ChatGPT an example deck so new slides follow its layout and look.
- Comment tagging
- Mentioning ChatGPT in a slide comment to have it apply the requested change.
- Round trip export
- Moving a deck to PowerPoint or Google Slides and continuing to edit it there.
Steps
- Read OpenAI's ChatGPT Slides feature page.
- Read the Impress Watch article for plan and price details.
- List which edits you would do by hand and which you would hand to ChatGPT through comments.
- Self check: which plans include Slides, and which export formats are available?
Try it30 min · 5 steps
You need: A ChatGPT Pro, Business or Enterprise account and a document of your own; no extra setupSteps
- Open Slides at chatgpt.com/space?view=slides and pick an outline, a file of your own or a template as the starting point.
- Upload an existing deck of yours and ask for a new deck in the same style.
- Edit one chart by hand, then tag ChatGPT in a comment to reword one slide.
- Share the deck with a teammate with comment only access and check what they can change.
- Export to PowerPoint and check whether charts and notes remain editable.
Small angles to try
- Build the same deck from a chat versus from a plain outline and compare structure.
- Export to Google Slides instead and compare formatting.
- Ask for speaker notes for every slide and check them against your source document.
-
Inside Cairn: AI agent attack platform tied to breaches of 100 plus sites
Security firm NorForge found more than 20 exposed panels of Cairn, a system where an operator sets a target and a goal and agents post discovered facts to a shared blackboard, that were likely used for attacks. The most active cluster, AIA0001, is Chinese language, ran 14 panels and over 1,100 attack projects against e-commerce and payment sites, sought unauthenticated remote code execution, and used workers named after DeepSeek V4.1 Flash. The Verge, citing NorForge, reported more than 100 websites breached, and Reuters named John Deere, SharkNinja and Cummins, with John Deere saying there is "no indication that sensitive information was accessed".
Heat · 59 points and 3 comments on Hacker News for The Verge story, plus coverage by Slashdot and Quartz on 2026-10-19What people foundNorForge estimates about $5 per task and roughly 10% success, and successful AIA0001 projects took a little under 23 hours. The entry points were classic web bugs: login SQL injection, unauthenticated endpoints, insecure uploads and unsafe deserialization.Learn it15 min · 4 steps
Key ideas
- Blackboard architecture
- Agents write findings to a shared board that other agents and human operators read to plan next steps.
- Unsafe deserialization
- Turning untrusted data back into program objects in a way that can run attacker controlled code.
- Exposed control panel
- An admin dashboard reachable from the internet that leaks targets, results and secrets to anyone who finds it.
Steps
- Read NorForge's Inside Cairn post, focusing on the architecture and the AIA0001 section.
- Read the Slashdot summary to separate what NorForge found from what Reuters reported about victims.
- List the entry points NorForge describes and match each to a bug class you know.
- Self check: why do cheap, patient agents make old web bugs more urgent rather than creating new ones?
Try it30 min · 5 steps
You need: Your own web app code and infrastructure inventory; no API key neededSteps
- List every internet reachable admin panel, dashboard and agent console your team runs, including red team or testing tools.
- For each one, confirm it sits behind authentication or a private network, and move any that do not.
- Search your own code for file upload handlers and check type validation, storage location and that uploaded files cannot execute.
- Search your own code for deserialization of request or session data and note any that accept untrusted input.
- Check that login queries use parameterized statements, and rotate any credential that was ever stored on an exposed panel.
Small angles to try
- Run the same checklist against a staging copy in a local container.
- Review error handling so stack traces and internal hosts never reach users.
- Estimate how long your patch cycle is compared with the roughly 23 hours a successful agent project took.
-
Game console homebrew turns a PS5 into a local LLM server
PS5LM Plus is an unofficial homebrew app, forked from PS5LM, that runs llama.cpp with its Vulkan backend on the PS5 GPU and serves models to other devices on the local network. It exposes OpenAI Chat Completions, Responses and Anthropic Messages endpoints, and the developer reports opencode, Codex and Claude Code each editing a Python file through it. The developer's own figures are about 20.7 tokens per second of generation for Qwen3.8-27B at a 2 bit quantization and about 124 tokens per second for Llama 3.2 3B.
Heat · GitHub repo at 373 stars and 46 forks on Oct 20; Gigazine feature on Oct 19What people foundThe developer reports prompt processing of only 35 to 50 tokens per second on the 27B model, so a coding agent prompt of around 20,000 tokens can take several minutes before the first output token. That is why the developer recommends small models such as Gemma 4 E4B for coding tools: agents resend tool descriptions and instructions every turn, so prefill speed, not generation speed, sets the wait.Learn it15 min · 5 steps
Key ideas
- Prompt processing, or prefill
- The phase where the model reads the whole input before producing anything, and its speed decides how long a long prompt waits before the first token.
- Token generation, or decode
- The phase where the model produces output one token at a time, usually limited by memory bandwidth rather than raw compute.
- Quantization
- Storing model weights with fewer bits so a large model fits in limited memory, at some cost in quality.
Steps
- Read the Gigazine article from Oct 19 first for the plain overview and the developer's reported speeds.
- Open the PS5LM Plus README and study its table of models, quantizations, context sizes and generation speeds, ignoring the console setup steps.
- Read the llama-bench README in the llama.cpp repo to learn what the pp512 and tg128 columns measure.
- Compute by hand how long a 20,000 token prompt takes at 40 tokens per second of prefill, then compare that with generating a 500 token reply at 20 tokens per second.
- Self check: why does a coding agent feel slow on hardware with decent generation speed but weak prefill speed?
Try it30 min · 5 steps
You need: An ordinary computer you own, ideally with a GPU but CPU works; llama.cpp installed from its official install script or release binaries; a small GGUF model; No API key needed. No console is involved.Steps
- Install llama.cpp on your own computer using one of the install options in the official llama.cpp README.
- Start a local OpenAI compatible server with
llama serve -hf ggml-org/Qwen3.5-0.8B-GGUFand note the address and port it prints at startup. - Run llama-bench on the same model file with
-p 512 -n 128, then again with-p 4096, and write down the prompt processing and generation speeds in tokens per second. - Send the server one short chat request and one request padded with a few thousand tokens of tool descriptions, and time how long each takes until the first token appears.
- Divide your typical agent prompt size by your measured prefill speed to estimate the wait a coding agent would see before every reply.
Small angles to try
- Repeat the benchmark with a larger model or a lower bit quantization and see whether prefill or generation drops more.
- Use the
-doption of llama-bench to prefill the KV cache to a deeper context and watch how speed falls as context grows. - Point a coding agent you already use at the local server and compare its first token delay with your estimate.
-
Laminar launches flow-1, a small RL trained model for agent trace errors
Laminar, a YC S24 company with an Apache 2.0, self hostable observability platform for AI agents, launched on HN with flow-1, a small open source base model finetuned and then trained with RL to find failures in agent traces. It runs inside Laminar's Signals harness, which treats a trace like a repo with each span as a file to search and read, and returns findings as JSON in a schema the user defines. On Laminar's own 523 trace benchmark flow-1 scored 0.835 detection F1 at about $0.0011 per trace, versus 0.816 for GPT-6-sol at $0.026 and 0.890 for Claude Opus 5 at $0.149.
Heat · Launch HN, 53 points and 23 comments at an Oct 20 check; lmnr repo at 3.2k starsWhat people foundThe founders pitch flow-1 as matching GPT-6-sol on detection at about 23 times lower cost, but the benchmark is company run, Claude Opus 5 still scores higher, and the flow-1 post does not say whether the weights are open; flow-1 is reached through Laminar Signals. The tracer itself is open source and self hostable with Docker Compose.Learn it15 min · 4 steps
Key ideas
- Agent trace
- A recorded tree of spans for one agent run, holding each LLM call, tool call, input and output.
- Silent failure
- A step that technically succeeds, such as a tool call that returns, but gives a wrong or useless result the agent then trusts.
- Detection F1
- A single score that balances how many real failures a detector finds against how many of its flags are false alarms.
Steps
- Read the flow-1 blog post on laminar.sh first, focusing on the benchmark table and how Signals reads a trace.
- Read the Launch HN thread to see what practitioners asked, such as how bad tool results differ from agent misreadings.
- Skim the lmnr README for how traces are captured with the
observedecorator in Python or theobservewrapper in TypeScript. - Self check: why can a model that is slightly worse on F1 still be the better choice for scanning every production trace?
Try it30 min · 5 steps
You need: Docker and Docker Compose on your own machine; Python with pip or Node with npm; an LLM API key or a local model for the agent you trace; a Laminar project API key created in your instance. flow-1 analysis runs through Laminar Signals and is billed per token.Steps
- Self host Laminar:
git clone https://github.com/lmnr-ai/lmnr, thencd lmnr, thendocker compose up -d, and open the UI athttp://localhost:5667. - Create a project in the UI and copy its project API key.
- Install the Python SDK with
pip install --upgrade 'lmnr[all]', callLaminar.initializewith your key, and point the SDK base URL and ports at your self hosted instance as the README describes. - Add
@observe()to a small agent function that calls a tool, run it a few times, and include one run where the tool returns stale or wrong data on purpose. - Open the traces in the UI and check whether you can spot the planted failure by reading spans, and note how long it took.
Small angles to try
- Write a JSON schema for the failure you planted and ask a model you already pay for to scan the exported trace, then compare with your manual reading.
- Plant a missing step instead of a wrong one and see whether a trace based check can notice something that never ran.
- Use the TypeScript SDK with
npm add @lmnr-ai/lmnrand theobservewrapper instead of Python.
-
GitHub Copilot retires six models and opens a model policy API
On Oct 19 GitHub deprecated six models across Copilot Chat, inline edits, ask and agent modes and code completions: Gemini 3.7 Flash, GPT-5.5, GPT-5.4, GPT-5.4 mini, GPT-5 mini and Grok 4.5. Suggested replacements are Gemini 3.8 Flash, GPT-6.1 Sol for GPT-5.5 and GPT-5.4, GPT-6 Luna for the two mini models, and Grok 4.7. The same day GitHub made GET and PATCH REST endpoints for Copilot model policies generally available at enterprise, enterprise team, enterprise app and organization level.
Heat · Two GitHub changelog entries dated Oct 19; no popularity metric shown, but every Copilot user on those models is affectedWhat people foundGitHub says Copilot Enterprise admins may need to enable access to the replacement models in their policies, while nothing needs doing to remove the old ones. With the new endpoints, such asPATCH /orgs/{org}/copilot/model-policies, that switch can live in scripts instead of clicks.Learn it15 min · 5 steps
Key ideas
- Model deprecation
- The vendor stops serving a model, so anything that names it must move to a supported one.
- Model policy
- An enterprise or organization setting that decides which Copilot models members are allowed to pick.
- Policy delegation
- An enterprise can hand model control down to organizations, or to teams and apps, so each level manages its own list.
Steps
- Read the deprecation changelog entry first and match each retired model to its replacement.
- Read the model policy API changelog entry and note the four endpoint paths.
- Open the GitHub REST docs page on AI controls linked from that entry to see the request and response shapes.
- List every place your team names a Copilot model, such as editor settings, scripts or agent configs.
- Self check: after a deprecation, what must an enterprise admin do that the vendor will not do automatically?
Try it30 min · 5 steps
You need: A GitHub organization you administer with Copilot Business or Enterprise; the gh CLI or curl with a token that has the needed admin scope; No API key beyond your own GitHub token.Steps
- Authenticate the gh CLI as an admin of your own organization.
- Call
GET /orgs/{org}/copilot/model-policiesfor your organization withgh apiand save the JSON to a file. - Check in that output whether GPT-6.1 Sol, GPT-6 Luna, Gemini 3.8 Flash and Grok 4.7 are enabled.
- Using the request body shape from the REST docs, send a PATCH to the same path that enables one replacement model, then GET again to confirm the change.
- Open the Copilot Chat model selector in VS Code or on github.com and confirm the model now appears.
Small angles to try
- Commit the saved policy JSON to a repo and diff it after each change to keep model access as code.
- Try the enterprise teams path to see how delegation to a single team works.
- Search your repos and editor configs for the retired model names and list what needs updating.
-
AI suspicion hits a Japanese city's children's poster prize
Kitakata in Fukushima ran a children's soy sauce poster contest tied to a national soy sauce summit, received 148 entries and picked 10 winners on Sep 30. From around Oct 14, social media posts claimed some winning works looked made with generative AI, and some posts attacked the young entrants by name. On Oct 16 the city removed the winners page to protect the children's safety and privacy, saying the rules set no definition or limit on generative AI and that it judged the works as the children's own drawings.
Heat · Spread on Threads and X; covered by J-CAST News on Oct 16 and Sirabee on Oct 20; the city took down its winners page after the postsWhat people foundThe organizers told Sirabee only that they will consider how to handle generative AI in future entry rules and judging, as needed and with other contests as reference, with no specific rule announced. The episode shows that guessing AI use from style alone cannot settle a dispute, and that a contest needs written AI rules and some record of how a work was made before it closes.Learn it15 min · 4 steps
Key ideas
- Style based AI detection
- Judging a work as AI made from how it looks, which is unreliable and cannot be proven either way.
- Content provenance
- A record attached to a file that says how and with which tools it was made, such as C2PA Content Credentials.
- Eligibility rules
- The written conditions a contest sets in advance, which decide disputes far better than after the fact judgment.
Steps
- Read the J-CAST News report from Oct 16 first for the timeline and the city's statement.
- Read the Sirabee article from Oct 20 for the organizers' later comments on future rules.
- Read an introduction to C2PA Content Credentials to see what a provenance record can and cannot prove.
- Self check: what could the organizers have written into the rules beforehand that would have made this dispute answerable?
Try it30 min · 5 steps
You need: Your own computer and images you made yourself; any image editor; No API key needed. Use only your own images, never the contest works or anyone else's.Steps
- Collect three images you own: one hand drawn and scanned, one edited, and one you generated yourself with an AI tool.
- Show them to a few colleagues without labels and record how many guess the origin of each correctly.
- Inspect the metadata of each file with an image viewer or metadata tool and note what, if anything, reveals how it was made.
- Draft three sentences of contest rules that state what AI use is allowed and what process evidence, such as sketches, entrants must keep.
- Compare your rules against your guessing results and note which disputes they would settle.
Small angles to try
- Strip metadata from the files and see what evidence is left.
- Rewrite your rules for an internal hackathon or design contest instead of an art prize.
-
KiviDB: a Rust Redis compatible store with built in vector search
KiviDB is an in memory database written in Rust that speaks the Redis protocol and adds Redis Stack style FT commands for full text, tag, numeric and HNSW or FLAT vector search, plus an FT.HYBRID command. Benchmarks run by the project on AWS Graviton3 bare metal show 21.2M GET ops per second with pipeline 16, against 9.1M for Dragonfly 2.0.2 and 2.4M for Redis 8.10. The same tables show Dragonfly faster without pipelining and Redis using less memory after vector ingest, 1.07 GB against 1.66 GB for KiviDB.
Heat · Show HN, 67 points and 40 comments at the Oct 19 check; GitHub repo at 3 starsWhat people foundThe license is AGPL-3.0, all numbers are vendor run, and the repo is brand new, so treat it as an experiment for a single process cache plus vector index rather than a Redis replacement. The README warns that passing your own flags drops the default--protected-mode no, so set a password or add that flag yourself.Learn it15 min · 4 steps
Key ideas
- RESP compatibility
- Speaking the Redis wire protocol so existing Redis clients and redis-cli work without changes.
- HNSW index
- A graph based approximate nearest neighbor index that finds similar vectors quickly at some cost in memory.
- Pipelining
- Sending many commands without waiting for each reply, which raises throughput and can flatter benchmark numbers.
Steps
- Read the KiviDB README first, especially the quick start and the benchmark tables with their hardware notes.
- Read COMMANDS.md in the repo for the FT commands, including FT.HYBRID.
- Compare the pipelined and unpipelined GET results to see why one headline number can mislead.
- Self check: for a small RAG cache, which matters more, peak pipelined GET throughput or memory after vector ingest, and why?
Try it30 min · 5 steps
You need: Docker and redis-cli on your own machine; a small set of your own embeddings or random vectors; No API key needed.Steps
- Start the server with
docker run -p 6380:6380 kividb/kividb. - Create a vector index with
redis-cli -p 6380 FT.CREATE idx ON HASH PREFIX 1 doc: SCHEMA vec VECTOR HNSW 10 TYPE FLOAT32 DIM 128 DISTANCE_METRIC COSINE M 16 EF_CONSTRUCTION 128. - With a short script in any Redis client, write a few thousand hashes under the
doc:prefix, each with a 128 dimension FLOAT32 little endian vector in thevecfield. - Query the nearest neighbors with
FT.SEARCH idx '*=>[KNN 10 @vec $q]' PARAMS 2 q <blob> DIALECT 2and check the results against a brute force cosine search in your script. - Record the container's memory use before and after loading the vectors.
Small angles to try
- Run the same load against a Redis Stack container you start yourself and compare memory and query time.
- Try a FLAT index instead of HNSW and compare recall with the brute force results.
- Add a text field and try FT.HYBRID following COMMANDS.md.
Sources:KiviDB on GitHub -
Cloudflare Clairic: a System One extraction model on Workers AI
Cloudflare previewed Clairic on 2026-10-19, a model that fills typed fields such as text spans, numbers, dates, lists, estimates and forecasts from unstructured input in a single pass, without generating reasoning or output tokens. It runs on Workers AI as
@cf/cloudflare/clairic, is billed on input tokens only, listed at $0.10 per million, and Cloudflare says open weights will follow soon. In a damage claim pipeline, Clairic plus the Clef decision model plus GLM-5.3 took 19.3 s versus 61.7 s for GLM-5.3 at every step, at $6,032 versus $11,740 per million claims.Heat · Hacker News, 54 points and 4 comments per the HN search index on 2026-10-20; Cloudflare blog postWhat people foundThe extraction step alone fell from 16.1 s with GLM-5.3 to 0.46 s with Clairic. Cloudflare's own advice: let code do long arithmetic chains and use the returned confidence, p_null and 80% intervals to decide what to automate and what to send to human review.Learn it15 min · 5 steps
Key ideas
- System One extraction model
- A model that reads the input once and returns typed values directly, instead of writing an answer token by token like a chat LLM.
- Typed field spec
- You declare each field's name, type such as number or date, and an instruction, and the model returns one answer per field.
- p_null and confidence
- Per answer scores that say how likely the value is missing from the input and how sure the model is, used to route uncertain cases to review.
Steps
- Read the Cloudflare blog post on Clairic, focusing on the field types table and the claims pipeline benchmark.
- Open the Clairic model page in the Workers AI docs and look at the input fields state and fields and the shape of the answers output.
- Compare the split of work in the post: Clairic for typed values, Clef for fixed set decisions, an LLM only for open ended text.
- Read the limitations section on arithmetic, calibration and forecasting.
- Self check: for an invoice email, which fields would you give Clairic, which decision would you give Clef, and which step still needs an LLM?
Try it30 min · 6 steps
You need: A Cloudflare account with Workers AI enabled and an API token or a Worker with an AI binding; Node.js if you use a Worker; a few of your own sample emails or documentsSteps
- Create a Worker with a Workers AI binding named AI, following the Workers AI getting started docs.
- Call the model with your own text, e.g.
env.AI.run("@cf/cloudflare/clairic", { state: email, fields: { order_id: { type: "text", instructions: "Order number" } } }). - Add a number field with decimals and unit and a date field, then run it on 10 of your own sample documents.
- Alternatively call the REST endpoint
POST https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/cloudflare/clairicwith a Bearer token and the same JSON body. - Record latency, the usage token counts and how many answers had low confidence or high p_null, and check them against the true values.
- Run the same extraction with an LLM you already use and compare time, cost and accuracy.
Small angles to try
- Add an estimate field with min, max and step and see whether the 80% interval covers the true value
- Send a scanned receipt as an embedded image instead of text
- Leave a field's value out of the input on purpose and see if p_null rises
-
OpenAI: GPT-6 Astra passes 87.4% of tests on a 20 language SQLite build
On 2026-10-19 OpenAI published coding results for low resource languages, led by MultiLangBench, where a model must build a SQLite compatible database engine from scratch in one of 20 languages such as COBOL, Fortran, Lean, OCaml and Zig. At maximum reasoning effort GPT-6 Astra averaged an 87.4% test pass rate versus 26.8% for GPT-5.6 Sol, and 72.1% versus 10.9% on COBOL, its weakest language. In a separate COBOL migration test, GPT-6.1 Sol scored 86.6% at low reasoning effort, against 5.4% for GPT-5.6 Sol, and 97.9% at higher effort.
Heat · Little attention so far: an OpenAI news post, and several Hacker News submissions with 4 points or fewer per the HN search index on 2026-10-20What people foundThe headline 87.4% is at maximum reasoning effort; GPT-6 Luna reached 40.3% at an estimated $0.77 per sample versus $3.48 for GPT-5.6 Sol. The openai/MultiLangBench repo, Apache-2.0, scores each run as API cost plus pass rate and gives zero to any solution not written in the requested language.Learn it15 min · 4 steps
Key ideas
- MultiLangBench
- An eval where a model implements SQLite 3.40.1 from its documentation in a chosen language and is graded with tests derived from SQLite's TCL test suite.
- Low resource programming language
- A language with little public code for models to learn from, such as COBOL or Fortran, where models have historically done much worse.
- Reasoning effort
- A setting that lets the model spend more internal thinking per task, which raises scores and cost, so results must be compared at the same effort.
Steps
- Read the OpenAI post on low resource programming languages, noting which reasoning effort each number uses.
- Open the openai/MultiLangBench README and read how a test is built from initial_database, user_query and validation_query.
- Note the default 272 test subset and why the full 24k suite is expensive.
- Self check: why does a vendor score at maximum effort not tell you what your agent will reach on a legacy COBOL codebase at default settings?
Try it30 min · 5 steps
You need: Docker or another sandbox with no internet access, the openai/MultiLangBench repo, an API key for the model you test, and a budget cap since runs cost moneySteps
- Clone the openai/MultiLangBench repo and read its README and requirements file.
- Build a container, download the SQLite 3.40.1 documentation into it, and remove every SQLite library and binary, using the repo's remove_sqlite script only as a guide.
- Have your coding agent of choice write an engine in one language you care about, with internet disabled inside the container.
- Grade only the 272 tests whose names start with 00, 01 or 02, using the provided expected output files to check your runner first.
- Record pass rate and API cost together, as the benchmark defines the score.
Small angles to try
- Compare one popular language with COBOL or Fortran on the same model
- Run the same model at two reasoning effort settings and compare cost per passed test
- Swap in an open weight coding model running locally
-
Sort your prompts: up to 17% more MoE batch throughput on vLLM
A Hugging Face community post by Abdennacer Badaoui shows that ordering offline prompts so similar requests land in the same decode batch reduces how many distinct experts a mixture of experts model reads per step. On one AMD MI300X with vLLM 0.27, sorting by domain raised throughput by 11.6 to 17.3% on Qwen3-30B-A3B and 6.9 to 12.2% on gpt-oss-120b. With unlabeled UltraChat prompts clustered by embedding, gains were about 5% on Qwen and 0.8 to 3.8% on gpt-oss-120b, with no model, kernel or scheduler change.
Heat · Hugging Face community blog, 4 upvotes at capture on 2026-10-19What people foundThe recipe is embed prompts with Qwen3-Embedding-0.6B, k-means them, generate in cluster order, then restore the original order. The author limits it to decode heavy offline batch jobs on fine grained MoE models; online serving pays a queueing cost, and in bf16 reordering can change outputs, so bit exact results need batch invariant kernels.Learn it15 min · 5 steps
Key ideas
- Mixture of experts routing
- Each token is sent to a few expert sub networks, so a batch whose tokens pick the same experts needs to load fewer expert weights.
- Decode batch
- The set of sequences generating their next token together in one step, where memory reads of weights dominate the cost.
- Stable argsort by cluster
- Reordering prompts by cluster label while keeping the original order inside each cluster, so results can be mapped back afterwards.
Steps
- Read the Hugging Face post Sort your prompts, starting with the bytes read explanation.
- Compare the four throughput tables and note how gains shrink for unlabeled data and for gpt-oss-120b.
- Read the caveats section on online serving, dense models, very large batches and bf16 output drift.
- Skim the repo README for the
expert_friendly_orderfunction. - Self check: why would sorting help Qwen3-30B-A3B more than a coarse MoE such as gpt-oss-20b with 32 experts?
Try it30 min · 6 steps
You need: A Linux machine with one large GPU that vLLM supports, the author used one AMD MI300X; Python with vLLM; the Hugging Face weights for a fine grained MoE such as Qwen/Qwen3-30B-A3B-Instruct-2507; No API key neededSteps
- Clone the repo with
git clone https://github.com/Abdennacer-Badaoui/sort-your-promptsand installpip install -r requirements.txt. - Collect a few hundred of your own offline prompts and shuffle them.
- Generate once in shuffled order and time it, then reorder with
order = expert_friendly_order(prompts, n_clusters=16)and generate[prompts[i] for i in order]. - Restore the original order with
outs = [o for _, o in sorted(zip(order, outs))]and compare tokens per second. - Optionally use the repo's bench script, e.g.
./run_vllm.sh 0 qwen_b32 --max-num-seqs 32 --save-outputs. - Check how many outputs changed between runs before using it in production.
Small angles to try
- Pass known labels such as task or language to skip embedding
- Sweep max num seqs from 16 to 128 and plot the gain
- Try a dense model as a control and expect no gain
-
Skip the compressor: coding agents fix more bugs when shown whole files
Xiaocong Yang, Rishit Chatterjee, Himanshu Udupi, Vikram Ramavarapu and ChengXiang Zhai compare ways to fill a fixed token budget for a coding agent: prompt compressors, chunk retrievers, and their simple selector CQ2-CARE, which picks whole files and shows them verbatim. On 300 recent SWE-rebench issues, CQ2-CARE resolves 43.7% with GPT-5.6 and 46.7% with Claude Opus 5. That is 6.3 points above the best compressor and 9.3 to 12.7 points above the best retriever.
Heat · Low: 3 upvotes on Hugging Face Daily Papers for 2026-10-19; included for practical valueWhat people foundThe authors trace the gap to two failures: retrievers often miss the files that need editing, and compressors change code text so fewer patches apply. Whole file selection also edges out two methods trained for issue resolution, SweRank by 0.7 to 1.7 points and SWE-Pruner by 2.0 to 7.3 points.Learn it15 min · 4 steps
Key ideas
- Context budget
- The fixed number of tokens of repository code you may put in front of the agent for one issue.
- Prompt compression
- Shortening code text by dropping or rewriting tokens, which saves space but can break the exact lines a patch must match.
- SWE-rebench
- A benchmark of recent real GitHub issues where an agent must produce a patch that makes the tests pass.
Steps
- Read the arXiv abstract of 2610.21073 and its results table.
- Look at how CQ2-CARE ranks files and how it decides how many whole files fit the budget.
- Read the error analysis on retriever misses and patches that fail to apply after compression.
- Self check: in your own agent pipeline, what share of failed patches fail because the target file was never in context?
Try it30 min · 5 steps
You need: One of your own repositories with a few closed bugs whose fixes you know, a coding model via API key or a local model, and Python to assemble promptsSteps
- Pick three closed bugs in your own repo and check out the commit before each fix.
- Set one token budget, for example the same number of tokens for every run.
- Build context version A from retrieved code chunks and version B from the few most relevant whole files, chosen by file name and issue text.
- Ask the same model for a patch with each context and apply it.
- Run your tests and record which patches apply cleanly and which fix the bug.
Small angles to try
- Add a third version using a prompt compressor at the same budget
- Halve the budget and see which approach degrades first
- Log whether the edited file was in context at all
-
DHS orders US civilian agencies to remove DeepSeek and tools built on it
A Department of Homeland Security order under the Federal Acquisition Supply Chain Security Act of 2018 excludes products and services of Hangzhou DeepSeek Artificial Intelligence and its affiliates from federal civilian procurement and directs their removal from civilian agency IT. The removal also covers 'third-party products and services developed using DeepSeek implementations.' The notice was filed for public inspection on 2026-10-19 for Federal Register publication on 2026-10-20, docket DHS-2026-0628.
Heat · Hacker News, 235 points and 205 comments on the thread linking Reuters, per the HN search index on 2026-10-20; a second thread on the MadRobot analysis had 66 pointsWhat people foundThe notice lists no specific third party products and does not say how DeepSeek open weight models hosted by US companies are treated. MadRobot reports the order itself is dated 2026-07-24 and that national security systems are outside its scope; questions go to the FASCSA order team at CISA named in the notice.Learn it15 min · 4 steps
Key ideas
- FASCSA order
- An order under the 2018 supply chain law that lets an agency bar a source from federal procurement and require its removal from systems.
- Open weight model
- A model whose trained weights are published so anyone can run it on their own servers, separate from the vendor's app or API.
- Third party products developed using DeepSeek implementations
- The order's wording for other vendors' tools built on DeepSeek, whose exact reach the notice does not define.
Steps
- Read the Federal Register public inspection PDF 2026-21447, focusing on the scope and the third party wording.
- Read the MadRobot analysis for the order date and the national security systems exclusion.
- List the ways DeepSeek can enter a product: its app, its API, its weights hosted by you or a provider, or a model distilled from it.
- Self check: which of those paths does the notice's text clearly cover, and which does it leave open?
Try it30 min · 4 steps
You need: Access to your own code repositories, dependency manifests and vendor list; No API key neededSteps
- Search your own repositories for DeepSeek references, for example with
git grep -i deepseek. - Check your configuration and environment files for model names and API base URLs that point at DeepSeek models.
- List the AI providers and SaaS tools your product depends on and note which document their underlying models.
- Write a short inventory of where DeepSeek appears, if anywhere, and which entries are unclear under the order's third party wording.
Small angles to try
- Add a CI check that flags new DeepSeek model ids in configuration
- Check your model gateway logs for which model names were actually served
- Draft the question you would send a vendor about their underlying models