Posted by mooreds 7 hours ago
The comparison benchmark results in the post were older and prior to further passes. After updating to tera 2.4.0 and enabling the `fast` feature set, I reran the benchmarks against the current codebase and the difference between my Rust crate and Tera is now about ~1.5x.
Some of the technical differences are (which in disclosure were surfaced by GPT 5.6 Sol): context and loop values are borrowed while Tera clones, cached static positions/lookups, less per-render heap setup, escaping chunks directly into the final String instead of bytes, and more granular bytecode functions which avoid stacks.
The LLM itself is primarily a transformer that handles tokenization, mapping, and neural-network reasoning (in simple terms). It's the engine. It takes in language, interprets it's meaning, and based on other language that supplies instructions, decides how to respond. The agent typically takes the form of an instruction for how to use a tool, combined with how to access it.
Technically, the chat session is itself an agentic tool because it's taking input and returning output through that interface. But it's kind of the default tool. Stdout, if you will.
Say you're in Gmail and you get a message that tells you about a meeting, but doesn't include an invite. If you tell Gemini to add an event for that meeting to your calendar, the LLM interprets your instruction, then uses an agent tool to read your email, interprets it, and then uses another agent tool to create a meeting on your Google Calendar.
They don't have to be good if they're cheap, directed, and sufficiently random to hit on something good within your budget.
Are LLMs better than our top mathematicians? No way! But they're able to spitball and falsify in parallel way faster. Eventually their directionally random output will hit something novel and interesting.