Skip to content
DecisionNodeDecisionNdedocs
  • Guides
  • API reference
  • Examples
  • Playground

start here

  • QuickstartGet startedGet an API key, send one request with three questions, and branch your code on the typed answers. Plain HTTPS, no SDK to install.
  • POST /v1/decideAPI referenceAnswer typed questions about a state, optional images and video frames. One request, one buffered JSON response, one answer per question.
  • QuestionsConceptsQuestions say what to decide. Each one has a type that fixes the shape of its answer: a choice from your options, a score on your scale, a…
  • ConfidenceConceptsProbabilities are calibrated per question type, so a threshold means what it says on the data we measure.
  • ImagesConceptsSend up to 16 images and text in the same request. The model reads printed and handwritten text, amounts, dates, objects and layout, and…
  • Batch jobsPatternsSend up to 10,000 requests in one file and collect the answers later, at a lower price than live calls.
  • Pricing and billingYou pay for input tokens only. Output is free because the model generates no text.
↑↓ moveopen7 suggestions
Get API keyGet API key
DecisionNodeDecisionNde

Get started

  • Introduction
  • Quickstart
  • Playground
  • Console and keys
  • With coding agents
  • MCP server
  • Examples

Concepts

  • State
  • Questions
  • Choice
  • Score
  • Truth
  • Number
  • Points and boxes
  • Images
  • Video
  • Boosters
  • Confidence
  • Determinism

Models

  • DecisionNode-1.0
  • DecisionNode-1.0 Flash
  • Limits
  • Versions
  • Dedicated capacity

Fine-tuning

  • Overview
  • Prepare your dataset
  • Upload and validation
  • Start a training run
  • Watch a run
  • The quality gate
  • Use your model
  • Limits and pricing

Patterns

  • Confidence-gated routing
  • Fan-out
  • Guardrails
  • Control loops
  • Batch jobs

API reference

  • Overview
  • POST/v1/decide
  • GET/v1/models
  • POST/v1/uploads
  • Errors
  • Safety check
  • Rate limits

Sessions API

  • Sessions overview
  • POSTOpen a session
  • WSStream frames
  • DELEnd a session

Batch API

  • The batch object
  • POSTCreate a batch
  • POSTAdd requests
  • POSTFinalize a batch
  • GETRetrieve a batch
  • GETGet batch results
  • POSTCancel a batch
  • GETList batches

Pricing and billing

  • Pricing and billing
  • Refer & earn

Policies

  • Responsible use
  • Data and privacy
  • Benchmarks
  • Pricing
  • Playground
Get API key
  • Guides
  • API reference
  • Examples
  • Playground

Get started

  • Introduction
  • Quickstart
  • Playground
  • Console and keys
  • With coding agents
  • MCP server
  • Examples

Concepts

  • State
  • Questions
  • Choice
  • Score
  • Truth
  • Number
  • Points and boxes
  • Images
  • Video
  • Boosters
  • Confidence
  • Determinism

Models

  • DecisionNode-1.0
  • DecisionNode-1.0 Flash
  • Limits
  • Versions
  • Dedicated capacity

Fine-tuning

  • Overview
  • Prepare your dataset
  • Upload and validation
  • Start a training run
  • Watch a run
  • The quality gate
  • Use your model
  • Limits and pricing

Patterns

  • Confidence-gated routing
  • Fan-out
  • Guardrails
  • Control loops
  • Batch jobs

API reference

  • Overview
  • POST/v1/decide
  • GET/v1/models
  • POST/v1/uploads
  • Errors
  • Safety check
  • Rate limits

Sessions API

  • Sessions overview
  • POSTOpen a session
  • WSStream frames
  • DELEnd a session

Batch API

  • The batch object
  • POSTCreate a batch
  • POSTAdd requests
  • POSTFinalize a batch
  • GETRetrieve a batch
  • GETGet batch results
  • POSTCancel a batch
  • GETList batches

Pricing and billing

  • Pricing and billing
  • Refer & earn

Policies

  • Responsible use
  • Data and privacy
  1. docs
  2. /
  3. Get started

Upload and validate a dataset

Create a fine-tuned model in the console, upload a dataset of up to 64 MiB, and let validation check every record: the format, the images, duplicates, conflicts and the splits. Nothing is trained or charged until the dataset is ready.

on this page5 sections
  1. Create a model
  2. Upload a dataset
  3. What validation checks
  4. The result
  5. Keeping and deleting datasets

Create a model#

In the console, open Fine-tuning and choose New fine-tuned model: a name, a base, and an optional description of up to 200 characters. The name is 3 to 40 lower-case letters, digits and hyphens, unique in the workspace, and it becomes part of what you send as model: fraud on DecisionNode-⁠1.0 Flash in the workspace acme is decisionnode-1.0-flash@acme/fraud. Pick the base by what you need: DecisionNode-⁠1.0 for accuracy, DecisionNode-⁠1.0 Flash for speed and price. A model keeps its base; to try the other, create a second model.

Upload a dataset#

Choose Create and add a dataset, give it a name (1 to 80 characters) and Choose a file. The browser sends it straight into your workspace's storage location, so a 64 MiB file never passes through anything else. Validation starts when the upload is complete.

What validation checks#

  • Format and limits

    What happens
    Every line is a record with the fields of a record, within the request limits; 200 to 50,000 records
  • Answers

    What happens
    One per question, each a valid answer for its type
  • Images

    What happens
    Every image is a live upload_id of your workspace or inline data; an image by url is refused. From then on the dataset keeps its images for its life
  • Duplicates

    What happens
    Records with the same state, questions and answers are dropped, and counted
  • Conflicts

    What happens
    Records with the same input but different answers are kept, and counted, so you can fix them
  • Splits

    What happens
    10% of the records, at least 50, for calibration and the same for held out; the rest trains
  • Safety check

    What happens
    Not here: it runs as the first step of a training run, on every record's state and images (see Start a training run)
Checks, in order
CheckWhat happens
Format and limitsEvery line is a record with the fields of a record, within the request limits; 200 to 50,000 records
AnswersOne per question, each a valid answer for its type
ImagesEvery image is a live upload_id of your workspace or inline data; an image by url is refused. From then on the dataset keeps its images for its life
DuplicatesRecords with the same state, questions and answers are dropped, and counted
ConflictsRecords with the same input but different answers are kept, and counted, so you can fix them
Splits10% of the records, at least 50, for calibration and the same for held out; the rest trains
Safety checkNot here: it runs as the first step of a training run, on every record's state and images (see Start a training run)

The result#

  • uploading

    Meaning
    The file is on its way
    Next
    Wait
  • validating

    Meaning
    The checks are running; the console shows it as checking
    Next
    Wait; the console shows the result when they end
  • ready

    Meaning
    Every record passed
    Next
    Start a run
  • invalid

    Meaning
    Records broke the format or the limits
    Next
    Fix the issues listed and upload again
  • refused

    Meaning
    A training run's safety check refused records; the run ended refused, at no charge
    Next
    See the refused records, remove them, upload again and start a new run
Dataset states
StateMeaningNext
uploadingThe file is on its wayWait
validatingThe checks are running; the console shows it as checkingWait; the console shows the result when they end
readyEvery record passedStart a run
invalidRecords broke the format or the limitsFix the issues listed and upload again
refusedA training run's safety check refused records; the run ended refused, at no chargeSee the refused records, remove them, upload again and start a new run

A validated dataset shows its record count, the three splits, the duplicates dropped, the conflicts, how many images it holds, and how many questions of each type it asks. An invalid dataset lists its issues, the first 100 of them, each with the record's line number, the path to the field (such as answers.risk) and what is wrong; the total count is shown beside them. A refused dataset, marked by a training run's safety check, names the record numbers only, never their content.

  • A choice answer that is not an option

    Fix
    Use an option name exactly as written in criteria, case and spaces included
  • A score answer that is neither a level nor its index

    Fix
    Use the level's index from 0, or the level as written
  • An answer for a question the record does not ask, or a question without an answer

    Fix
    One answer per question id
  • An expired or unknown upload_id

    Fix
    Upload the image again and validate within the hour
  • An image by url

    Fix
    Send it as an upload, or inline as data
  • Fewer than 200 records after duplicates are dropped

    Fix
    Add records; copies do not count
  • Many conflicts

    Fix
    Decide which answer is your policy and relabel; conflicts are kept, but they cost accuracy
Common issues and their fixes
IssueFix
A choice answer that is not an optionUse an option name exactly as written in criteria, case and spaces included
A score answer that is neither a level nor its indexUse the level's index from 0, or the level as written
An answer for a question the record does not ask, or a question without an answerOne answer per question id
An expired or unknown upload_idUpload the image again and validate within the hour
An image by urlSend it as an upload, or inline as data
Fewer than 200 records after duplicates are droppedAdd records; copies do not count
Many conflictsDecide which answer is your policy and relabel; conflicts are kept, but they cost accuracy

Keeping and deleting datasets#

  • A dataset is deleted 30 days after its last run unless you choose Keep on it (Stop keeping undoes it).
  • Delete a dataset at any time, except while a queued or running run uses it.
  • A dataset belongs to the model it was uploaded for. To train another model on the same records, upload them for that model.
  • Deleting a model deletes its datasets with it, and cancels a run that is going on the terms of a cancel.

Who may do what

Every member of the workspace can see its fine-tuned models, datasets and runs. Owners, Admins and Developers can create, upload, train, deploy and delete.

  • Start a training runThe estimate, the fee, and what the run does.Read
  • Prepare your datasetThe record format, every rule, and how many records you need.Read
nextIntroduction

DecisionNode is built and run by Bynn Intelligence, Inc.

  • Home
  • Playground
  • Examples
  • Console
  • Responsible use
  • Terms
  • Acceptable use
  • Privacy
  • Data processing
  • Defence addendum
  • Cookies
  • Affiliate program

on this page

  1. Create a model
  2. Upload a dataset
  3. What validation checks
  4. The result
  5. Keeping and deleting datasets