Skip to main content

Installation

Install both the Netra SDK and Together AI SDK:
pip install netra-sdk together

Usage

Initialize the Netra SDK with Together AI instrumentation enabled. The SDK automatically traces all Together AI API calls once initialized.
from netra import Netra
from together import Together
import os

# Initialize Netra with Together AI instrumentation
Netra.init(
    app_name="my-ai-app",
    headers=f"x-api-key={os.environ.get('NETRA_API_KEY')}",
    trace_content=True
)

# Use Together AI client as usual - all calls are automatically traced
client = Together(api_key=os.environ.get("TOGETHER_API_KEY"))

response = client.chat.completions.create(
    model="mistralai/Mixtral-8x7B-Instruct-v0.1",
    messages=[
        {"role": "user", "content": "What is observability?"}
    ]
)

print(response.choices[0].message.content)

Streaming Responses

The SDK automatically handles streaming responses and captures the complete output:
stream = client.chat.completions.create(
    model="mistralai/Mixtral-8x7B-Instruct-v0.1",
    messages=[{"role": "user", "content": "Tell me a story"}],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

Embeddings

Embedding operations are also automatically instrumented:
embeddings = client.embeddings.create(
    model="togethercomputer/m2-bert-80M-8k-retrieval",
    input="The quick brown fox jumps over the lazy dog"
)

print(embeddings.data[0].embedding)

Selective Instrumentation

Control which integrations are enabled using the instruments or blockInstruments configuration:
from netra import Netra
from netra.instrumentation.instruments import InstrumentSet

# Only enable Together AI instrumentation
Netra.init(
    headers=f"x-api-key={os.environ.get('NETRA_API_KEY')}",
    instruments={InstrumentSet.TOGETHER}
)

# Or block specific instrumentations
Netra.init(
    headers=f"x-api-key={os.environ.get('NETRA_API_KEY')}",
    block_instruments={InstrumentSet.HTTPX}
)

Next Steps

Last modified on February 3, 2026