OpenInference Anthropic Instrumentation
Python autoinstrumentation library for the Anthropic package
This package implements the following Anthropic clients:
MessagesCompletionsAsyncMessagesAsyncCompletionsBetaMessagesParseAsyncBetaMessagesParse
These traces are fully OpenTelemetry compatible and can be sent to an OpenTelemetry collector for viewing, such as Arize phoenix.
Installation
pip install openinference-instrumentation-anthropic
Quickstart
Through your terminal, install required packages.
pip install openinference-instrumentation-anthropic anthropic arize-phoenix opentelemetry-sdk opentelemetry-exporter-otlp
You can start Phoenix with the following terminal command:
python -m phoenix.server.main serve
By default, Phoenix listens on http://localhost:6006. You can visit the app via a browser at the same address. (Phoenix does not send data over the internet. It only operates locally on your machine.)
Try the following code in a Python file.
- Set up
AnthropicInstrumentorto trace your application and sends the traces to Phoenix. - Then, set your Anthropic API key as an environment variable.
- Lastly, create a Anthropic client, make a request, then go see your results in Phoenix at
http://localhost:6006!
import os
from anthropic import Anthropic
from openinference.instrumentation.anthropic import AnthropicInstrumentor
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
from opentelemetry.sdk import trace as trace_sdk
from opentelemetry.sdk.trace.export import SimpleSpanProcessor
# Configure AnthropicInstrumentor with Phoenix endpoint
endpoint = "http://127.0.0.1:6006/v1/traces"
tracer_provider = trace_sdk.TracerProvider()
tracer_provider.add_span_processor(SimpleSpanProcessor(OTLPSpanExporter(endpoint)))
AnthropicInstrumentor().instrument(tracer_provider=tracer_provider)
os.environ["ANTHROPIC_API_KEY"] = "YOUR_KEY_HERE"
client = Anthropic()
response = client.messages.create(
max_tokens=1024,
messages=[
{
"role": "user",
"content": "Tell me about the history of Iceland!",
}
],
model="claude-3-opus-20240229",
)
print(response)
Now, on the Phoenix UI on your browser, you should see the traces from your Anthropic application. Click on a trace, then the "Attributes" tab will provide you with in-depth information regarding execution!
Metadata
Release files for openinference-instrumentation-anthropic 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openinference_instrumentation_anthropic-1.0.3.tar.gz | 15.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openinference_instrumentation_anthropic-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.1 kB
Release files / openinference_instrumentation_anthropic-1.0.3.tar.gz
| Download URL | openinference_instrumentation_anthropic-1.0.3.tar.gz |
|---|---|
| Size | 15.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc78ac8d7078dc24ee72851c598b22780e4c7a6d66f627c2dd94c5402e4a6ce3
|
|
BLAKE2b-256 checksum How to use checksums |
b76b2d1bbd5e83f79da2226d4f27e68fcb48150af816d5165ab0718e886fd51e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / openinference_instrumentation_anthropic-1.0.3-py3-none-any.whl
| Download URL | openinference_instrumentation_anthropic-1.0.3-py3-none-any.whl |
|---|---|
| Size | 19.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8fb0c60ce3163649a6aa37c3e0b7d36c1ec95a4ebe12b338b9f22aeaa3fb0622
|
|
BLAKE2b-256 checksum How to use checksums |
d7dc4f1a9896281a845a423392fe60718e2db29c6d8c50faa873e26b42b87cab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|