Skip to main content
W&B Weave is an observability and evaluation platform that helps you track, evaluate, and improve your agents and LLM applications. With Weave, you can:

Get started

Select your workload type and then use the following docs to guide you through the basics of how to use Weave’s suite of tools. For more information about the difference between workloads, see What is Weave?
Weave’s agent tracing workflows are also available in CoreWeave Agent Lens, the successor to Weights & Biases Weave. Both services already receive your agent tracing data, so there is nothing to migrate. See What is Agent Lens for more information.

Integrate Weave with an agent

Pick a built-in integration for your agent SDK or harness and start tracing sessions, turns, LLM calls, and tool calls in the Agents view.

Send OpenTelemetry spans to the Agents view

Quickly configure your OTel-instrumented agent to send traces to Weave’s OTLP endpoint. No Weave SDK installation required.

View agent metrics in Weights & Biases UI

Trace a basic call to an LLM and review the inputs, outputs, and code in your CoreWeave Forge account.

Install Weave

W&B Weave provides Python and TypeScript libraries. To install the Weave library, run the following command:
To start using the Weave library, create a CoreWeave Forge account and an API key at User Settings. The API key allows you to authenticate to your CoreWeave Forge account and start sending data to it.

Limits and expected behaviors

Weave has the following limitations, known issues, and expected behaviors. Use this list as a reference when you encounter unexpected results or want to understand how Weave handles edge cases.
  • For retryable requests, Weave retries requests starting at 1 second after receiving the first error and then doubles the amount of time between attempts up to 5 minutes. Requests time out after 36 hours.
  • Instead of raising exceptions, .call() captures exceptions and stores them in the call.exception. If you need to raise exceptions during execution, set the __should_raise parameter, like this:
    showLineNumbers
  • Dedicated Weave instances use a different OpenTelemetry ingress URL. For more information about authoritative endpoints, see Send OpenTelemetry traces.
  • Weave sometimes truncates large trace data objects. This occurs because the default trace output is a raw, custom Python object that Weave can’t serialize automatically. To return all of your trace data, define a dictionary of strings, like this:
Last modified on September 30, 2026