AIDynamo: enable LMCache#906
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Enterprise Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughConvert LMCache from embedded models to a template-rendered YAML propagation flow and add dse_excluded_args to exclude dot-path cmd_args from DSE sweeps; update command generation, shell orchestration, configs, docs, and tests accordingly. ChangesLMCache Configuration and DSE Exclusion Refactoring
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@src/cloudai/workloads/ai_dynamo/ai_dynamo.sh`:
- Around line 967-969: The line that declares and assigns storage_cache_dir
masks the exit status of the subshell call to lmcache_storage_cache_dir; change
the pattern used for storage_cache_dir to declare it first and assign it on the
next line so failures aren’t masked (e.g., keep local frontend_node and
frontend_ip as-is but for lmcache_storage_cache_dir use separate `local
storage_cache_dir` declaration then
`storage_cache_dir="$(lmcache_storage_cache_dir)"`), referencing the symbols
frontend_node, frontend_ip, and lmcache_storage_cache_dir to locate the code.
In `@tests/workloads/ai_dynamo/test_command_gen_strategy_slurm.py`:
- Line 267: The assertion is iterating over characters because result is a
string; update the check to tokenize the command string (use shlex.split(result)
or result.split()) and assert against tokens: replace the current
any(arg.startswith("--lmcache") for arg in result) with
any(arg.startswith("--lmcache") for arg in shlex.split(result)) (or
result.split()) so the test inspects arguments/tokens rather than characters.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Enterprise
Run ID: 0a40cf22-4c7f-45fe-b599-32214c7acdb6
📒 Files selected for processing (19)
conf/experimental/ai_dynamo/test/sglang.tomlconf/experimental/ai_dynamo/test/vllm.tomlconf/experimental/ai_dynamo/test_scenario/vllm_lmcache.tomldoc/USER_GUIDE.rstdoc/workloads/ai_dynamo.rstsrc/cloudai/_core/test_scenario.pysrc/cloudai/models/scenario.pysrc/cloudai/models/workload.pysrc/cloudai/workloads/ai_dynamo/__init__.pysrc/cloudai/workloads/ai_dynamo/ai_dynamo.pysrc/cloudai/workloads/ai_dynamo/ai_dynamo.shsrc/cloudai/workloads/ai_dynamo/slurm_command_gen_strategy.pytests/ref_data/ai-dynamo.sbatchtests/test_acceptance.pytests/test_cloudaigym.pytests/test_test_scenario.pytests/workloads/ai_dynamo/test_command_gen_strategy_slurm.pytests/workloads/ai_dynamo/test_json_gen_strategy_kubernetes.pytests/workloads/ai_dynamo/test_report_gen_strategy.py
💤 Files with no reviewable changes (3)
- tests/workloads/ai_dynamo/test_json_gen_strategy_kubernetes.py
- tests/test_acceptance.py
- tests/workloads/ai_dynamo/test_report_gen_strategy.py
Summary
excluded_dse_argsto disable sweeping on desired argumentsTest Plan
Additional Notes