[bot] Vercel AI SDK `experimental_generateSpeech` and `experimental_transcribe` not instrumented
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 55/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- typescript
調査の方向性
まず js/src/auto-instrumentations/configs/ai-sdk.ts にある既存の AI SDK エントリと、js/src/instrumentation/plugins/ai-sdk-channels.ts にあるチャネル定義を確認し、次に ai-sdk-plugin.ts のそれらの handler と ai-sdk-common.ts の型を追います。js/src/wrappers/ai-sdk/ai-sdk.ts の wrapper と既存の e2e シナリオを比較します。両方の実験的な関数が plugin と wrapper の経路を通じて Braintrust スパンを生成し、新しい動作をカバーするテストがある状態を完了とします。
索引モデルが issue の本文から書いたものです。
説明
Summary
The Vercel AI SDK (ai package) exports experimental_generateSpeech (text-to-speech) and experimental_transcribe (speech-to-text) as core functions. Neither the wrapper (wrapAISDK) nor the auto-instrumentation plugin instruments them. Calls to these functions produce no Braintrust spans.
Every other AI SDK core execution function — generateText, streamText, generateObject, streamObject, embed, embedMany, rerank, and the Agent class methods — is fully instrumented, making these the only uninstrumented generative execution functions in the AI SDK plugin.
What instrumentation is missing
- Auto-instrumentation config (
js/src/auto-instrumentations/configs/ai-sdk.ts): No config entries forexperimental_generateSpeechorexperimental_transcribe. Configs exist for 13 other AI SDK functions. - Channels (
js/src/instrumentation/plugins/ai-sdk-channels.ts): No channel definitions for speech generation or transcription. 14 channels are defined for other functions. - Plugin (
js/src/instrumentation/plugins/ai-sdk-plugin.ts): No handler for speech or transcription calls. - Vendor types (
js/src/vendor-sdk-types/ai-sdk-common.ts):AISDKNamespaceBasedoes not includeexperimental_generateSpeechorexperimental_transcribe.
A grep for generateSpeech or transcribe across js/src/ returns zero matches.
Upstream reference
Both functions are documented core exports of the ai package (v6+):
| Function | Description | Reference |
|---|---|---|
experimental_generateSpeech |
Converts text to speech audio using a SpeechModelV3. Accepts model, text, voice, outputFormat, instructions, speed, language. Returns generated audio as base64/Uint8Array with media type. |
https://ai-sdk.dev/docs/reference/ai-sdk-core/generate-speech |
experimental_transcribe |
Generates a text transcript from audio input using a TranscriptionModelV3. Accepts model, audio (string/Uint8Array/ArrayBuffer/URL). Returns transcript text, segments with timing, detected language, and duration. |
https://ai-sdk.dev/docs/reference/ai-sdk-core/transcribe |
Both are imported from 'ai' (the same package instrumented by this repo) and are available in AI SDK v6, which is already instrumented for other functions (ToolLoopAgent.generate, ToolLoopAgent.stream).
Note: Both carry the experimental_ prefix, indicating the API surface may evolve. However, they are documented, functional, and available in the same SDK version that this repo already instruments for other v6-only features.
Braintrust docs status
not_found — The Braintrust AI SDK integration docs do not enumerate specific supported functions. generateSpeech and transcribe are not mentioned.
Precedent in this repo
- AI SDK
generateImageis tracked as a separate gap in #1626. - OpenAI audio APIs (
audio.speech.create,audio.transcriptions.create) are tracked in #1629. - Mistral audio APIs are tracked in #1749.
- Groq audio APIs are tracked in #1864.
- The AI SDK plugin already instruments 13 other core functions across text generation, structured output, embeddings, reranking, and agent execution — speech/transcription is the remaining uninstrumented modality.
Local files inspected
js/src/auto-instrumentations/configs/ai-sdk.ts— no speech/transcribe configsjs/src/instrumentation/plugins/ai-sdk-channels.ts— no speech/transcribe channelsjs/src/instrumentation/plugins/ai-sdk-plugin.ts— no speech/transcribe handlersjs/src/vendor-sdk-types/ai-sdk-common.ts— no speech/transcribe typesjs/src/wrappers/ai-sdk/ai-sdk.ts— no speech/transcribe wrappinge2e/scenarios/ai-sdk-instrumentation/— no speech/transcribe test scenarios
- 主要言語
- TypeScript
- スター
- 27
- フォーク
- 13
- 平均マージ
- 2日 23時間
- マージ済み PR(30日)
- 67
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
braintrustdata/braintrust-sdk-javascript のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 65/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 56/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 68/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 58/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
braintrustdata/braintrust-sdk-javascript の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
mksglu/context-mode#1200 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
anthropics/claude-code#96687 ·
-
good first issue
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
AOSSIE-Org/DebateAI#582 · コメント 2 件 ·