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

[bot] Cohere: Embed Jobs API (`client.embed_jobs.create()`) not instrumented

Offen
#623 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
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
68/100
Issue-Typ
Feature
Klarheit
Klar beschrieben
Aktivitätsstatus
Ruhig
Tech-Stack
python

Rechercherichtung

Beginne mit py/src/braintrust/integrations/cohere/patchers.py und integration.py und sieh dir anschließend die bestehenden Tests in py/src/braintrust/integrations/cohere/test_cohere.py an. Füge Abdeckung für die Cohere Embed Jobs-Methoden und ihre async-Entsprechungen hinzu und orientiere dich dabei an den bestehenden Instrumentierungsmustern. Als abgeschlossen gilt die Aufgabe, wenn die Joberstellung das angeforderte Dataset und die Model-Einstellungen sowie die Job-ID und den anfänglichen Status erfasst und Tests die neuen Spans abdecken.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bot-automation integration: cohere

Summary

The Cohere Python SDK's Embed Jobs API — client.embed_jobs.create() / client.embed_jobs.get() / client.embed_jobs.list() (and the AsyncClient equivalents) — is not instrumented. This is Cohere's bulk/batch embedding execution surface: it launches an async job that reads a Dataset of type embed-input, runs the configured embedding model (model, input_type, embedding_types) over every record, and writes the resulting vectors to a new embed-output Dataset. It is the async, large-scale counterpart to the synchronous client.embed() call, which is instrumented.

Calls to client.embed_jobs.create() fall through uninstrumented today — the Cohere integration only patches BaseCohere/AsyncBaseCohere (chat, chat_stream, embed, rerank) and the v2 client and audio transcription client. No patcher touches the embed_jobs resource, so job creation produces zero Braintrust tracing (no span for the submitted job, its model/config, or its terminal status).

What is missing

Cohere method Instrumented?
client.chat() / client.chat_stream() (v1 + v2) Yes
client.embed() (v1 + v2) Yes
client.rerank() (v1 + v2) Yes
client.audio.transcriptions.create() Yes
client.embed_jobs.create() No
client.embed_jobs.get() No
AsyncClient.embed_jobs.create() No

At minimum, instrumentation should create a span for embed_jobs.create() capturing:

  • Input: dataset ID, model, input_type, embedding_types, job name/truncate settings
  • Output: job ID and initial status (processing/complete/failed)
  • Metadata: model name, dataset reference

This mirrors the pattern already accepted for the analogous async-batch-execution gaps in sibling integrations: OpenAI Batch API (#295), Google GenAI Batch API (#332), and Mistral Batch Jobs API (#272) — this is the same class of gap (an async, job-based generative-execution API that bypasses the wrapper) applied to Cohere's bulk embeddings surface.

Braintrust docs status

not_found — The Cohere integration page documents only: chat completion spans (cohere.chat / cohere.chat_stream), tool call spans, embedding spans (cohere.embed), rerank spans (cohere.rerank), and audio transcription spans (cohere.audio.transcriptions.create). Embed Jobs, batch/bulk embeddings, the Classify API, and the v1 generate() endpoint are not mentioned anywhere on the page.

Upstream sources

Local files inspected

  • py/src/braintrust/integrations/cohere/patchers.py — defines ChatPatcher, ChatStreamPatcher, EmbedPatcher, RerankPatcher (+ async/v2 variants) and TranscriptionsCreatePatcher/AsyncTranscriptionsCreatePatcher; no embed_jobs patcher of any kind
  • py/src/braintrust/integrations/cohere/integration.py — CohereIntegration.patchers registers only the five patchers above; embed_jobs is absent from the registry
  • py/src/braintrust/integrations/cohere/tracing.py — no embed_job wrapper functions exist
  • py/src/braintrust/integrations/cohere/test_cohere.py — no test cases reference embed_jobs
  • Repo-wide search for embed_job/embedjob (case-insensitive) returns zero matches outside this issue

Relationship to existing issues

Distinct from #488 (Cohere v1 generate()/generate_stream()) and #343 (Cohere Classify API) — both already open and unrelated to Embed Jobs. Same class of gap as the already-filed provider Batch API issues (#295, #332, #272), applied to a surface (Cohere Embed Jobs) none of those cover.

Vorherrschende Sprache
Python
Sterne
22
Forks
24
Ø Merge
16 Std.
Gemergte PRs (30 T.)
101

Entwicklungsumgebung

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-python

Alle Issues in braintrustdata/braintrust-sdk-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

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