ci(release): package parakeet-server alongside parakeet-cli - #30
Merged
Conversation
parakeet-server (examples/server, the OpenAI-compatible HTTP server) already builds in the release workflow — PARAKEET_BUILD_SERVER defaults ON and the configure step never disables it — but the Package steps only copy parakeet-cli, so it never reaches the release assets. Package it into the bin- bundles for every (platform, backend) pair, with a --help usage smoke test, the same way llama.cpp / whisper.cpp ship llama-server / whisper-server. BUILD_SHARED_LIBS=OFF keeps it a single self-contained binary like the CLI, so no extra libraries are bundled.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The release workflow already builds
parakeet-server(examples/server, the OpenAI-compatible HTTP server) on every tag —PARAKEET_BUILD_SERVERdefaultsONand the configure step never disables it — but thePackagesteps copy onlyparakeet-cli, so the server never reaches the release assets.This packages
parakeet-serverinto thebin-bundles for every(platform, backend)pair (Linux cpu/vulkan/cuda x64 + cpu arm64, macOS metal arm64 + cpu x64, Windows cpu/vulkan/cuda x64), adds a--helpusage smoke test next to the existing CLI one, and sets-DPARAKEET_BUILD_SERVER=ONexplicitly so the intent is clear and robust to a future default change.BUILD_SHARED_LIBS=OFFkeeps it a single self-contained binary like the CLI, so nothing extra is bundled.Why
parakeet-serveris the natural way to run Parakeet as a managed local STT service over a stable HTTP contract (POST /v1/audio/transcriptions, single model, one request at a time) — the same downstream valuellama.cppandwhisper.cppship asllama-server/whisper-server: a download-and-run server you can supervise and talk to over the OpenAI-compatible API, without compiling from source or pulling a container image. Follow-up to #21 (pre-built binaries) and #25 (C-API lib bundles).Notes
bin-bundle as the CLI (two self-contained binaries per bundle). Happy to split it into separateparakeet-server-…bundles instead if you'd rather keep one binary per bundle — just say which you prefer.parakeet-serverbuilds and runs (usage: parakeet-server --model … [--host] [--port] [--threads N] …, servesPOST /v1/audio/transcriptions). The change here is purely packaging an already-built target.workflow_dispatchto confirm the bundles attach before merge if that's useful.