Commit graph

209 commits

Author SHA1 Message Date
Yujong Lee
cc6ca5ee04 Merge origin/main into litellm_valkey_semantic_native_cache
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:32:33 +00:00
Yujong Lee
a5571333fb refactor(cache-valkey-semantic): reuse cache-redis connection layer
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:25:22 +00:00
Yujong Lee
2b257bd9a3 feat(cache-redis): expose the pooled connection handling for reuse
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:23:28 +00:00
Yujong Lee
769917a7e8 revert(rust-wheel): restore release optimization
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:22:15 +00:00
Yujong Lee
4509eb9914 fix(cache): align native semantic cache scope keys
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:22:01 +00:00
Yujong Lee
96224f1c0f fix(cache-redis): fan cluster PING out to every node and skip pool return pings
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:11:22 +00:00
Yujong Lee
0d09e9d892 fix(rust-wheel): reduce native extension size
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:04:57 +00:00
Yujong Lee
83d4ce05c9 feat(rust-cache): serve RedisClusterCache natively as a Redis topology
Extend cache-redis so RedisTopology::Cluster routes single-key commands by
hash slot, groups pipelines by slot while keeping reply order, scans and
scoped-flushes every primary, and fans admin commands out to all nodes.
The bridge projects RedisClusterCache startup_nodes into the typed topology,
accepts the exact RedisClusterCache identity, guards nodes_manager state,
and falls back to Python for anything it cannot project.

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:49:21 +00:00
Yujong Lee
56237af7a9 test(cache): add Valkey semantic contract coverage
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:42:41 +00:00
Yujong Lee
4db3481244 feat(python-bridge): serve ValkeySemanticCache natively
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:33:32 +00:00
Yujong Lee
1f86bb8e46 feat(cache-valkey-semantic): add native Valkey semantic cache backend
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:24:34 +00:00
Yujong Lee
df97b274fc refactor(cache-response): generalize ResponseCache over the backend context
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:21:19 +00:00
Yujong Lee
d2f457f144 feat(cache): add semantic cache context and unsupported operation error
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:20:31 +00:00
Yujong Lee
991108cc48 refactor(rust): align cache foundation with Python backends 2026-09-21 12:50:21 -07:00
Yujong Lee
efcafa7f12 fix(rust): invalidate changed Redis pool settings 2026-09-21 12:30:17 -07:00
Yujong Lee
14febcc878 fix(rust): shrink cache configuration bridge 2026-09-21 12:22:18 -07:00
Yujong Lee
59dbbe5ce7 fix(cache): outline Python configuration extraction 2026-09-21 12:10:06 -07:00
Yujong Lee
cda8904382 fix(cache): keep native wheel within size budget 2026-09-21 12:03:13 -07:00
Yujong Lee
a7bc8e373e feat(cache): project Python backend configuration 2026-09-21 11:56:04 -07:00
Yujong Lee
22995d1575 fix(cache): remove redundant source comments 2026-09-21 11:23:47 -07:00
Yujong Lee
1b6b704ddd refactor(cache): keep native foundation isolated 2026-09-21 11:15:44 -07:00
Yujong Lee
595711829a wip 2026-09-21 10:30:42 -07:00
Yujong Lee
dc5f0c58a4 feat(cache): add native backend operation primitives 2026-09-21 10:21:54 -07:00
Yujong Lee
ef14fdaf33 fix(cache): harden native foundation parity 2026-09-21 09:53:41 -07:00
Yujong Lee
da402b8aee fix(cache): preserve batch callback contracts 2026-09-21 08:27:17 -07:00
Yujong Lee
9783b7a377 docs(cache): align native cache follow-up scope 2026-09-21 07:56:58 -07:00
Yujong Lee
cc8cadebb4 fix(cache): close native parity gaps 2026-09-21 07:56:20 -07:00
Yujong Lee
0c3a0a2089 refactor(cache): separate response policy and host selection 2026-09-20 21:11:48 -07:00
Yujong Lee
081c93908f feat(cache): add native response cache and Python binding foundations 2026-09-20 20:55:45 -07:00
Yujong Lee
95cf7066d1 refactor(cache): use static dispatch and typed backend codecs 2026-09-20 20:38:13 -07:00
Yujong Lee
e3f69fc4d8 refactor(rust): define consistent secret lookup contracts 2026-09-20 19:08:25 -07:00
Yujong Lee
82bc67b122 feat(rust): add typed secret managers and shared auth adapters 2026-09-20 16:09:20 -07:00
Yujong Lee
3fd2dd635b refactor(rust): split auth facade from shared types 2026-09-20 15:45:38 -07:00
Yujong Lee
661da87c91 fix(rust): validate tokenizer ranks and cover backend features 2026-09-20 15:13:59 -07:00
Yujong Lee
56c5d31e73 test(rust): run fast token counter parity tests by default
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-20 21:52:48 +00:00
Yujong Lee
831810248a refactor(rust): keep the Python token counter on the fast backend
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-20 21:49:39 +00:00
Yujong Lee
a619b765fc refactor(rust): simplify tokenizer bridge features
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-20 21:25:19 +00:00
Yujong Lee
9b2b3d0b90 refactor(rust): align tokenizer docs and lint
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-20 21:21:52 +00:00
Yujong Lee
84c26978a3 refactor(rust): split token counter backends 2026-09-20 14:10:31 -07:00
Yujong Lee
ad8ac449fc style(rust): format renamed callback adapter
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 23:08:37 +00:00
Yujong Lee
df84fef96e refactor(rust): rename legacy callback adapter crate
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 23:06:26 +00:00
yujonglee
d675c1285b
Merge pull request #41987 from BerriAI/litellm_rust_fork_safety
fix(rust): refuse native routes in processes forked after the runtime started
2026-09-19 13:47:54 -07:00
Yujong Lee
8c21a988b7 fix(ocr): set DeepSeek OCR sampling defaults
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 18:31:49 +00:00
Yujong Lee
cc23e5781e refactor(rust): drop a comment that repeats the reserve doc
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 18:22:06 +00:00
Yujong Lee
38fa8a7f55 fix(rust): leave the fork gate untouched when a late reservation is refused
reserve() stored fork_only_pid before noticing the runtime already ran under that pid, so a refused reservation still reserved the process: the next enter() cleared the runtime claim and children forked afterwards inherited a dead runtime and hung. Undo the reservation on the error path so the gate is exactly as it was.

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 18:21:32 +00:00
Yujong Lee
752647d146 wip 2026-09-19 10:41:41 -07:00
Yujong Lee
bb44fe5292 wip 2026-09-19 10:36:59 -07:00
yujonglee
bd82d73ca1
Merge pull request #41981 from BerriAI/litellm_rust_typed_pyo3
refactor(rust): use typed pyo3 APIs instead of getattr/import strings
2026-09-19 10:09:34 -07:00
Yujong Lee
619a19b8a2 refactor(rust): use typed pyo3 APIs instead of getattr/import strings
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 16:46:34 +00:00
Yujong Lee
eb502824f0 fix stuff 2026-09-19 09:32:46 -07:00