[bot] Groq Batch API (`client.batches`) is not instrumented
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
- Bereich
- devtools, observability
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
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. Nobatch-related channel exists in the file.js/src/instrumentation/plugins/groq-interceptors.ts— grepped forbatch/Batch(case-insensitive): zero matches. NogroqChannels.batch*exists.js/src/vendor-sdk-types/groq.ts— grepped forbatch/Batch(case-insensitive): zero matches. NoGroqBatch/GroqBatchJobtype is modeled anywhere.js/src/wrappers/groq.ts—wrapGroq()/groqProxy()(lines 74-205) proxies onlychat.completions,embeddings, andaudio.{speech,transcriptions,translations}(lines 80-167). A client'sbatchesproperty is returned unwrapped through the top-level proxy's generic function-binding fallback (lines 169-201), soclient.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()requiresendpoint,completion_window("24h"through"7d"), andinput_file_id; supported endpoints are/v1/chat/completions,/v1/audio/transcriptions,/v1/audio/translations; status viagroq.batches.retrieve(); results retrieved viagroq.files.content(output_file_id).
Braintrust docs sources checked
- https://www.braintrust.dev/docs/providers/groq
- https://www.braintrust.dev/docs/guides/tracing/integrations
Local repo files inspected
js/src/instrumentation/plugins/groq-plugin.ts—GroqPlugin.onEnable()(lines 37-172), full enumerated channel listjs/src/instrumentation/plugins/groq-interceptors.ts— grepped forbatch/Batch, zero matchesjs/src/vendor-sdk-types/groq.ts— grepped forbatch/Batch, zero matchesjs/src/wrappers/groq.ts—groqProxy()(lines 74-205), proxy coverage limited tochat.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
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus braintrustdata/braintrust-sdk-javascript
-
typescript
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
braintrustdata/braintrust-sdk-javascript#2685 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[bot] Cloudflare Workers AI `queueRequest` (batch) inference is explicitly excluded from tracingOffencloudflare typescript
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 30/100
braintrustdata/braintrust-sdk-javascript#2684 ·
Maintainer antworten meist innerhalb von 1 Tag
-
High TypeScript checking cost from generated Zod 3 schemasEvtl. vergeben @lforst hat das vor 14 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 22/100
braintrustdata/braintrust-sdk-javascript#2624 · 1 Kommentar · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
[bot] Instrument Luma AI (17,324 weekly downloads)Evtl. wieder frei Ein Pull Request dazu wurde ohne Merge geschlossen. Offentypescript
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
braintrustdata/braintrust-sdk-javascript#2578 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[bot] Instrument Letta Agent SDK (87,205 weekly downloads)Evtl. wieder frei Ein Pull Request dazu wurde ohne Merge geschlossen. Offentypescript
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
braintrustdata/braintrust-sdk-javascript#2577 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in braintrustdata/braintrust-sdk-javascript
Ähnliche Issues
-
fix(worker): keep normal prepare waiting states failure-freeEvtl. vergeben @LichKing-2234 hat das heute übernommen. Offenagent:codex priority:P1
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
AgoraIO-Extensions/agent-infra#3745 ·
Maintainer antworten meist innerhalb von 1 Tag
-
The five-line work window can drop its oldest line: the per-line byte share ignores the JSON framingEvtl. vergeben @Eapp1e hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
makecindy/cindy#7973 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
lingdojo/kana-dojo#33337 · 1 Kommentar · 5 Reaktionen ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
coder/xum#7733 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
code-yeongyu/senpi#4917 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag