Today we're sharing details on Nico 2.5 — Macrodeep's first frontier model, purpose-built for go-to-market work. It's a 120B-parameter mixture-of-experts model, post-trained on 800M+ real B2B records and paired with live retrieval over our knowledge graph at inference time. It is the model that powers Salestools GTM and the agent fleet inside Grain.
Why a specialist, not a generalist
General-purpose chat models are impressive at breadth. But go-to-market work has a different character from open-ended conversation. It demands precision over creativity, citation over confidence, and the ability to reason across a living database of accounts, contacts, signals, and deals rather than a single document.
The best revenue models, we believe, will be trained almost exclusively on go-to-market artifacts — real company filings, prospect graphs, outbound sequences, reply histories, CRM writes, and the industry taxonomies that glue the rest of the stack together. That is what Nico 2.5 is trained on.
The architecture
Nico 2.5 is a 120B-parameter mixture-of-experts model. We chose MoE over a dense architecture because the efficiency wins are too large to ignore — we serve inference on a single high-end GPU while retaining the representational depth of a 100B-class dense model. Every constraint we applied to the training data flows from that design goal: produce a model sharp enough to be useful and cheap enough to be autonomous.
Three-stage post-training: CPT → SFT → DPO
Nico 2.5 is trained in three stages, each fixing a different failure mode of the base model.
- Continued pre-training (CPT). We expose the model to the structured universe of B2B — serialized company blocks, SEC filings, and industry taxonomies — so it learns the vocabulary of revenue before it ever tries to speak it.
- Supervised fine-tuning (SFT). We teach the model what good GTM output looks like: first-touch emails that get replies, reply classifications that match human reps, account briefs that cite their sources.
- Direct preference optimization (DPO). We sharpen judgment on pairs where one response led to a reply or meeting and the other didn't. The model learns which micro-choices in tone, proof-point, and call-to-action actually convert.
What Nico 2.5 trained on
A language model is what it eats. Nico's diet is GTM: structured B2B records, real outbound, public filings, and the taxonomies that glue revenue together.
Structured ingestion
Our load-bearing CPT primitive is a structured company block — a flat rendering of each record in our knowledge graph into identity, location, size, description, and classification sections. To prevent the model from memorizing a template, section order is randomized per document. The result: Nico 2.5 can ingest a CRM record in any natural order, not a fixed form.
The schema is versioned alongside our live data layer, so the training corpus stays aligned with the corpus the model retrieves from at inference time. Add a field to your CRM tomorrow, and Nico can read it without a retraining cycle.
Retrieval-native inference
Nico 2.5 is not a closed-book model. At inference time it is paired with the same retrieval layer it was trained on — the company graph, the prospect graph, and the live signal index that surfaces filings and hiring activity. The model is taught how to query, when to query, and how to cite. Every account brief and outreach draft ships with a citation trail back to the underlying source.
This is the piece that separates Nico 2.5 from prompt-engineered generalist models. A chat model stuffed with a retrieval prompt guesses. Nico 2.5 has been post-trained against the retrieval schema and reasons about its own source material.
Engineering principles
- Determinism over cleverness. Long-running ingestion jobs are reproducible end-to-end. Same input, same shards, same training mix — every run.
- Schema-as-source-of-truth. Training and serving share one schema. When the data layer evolves, the model evolves with it; we never let the serving corpus drift away from the training corpus.
- Compressed columnar shards. Every corpus lands in compressed, streamable shards — cheap to store, fast to feed a training run, and traceable per record so we can attribute any model behavior back to a single input.
- Continuous regression testing. Golden-file tests on synthetic records gate every serialization change. A regression to a field mapping fails CI before it touches the production corpus.
Efficiency as a design goal
Nico 2.5 should be competitive with models many times its size. Inference on a single H100 — not a server farm. That forced discipline everywhere: what we kept in the training corpus, how we compressed the retrieval prompt, how we budgeted tokens for thinking traces. The next wave of capable AI won't be the largest models — it will be the sharpest ones, post-trained on the exact distribution they're asked to serve.
What ships next
Nico 2.5 powers Salestools GTM and the agent fleet inside Grain today. In the coming weeks we'll publish benchmarks, open API access, and share the research posts that go deeper on each stage — the DPO preference-pair generation pipeline, the multi-turn agentic trajectories, and the scaffolding that lets Nico run multi-step revenue workflows end-to-end.
Request Nico 2.5 API access.
Private deployments available for enterprise customers — Nico 2.5 runs inside your VPC so prospect data never leaves your network.
