Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

[bot] Groq Batch API (`client.batches`) is not instrumented

Offen
#2,686 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
45/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
typescript

Rechercherichtung

Start in js/src/instrumentation/plugins/groq-plugin.ts by reading GroqPlugin.onEnable() and the existing synchronous channels, then compare with groq-interceptors.ts to see how channel handlers create spans. Read js/src/wrappers/groq.ts around groqProxy() to confirm where client.batches currently falls through unwrapped, and model batch types in js/src/vendor-sdk-types/groq.ts. Done means batches.create, batches.retrieve, and result retrieval via files.content produce spans consistent with existing Groq instrumentation, with tests covering the lifecycle.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

typescript

Summary

Groq's official SDK exposes a documented Batch API (groq.batches.create()/.retrieve(), plus groq.files.content() for results) for submitting async chat-completion, audio-transcription, and audio-translation jobs with a configurable completion window. This repo instruments every one of Groq's synchronous execution surfaces (chat, embeddings, audio speech/transcription/translation) but has zero coverage of the batch lifecycle.

What's missing

  • js/src/instrumentation/plugins/groq-plugin.ts — GroqPlugin.onEnable() (lines 37-172) subscribes to exactly five channels: chatCompletionsCreate, embeddingsCreate, audioSpeechCreate, audioTranscriptionsCreate, audioTranslationsCreate. No batch-related channel exists in the file.
  • js/src/instrumentation/plugins/groq-interceptors.ts — grepped for batch/Batch (case-insensitive): zero matches. No groqChannels.batch* exists.
  • js/src/vendor-sdk-types/groq.ts — grepped for batch/Batch (case-insensitive): zero matches. No GroqBatch/GroqBatchJob type is modeled anywhere.
  • js/src/wrappers/groq.ts — wrapGroq()/groqProxy() (lines 74-205) proxies only chat.completions, embeddings, and audio.{speech,transcriptions,translations} (lines 80-167). A client's batches property is returned unwrapped through the top-level proxy's generic function-binding fallback (lines 169-201), so client.batches.create(...) produces no span: no submission span, no status/polling span, no per-request result spans.

This means a customer submitting client.batches.create({ endpoint: "/v1/chat/completions", completion_window: "24h", input_file_id }) — a fully supported, documented Groq API call — gets no trace in Braintrust whatsoever, while the same customer's synchronous chat.completions.create calls are fully traced with input, output, and token/timing metrics.

Braintrust docs status

not_found. https://www.braintrust.dev/docs/providers/groq documents only synchronous spans: "Chat completion spans... Embedding spans... Audio speech spans... Audio transcription spans... Audio translation spans," plus streaming and time_to_first_token behavior. No batch/async-job tracing is mentioned anywhere on the page.

Upstream sources

  • https://console.groq.com/docs/batch — Batch API guide: groq.batches.create() requires endpoint, completion_window ("24h" through "7d"), and input_file_id; supported endpoints are /v1/chat/completions, /v1/audio/transcriptions, /v1/audio/translations; status via groq.batches.retrieve(); results retrieved via groq.files.content(output_file_id).

Braintrust docs sources checked

Local repo files inspected

  • js/src/instrumentation/plugins/groq-plugin.ts — GroqPlugin.onEnable() (lines 37-172), full enumerated channel list
  • js/src/instrumentation/plugins/groq-interceptors.ts — grepped for batch/Batch, zero matches
  • js/src/vendor-sdk-types/groq.ts — grepped for batch/Batch, zero matches
  • js/src/wrappers/groq.ts — groqProxy() (lines 74-205), proxy coverage limited to chat.completions/embeddings/audio.*
Vorherrschende Sprache
TypeScript
Sterne
29
Forks
21
Ø Merge
1 T. 15 Std.
Gemergte PRs (30 T.)
76

Entwicklungsumgebung

  • Enthält ein Dockerfile oder eine Docker-Compose-Datei
  • Keine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus braintrustdata/braintrust-sdk-javascript

Alle Issues in braintrustdata/braintrust-sdk-javascript

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.