- Code capture - Weave captures a representation of the Op’s source code. This includes inline comments as well as recursively capturing the value of variables or the source of non-Op functions that were called. Code capture allows you to see what your function was doing even if the change was not saved to your source control system. Code capture is used as part of Op versioning, allowing you to understand the evaluation of your code over time. If code capture is disabled, a hash value will be used instead.
- Function name, inputs, and outputs - The name of the function will be captured but can be overridden. A JSON-based representation of the inputs and outputs will be captured. For inputs, argument name will be capture in addition to value. Weave lets you customize the logging of inputs and outputs - you can specify a function to add/remove/modify what is logged.
- Op call hierarchy - When an Op is called within the context of another Op executing, this relationship is captured, even in cases where there is an intermediate non-Op function executing. This relationship between Op calls is used to provide a “Trace tree”.
- Execution status and exceptions - Weave tracks whether a function is executing, finished, or errored. If an exception occurs during execution the error message and a stack track is recorded.
- System information - Weave may capture information about which operating system the client is running on including detailed version information.
- Client information - Weave may capture information about the Weave client itself, such as the programming language in use and detailed version information for that language and the Weave client library.
- Timing - The execution start and end time is captured and also used for latency calculations.
- Token usage - In some integrations LLM token usage counts may be automatically logged.
- User and run context - Logging is associated with a W&B user account. That will be captured along with any wandb Run context.
- Derived information - Weave may compute derived information from the raw information logged, for example a cost estimate may be calculated based on token usage and knowledge of the model used. Weave also aggregates some information over calls.
-
Additional information you choose - You can choose to log custom metadata with
weave.attributesas part of your call or attach feedback to a call.
FAQs