Conversation
|
note: no need to change the tutorial notebooks code, since notebooks do not use uv. the notebooks will continue using pip install as currently |
| ] | ||
|
|
||
| [tool.uv] | ||
| conflicts = [ |
There was a problem hiding this comment.
Is there a better way to handle the conflicts? see my question in the main discussion regarding that
|
One unique aspect of granite-switch is the fact that it's an infra library and should work with different environments.
|
just tested the uv branch on CCC and it worked out of the box. as a matter of fact the non uv branch did not work for me out of the box on CCC. But i only tried the HF dependency, not vllm. |
My suggestion is this:
So [tool.uv] goes from 6 conflict pairs down to 1: [dependency-groups] [tool.uv] |
|
@aviv1ron1 Thanks for looking into it. Couple of thoughts:
|
|
@antonpibm I am addressing all you comments: What this branch changesMigrates dependency management from pip extras to uv dependency groups in Before: pip install -e ".[hf,vllm,compose]"After: uv sync --group dev # vllm 0.19.x
uv sync --group dev-vllm20 # vllm 0.20.xWhat was testedThe full test suite was run on a GPU cluster (4× GPU, Python 3.12) against both supported vllm versions, using
Known failure
The failure is not related to the ConclusionThe The |
…check (#45) (#109) The audio cascade truncated the transcript to a context-derived per-clip budget (asr_generation_reserve_tokens held back for the answer). When that reserve met or exceeded the served max_model_len, the budget floored to 1 token: the model saw no question and refused, with no error (#45). Rather than patch the truncation math, remove it. The transcript is now spliced into the prompt in full, as ordinary text tokens. A request whose prompt + transcript(s) can't leave room for the answer within max_model_len is rejected by vLLM's standard prompt-length check (HTTP 400) — the same loud failure text-only requests already get, instead of a silent 1-token transcript. This also makes audio behave identically to long text. Details: - Remove asr_generation_reserve_tokens entirely (config field + validation, compose CLI flag, processor accessor). It only existed to size the old truncation budget. - Drop the budget param / ids[:budget] truncation in the processor; splice the full transcript. - get_mm_max_tokens_per_item now reports max(1, seq_len // count) — the honest worst-case transcript positions one clip can occupy. This still sizes vLLM's encoder cache correctly (embed_multimodal emits one row per transcript token); it is a profiling hint, not a request bound. - Remove the now-dead audio_token_budget helper and its tests. Tests updated; docs/AUDIO.md rewritten to describe reject-not-truncate. Co-authored-by: aviv ron <rona@il.ibm.com>
…check (#45) (#109) The audio cascade truncated the transcript to a context-derived per-clip budget (asr_generation_reserve_tokens held back for the answer). When that reserve met or exceeded the served max_model_len, the budget floored to 1 token: the model saw no question and refused, with no error (#45). Rather than patch the truncation math, remove it. The transcript is now spliced into the prompt in full, as ordinary text tokens. A request whose prompt + transcript(s) can't leave room for the answer within max_model_len is rejected by vLLM's standard prompt-length check (HTTP 400) — the same loud failure text-only requests already get, instead of a silent 1-token transcript. This also makes audio behave identically to long text. Details: - Remove asr_generation_reserve_tokens entirely (config field + validation, compose CLI flag, processor accessor). It only existed to size the old truncation budget. - Drop the budget param / ids[:budget] truncation in the processor; splice the full transcript. - get_mm_max_tokens_per_item now reports max(1, seq_len // count) — the honest worst-case transcript positions one clip can occupy. This still sizes vLLM's encoder cache correctly (embed_multimodal emits one row per transcript token); it is a profiling hint, not a request bound. - Remove the now-dead audio_token_budget helper and its tests. Tests updated; docs/AUDIO.md rewritten to describe reject-not-truncate. Co-authored-by: aviv ron <rona@il.ibm.com> Signed-off-by: Bar Haim <barha@il.ibm.com>
This PR switches the project from pip/venv to uv for dependency management.
What changed:
CUDA note: the vllm/vllm20 extra split already handles the CUDA 12 vs 13 version requirement — the lockfile is universal and does not tie to a specific CUDA environment.