Skip to content

[bot] Together AI TypeScript SDK (together-ai) not instrumented — no tracing for chat completions, embeddings, or streaming #2100

@braintrust-bot

Description

@braintrust-bot

Summary

The official Together AI TypeScript SDK (together-ai on npm, v0.40.0, last published ~3 weeks ago) provides execution APIs for chat completions, completions, embeddings, image generation, and audio transcription. It has its own HTTP client layer — it does not depend on the openai npm package and is generated with Stainless from the Together REST API spec. This repository has zero instrumentation for any together-ai SDK surface — no wrapper, no channels, no plugin, no auto-instrumentation config. Users who call the together-ai JS SDK directly get no Braintrust spans.

What instrumentation is missing

The together-ai npm package exposes these execution surfaces, none of which are instrumented:

SDK Method Description
client.chat.completions.create({ model, messages }) Chat completions with multi-turn conversation support
client.chat.completions.create({ ..., stream: true }) Streaming chat completions (Server-Sent Events)
client.completions.create({ model, prompt }) Raw text completions
client.embeddings.create({ model, input }) Text embeddings
client.images.generate(...) Image generation from text prompts

These methods use Together's own TypeScript client (no openai dependency), so the existing openai auto-instrumentation does not cover them.

No coverage in any instrumentation layer:

  • No wrapper function (e.g. wrapTogether())
  • No diagnostics channels for Together AI methods
  • No plugin handler in js/src/instrumentation/plugins/
  • No auto-instrumentation config in js/src/auto-instrumentations/configs/
  • No e2e test scenarios
  • Grep for together (case-insensitive) across js/src/ returns zero instrumentation matches

Indirect coverage is insufficient:

Braintrust's Together AI integration page documents accessing Together models via the OpenAI SDK pointed at the Braintrust gateway (https://gateway.braintrust.dev/v1). Users who call the together-ai npm SDK directly — which is Together's own official TypeScript client with its own HTTP layer — get no spans at all under that approach.

Braintrust docs status

not_found for direct SDK instrumentation. The Braintrust Together AI integration page documents a gateway/OpenAI SDK approach only and does not reference the together-ai npm package.

Upstream references

Local files inspected

  • js/src/auto-instrumentations/configs/ — full config list: anthropic.ts, openai.ts, ai-sdk.ts, groq.ts, mistral.ts, cohere.ts, huggingface.ts, google-genai.ts, google-adk.ts, genkit.ts, openai-agents.ts, openrouter.ts, openrouter-agent.ts, claude-agent-sdk.ts, cursor-sdk.ts, github-copilot.ts, openai-codex.ts, flue.ts — no Together AI config present
  • js/src/wrappers/ — no together.ts wrapper file
  • js/src/instrumentation/plugins/ — no Together AI channels or plugin
  • e2e/scenarios/ — no Together AI test scenarios
  • Full repo grep for together (case-insensitive) in js/src/ — zero instrumentation matches
  • together-ai GitHub package.json — confirmed no openai runtime dependency; own Stainless-generated HTTP client

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions