Skip to content

docs: evaluate Pioneer models with Braintrust - #43

Open
kfastino wants to merge 5 commits into
mainfrom
kelton/third-party-eval-docs
Open

docs: evaluate Pioneer models with Braintrust#43
kfastino wants to merge 5 commits into
mainfrom
kelton/third-party-eval-docs

Conversation

@kfastino

@kfastino kfastino commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds guides/braintrust-evals.mdx, a guide for evaluating Pioneer decoder models with Braintrust. Our OpenAI-compatible API already works with Braintrust unchanged, but nothing documented that, so customers had no path for decoder LLM evaluation — concepts/evaluations covers encoder metrics (F1/precision/recall) only.

  • braintrust eval in both Python and TypeScript, with --no-send-logs shown first so customers can verify connectivity before creating an account
  • Model ID table — catalog slug vs training job ID vs project name, so base-vs-finetune comparison is one env var
  • Adds an "Evaluation" subgroup under Guides in docs.json, and a <Note> on concepts/evaluations so the encoder and decoder pages hand off to each other

The guide also documents the LLM-as-judge scorer running on Pioneer, which means no OpenAI or Anthropic key is needed anywhere in the eval pipeline.

Gotchas documented

Each of these was hit while testing and makes a working setup look broken:

  • max_tokens below ~512 truncates reasoning models mid-thought; the empty completion scores as a wrong answer
  • GET /v1/models is public and returns 200 without valid credentials, so it can't validate an API key
  • Keys must carry the pio_sk_ prefix for the Bearer path to treat them as API keys
  • braintrust eval --list requires BRAINTRUST_API_KEY; --no-send-logs does not

Scope note

An earlier revision of this PR also covered Prime Intellect's vf-eval. That was dropped — they compete with us in the same space, and pointing customers at their tooling from our own docs is not a trade we want to make. The page was renamed from third-party-evals to braintrust-evals to match its single subject; it has not shipped, so no redirect is needed.

Test plan

  • Every command and both code samples executed against a live Pioneer endpoint
  • Python and TypeScript produce identical scores on the same data, cross-validating the two samples
  • mint broken-links passes
  • docs.json validates and the new page resolves in navigation
  • Card icon uses chart-bar, already proven elsewhere in this repo
  • No residual Prime Intellect / vf-eval / verifiers references anywhere in the repo
  • braintrust eval evals/ run verbatim from this guide against production (api.pioneer.ai/v1): discovered eval_pioneer.py, created the pioneer-decoder-eval project and an experiment, Factuality 100% / Levenshtein 91.67%, LLM-as-judge served by Pioneer
  • Custom provider verified end to end in a real Braintrust org — all 9 registered models route, streaming returns SSE, and a project name (All Inferences) resolves through active_model_id
  • Training-job-UUID row confirmed against production: fine-tune 0ae6696b (Llama-3.1-8B-Instruct) served a completion and echoed the UUID as the model. A second fine-tune resolved but returned 409 has no active inference deployment, now documented as a caveat

Made with Cursor

…llect

Customers evaluating decoder LLMs had no documented path, even though the
OpenAI-compatible API already works with these harnesses unchanged. Documents
the verified commands for both, plus the gotchas that make a working setup look
broken — chiefly that a low max_tokens truncates reasoning models into
zero-scoring empty completions, and that GET /v1/models is public so it cannot
be used to validate an API key.

Co-authored-by: Cursor <cursoragent@cursor.com>
@mintlify

mintlify Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
pioneer 🟢 Ready View Preview Jul 27, 2026, 10:08 PM

Prime Intellect competes with us in the same space, so pointing customers at
their tooling from our own docs is not a trade we want to make. Drops that
section and the verifiers-specific caveat, flattens the now-redundant vendor
heading level, and renames the page to match its single subject.

The page has not shipped yet, so the slug change needs no redirect.

Co-authored-by: Cursor <cursoragent@cursor.com>
@kfastino kfastino changed the title docs: evaluate Pioneer models with Braintrust and Prime Intellect docs: evaluate Pioneer models with Braintrust Jul 27, 2026
…ider

Registering the endpoint once in Braintrust settings beats passing base_url
per script: the models show up in the playground and prompt UI, and no
Braintrust credential ever has to live on our side.

Recommends project names as the registered model names. Pioneer resolves a
project to its currently deployed model, so promoting a fine-tune retargets
the entry with no reconfiguration — verified against the live API, where a
request for project "All Inferences" resolved through active_model_id and
served a completion.

Co-authored-by: Cursor <cursoragent@cursor.com>
…ive org

Our own Fastino workspace had a "Pioneer Prod" provider that never worked, and
each of its three defects is an easy mistake to repeat: an endpoint URL without
/v1 (Braintrust appends the route, so it 404s), streaming left off, and no model
names registered at all, which makes a correct-looking provider serve nothing.

Also notes the short config cache, which makes a freshly added provider 404 on
the first call and look misconfigured when it is fine.

Co-authored-by: Cursor <cursoragent@cursor.com>
Verified the training-job-ID row against production: one fine-tune served
normally, another returned 409 "has no active inference deployment" because its
deployment had been torn down. The ID resolved in both cases, so the failure
reads as a bad model ID when it is really a deployment state — worth calling out
since the guide recommends pinning IDs for comparison runs.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant