- Run experiments (A/B tests) in production and measure the impact on costs, latencies and quality.
- Example: “What is the impact of switching to a new model?”
- Explain changes to metrics over time.
- Example: “Why did latency in this chain increase?”
Releases

release tracks the overall version of your application. Commonly it is set to the semantic version or git commit hash of your application.
The SDKs look for a release in the following order:
- SDK initialization
- Environment variable
- Automatically on popular platforms
SDK initialization
Environment variable
The SDKs will look for aABV_RELEASE environment variable. Use it to configure the release e.g. in your CI/CD pipeline.
Python SDK
Install packages.env file in your project root.
.env
JS/TS SDK
Install packages.env file in your project root and a package like dotenv to load the variables.
.env
instrumentation.ts file that initializes the OpenTelemetry NodeSDK and registers the ABVSpanProcessor.
instrumentation.ts
instrumentation.ts file to use dotenv package to load the variables.
Additional parameters are provided to get trace visible in the UI immediately.
instrumentation.ts
instrumentation.ts file at the top of your application.
index.ts
Automatically on popular platforms
If no otherrelease is set, the ABV SDKs default to a set of known release environment variables.
Supported platforms include: Vercel, Heroku, Netlify. See the full list of support environment variables for JS/TS and .
Versions

version parameter can be added to traces and all observation types (span, generation, event). Thereby, you can track the effect of a new version on the metrics of an object with a specific name using ABV analytics.
With Python SDK
When using the@observe() decorator, version could be specified at both trace or observation levels:
With JS/TS SDK
abv.trace(), abv.span() and abv.event() also take an optional version parameter.
In UI
Version parameter in ABV interface