Skip to content

Add Clef Omni audio and video support - #86

Merged
CollierKing merged 1 commit into
mainfrom
feat/clef-omni
Oct 11, 2026
Merged

CollierKing merged 1 commit into
mainfrom
feat/clef-omni

Conversation

@CollierKing

Copy link
Copy Markdown
Collaborator

Adds @cf/cloudflare/clef-omni to CloudflareWorkersAIDecisionModel, with optional embedded audio and videos alongside text, JSON, and images. Synchronous REST, asynchronous REST, and Python Worker AI bindings use the existing adapter paths and preserve native answers, probabilities, and token usage. Older Clef models reject audio/video arguments before transport, and the /decision Worker example forwards the new fields.

Adds shared synthetic fixtures for square/circle videos, open/closed speech, video soundtracks, and mixed image/audio/video requests in both supported encodings. Documents media formats and limits, and bumps langchain-cloudflare to 0.4.2 with changelog and lockfile updates.

Validation:

  1. Omni REST decision tests: 40 passed, covering sync/async calls with default run options.
  2. Omni Python Worker decision tests: 40 passed, covering default and reject_if_busy options.
  3. Unit tests: 378 passed, 2 skipped.
  4. make lint (Ruff, formatting, mypy), pre-commit run --all-files, and git diff --check: passed.

Both integration selections ran without retries or expected failures. REST validation uses default options because Cloudflare's existing native Clef REST validator rejects options.rejectIfBusy with HTTP 422; that limitation remains unchanged.

@CollierKing
CollierKing merged commit 84fa723 into main Oct 11, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant