Curva guides
Hands-on Curva setups: LLM classification in Python, TypeScript, n8n or over HTTP, with a probability on every answer. 24 articles.
Subscribe with RSSHow to word LLM classification questions: recipe lessons
Wording lessons from Curva's shipped recipes: judge by need, define the no case, carve out false positives, and freeze wording before collecting labels.
More articles
-
Ollama classification with probabilities, fully local
Run typed LLM classification on your own machine with Ollama: no key, no network hop, privacy strict allowed, and a cost of $0 per call.
-
LLM yes or no questions with a real probability of yes
A Noul question returns one number, P(yes), asked as a normalised two-option choice so P(x) and P(not x) agree. How to word it, threshold it and label it.
-
LLM image classification in Python with probabilities
Classify images with a vision LLM from Python: paths, bytes or URLs in images=, typed answers with probabilities, and the privacy and size limits.
-
An LLM decision tree in one request with @key branches
Branch on an earlier LLM answer inside one request: @key in when reads an answer, follow-ups run only on the branch taken, and skips cascade to dependents.
-
LLM classification with many classes: up to 255 options
How an LLM Choice question behaves as labels grow: descriptions, the escape option, and the switch to verbal mode with the top 5 labels past 20 options.
-
An LLM audit log that never stores the input
What Curva's audit log records for every LLM decision, what it never keeps (the state, the images, provider errors), and how to page through it.
-
Install Curva with pip, npm or Docker and check it runs
Three ways to install Curva, what each gives you, which to pick, and three checks that prove it runs: curva --version, GET /health and a first decision.
-
Few-shot examples for LLM classification, up to 10
Add up to 10 labeled examples per question, written like feedback labels and remapped when debiasing reverses the options. Which ones to pick.
-
Extract numbers from text with an LLM and check the bounds
Number and Integer questions return a typed value checked against min and max, with a confidence. What a bad reply becomes, and why sums stay in code.
-
Curva troubleshooting: every error code and its fix
Every Curva error in one place: status, type, the SDK exception it raises, the usual causes and the fix, plus surprises that are not errors at all.
-
curva.local() vs Curva(): running the server from Python
Three ways to get a Curva client in Python: module-level decide, curva.local() with its own server, or Curva() for a shared one. What each does.
-
Conditional LLM questions: skip what does not apply
Add when to a question and it is asked only when the state matches. Skipped questions are never sent, stored or paid for, and calibration survives.
-
Which LLMs return logprobs? Check with curva spike
curva spike tests whether a model returns usable label probabilities from logprobs. Run it on free models, a named provider or your own served model.
-
Batch LLM classification of a JSONL file with curva map
Classify thousands of records from the command line with any LLM: typed answers per line, rate limits respected, and a rerun resumes where it stopped.
-
Reduce LLM classification cost: every lever, measured
Every way to cut the cost of LLM classification in one place: rules, when, the cache, debias auto, cascades, prompt caching, local models and spend caps.
-
Python LLM classification with confidence and feedback
A start-to-finish Python tutorial: typed LLM labels with a probability each, abstain, feedback, calibration reports, async batches and errors.
-
n8n AI routing with a Needs review branch
Route n8n items with an LLM: one branch per answer, a Needs review branch for unsure ones, and a Feedback node that calibrates on your data.
-
LLM decisions over HTTP: one call, any tool
Get typed LLM decisions from any language or no-code tool with two HTTP calls: decide and feedback. Request, response, routing order, errors.