- Trace and collect metrics about your agents built with popular SDKs and harnesses using Weave OTel-compatible SDK
- Manually instrument your application’s LLM calls and arbitrary functions to trace, version, and collect feedback about your application
- Evaluate your agent’s or application’s responses using LLM judges and custom scorers
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?- Trace an agent
- Trace functions with Ops and Calls
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:- Python
- TypeScript
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 thecall.exception. If you need to raise exceptions during execution, set the__should_raiseparameter, 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: