New Features
- Anthropic: Adds support for tracing message calls using tools.
- LLM Observability: Adds support for tracing Anthropic messages using tool calls.
- azure: Removes the restrictions on the tracer to only run the mini-agent on the consumption plan. The mini-agent now runs regardless of the hosting plan
Bug Fixes
- Code Security: add the boto package to the IAST patching denylist.
- celery: changes
error.message
span tag to no longer include the traceback that is already included in theerror.stack
span tag. - CI Visibility: fixes source file information that would be incorrect in certain decorated / wrapped scenarios and forces paths to be relative to the repository root, if present.
- LLM Observability: This resolves a typing hint error in the
ddtrace.llmobs.utils.Documents
helper class constructor where type hints did not accept input dictionaries with integer or float values. - LLM Observability: This fix resolves an issue where the OpenAI, Anthropic, and AWS Bedrock integrations were always setting
temperature
andmax_tokens
parameters to LLM invocations. The OpenAI integration in particular was setting the wrongtemperature
default values. These parameters are now only set if provided in the request. - redis: This fix resolves an issue in the redis exception handling where an UnboundLocalError was raised instead of the expected BaseException.
- ASM: This fix resolves an issue where the requests integration would not propagate when apm is opted out (i.e. in ASM Standalone).
- profiling: Fixes an issue where task information coming from echion was encoded improperly, which could segfault the application.
- tracing: fixes a potential crash where using partial flushes and
tracer.configure()
could result in an IndexError - flask: Fix scenarios when using flask-like frameworks would cause a crash because of patching issues on startup.
- wsgi: Ensures the status of wsgi Spans are not set to error when a
StopIteration
exception is raised marked the span as an error. With this change,StopIteration
exceptions in this context will be ignored. - langchain: tag non-dict inputs to LCEL chains appropriately. Non-dict inputs are stringified, and dict inputs are tagged by key-value pairs.
Other Changes
- LLM Observability: the SDK allowed users to submit an unsupported numerical evaluation metric type. All evaluation metric types submitted with numerical type will now be automatically converted to a score type. As an alternative to using the numerical type, use `score instead.