Skip to main content
A project is the stable behavior your application requests. It owns a Weights & Biases project, datasets, fine-tunes, evaluations, analytics, and one or more routing versions. This page explains how projects, their names, and versions relate, so you can change a project’s routing without disrupting the traffic your application already sends.
Management API paths start with /projects/{alias}, where alias is the project alias. See API conventions.

Project selection

An application selects a project with the OpenAI-Project: <entity>/<project> header. <project> is the name of the Weights & Biases project that stores the project’s traces. The OpenAI SDKs send this header from the project client option or the OPENAI_PROJECT_ID environment variable. Studio shows the value to copy in the project header and on the project’s settings page.
With the header, model chooses only the model. "router", a blank value, or an omitted model uses the version’s weighted routing. A provider/model value overrides the model within the project. For details, see Model routing. The project alias, such as ticket-classifier, identifies the project in Studio URLs and Management API paths. It’s unique within a Weights & Biases entity, and you can’t change it after you create the project. It can differ from the Weights & Biases project name, so copy the OpenAI-Project value from Studio rather than building it from the alias. A request that doesn’t name a version always means version 1. Version 1 is a fixed default, never the latest version. Pin a later version explicitly with forge.project_version metadata:
A version that doesn’t exist returns 404.

When to create a version

Create a new version when you need to experiment with a different model mix or provider parameters without affecting the application’s current traffic. Each version has an independent routing configuration.
Creating a version doesn’t move traffic. A caller reaches it only after it sends the new version number in forge.project_version.

What versions do not copy

A version isn’t a copy of the project. Datasets, fine-tunes, and evaluations remain project-level resources. Dataset queries can select which project version’s traffic to use. To validate a new version before any production traffic reaches it, follow this progression:
  1. Keep production on version 1 by omitting forge.project_version.
  2. Create a new version with the proposed routing.
  3. Send internal or canary traffic with forge.project_version set to the new version.
  4. Inspect analytics and evaluations.
  5. Set forge.project_version in the application only when the new version is ready.
At this point, your application’s traffic uses the new version’s routing.
This request creates the next version with its own routing. The response contains the assigned version number.
For the complete operation, see Create a project version.
Last modified on October 26, 2026