Repository navigation
feat(python): expose decision call steps - #913
Conversation
Signed-off-by: nachiketb <nachiketb@nvidia.com>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review. WalkthroughThe Python API now supports decision-classifier configuration and exposes Rust decision calls as Python stream steps. Python code can inspect each call and submit a response or failure. ChangesPython decision-call support
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to The decision-call API is mergeable after normal checks; no actionable issue is established by the supplied evidence. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
A rabbit checks the stream at dawn, Comment |
Python hosts currently raise
NotImplementedErrorwhen an algorithm requests a decision. This exposesStep.CallDecisionso a host can read the request and target, then return a response or client error.Closes SWITCH-1695.
How
DecisionCallwithalgorithm,request,model,respond, andfail. Requests and responses use the existing dictionary conversion helpers and the neutral Decision Model protocol.TaskClassifierConfig.decision(...)to select the existing relative-advantage judge from Python, using Rust's default routing and fallback settings.run_streamreturn type.Independent of #907; this uses the protocol, driver, and classifier already on main.
Validation
tests/test_libsy_minimal_bindings.pypassed.Summary by CodeRabbit