Release Keras 3.15.1 · keras-team/keras · GitHub
//releases/show" data-turbo-transient="true" />
Skip to content
Type / to search
Sign in<br>Sign upAppearance settings
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
Uh oh!
There was an error while loading. Please reload this page.
keras-team
keras
Public
Notifications<br>You must be signed in to change notification settings
Fork<br>19.7k
Star<br>64.2k
Keras 3.15.1
Compare
Choose a tag to compare
Sorry, something went wrong.
Filter
Loading
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
No results found
View all tags
laxmareddyp
released this
29 Jul 18:25
v3.15.1
250b421
This commit was created on GitHub.com and signed with GitHub’s verified signature .
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.
Release Notes
Keras 3.15.1 is a patch release containing important security hardening, bug fixes, and Python 3.14 compatibility improvements.
Security Fixes
Restrict unpickling when loading IMDB and Reuters datasets — Prevents insecure deserialization (CWE-502) by replacing bare np.load(allow_pickle=True) with a restricted unpickler that only permits numpy array reconstruction. (#23047) by @LinZiyuu
Verify all intermediary H5 groups when navigating H5 files — Manually resolves nested H5 group paths to verify group types at each step, preventing potential path traversal issues. (#23168) by @hertschuh
Reject decompression-bomb members on the .keras asset extraction path — Adds per-member decompression-ratio checks before extracting .keras archives to disk, preventing disk-exhaustion attacks via crafted archives. (#23101) by @LinZiyuu
Restrict unpickling when loading CIFAR datasets — Replaces bare cPickle.load in CIFAR-10/100 batch loading with the numpy-only RestrictedUnpickler, blocking arbitrary code execution via pickle gadgets. (#23252) by @SABITHSAHEB
Bug Fixes
Refactor _load_state to capture weight store while preserving Keras test passing — Improves model loading efficiency by capturing the weight store into a local variable, and enhances nested container detection in legacy files with isolated failure tracking. (#23226) by @buildwithsuhana
Fix TraceContext error for NNX backend — Fixes TraceContext errors when using JAX NNX backend with models like T5 that lack a build method. Skips trace-level checks during symbolic shape inference and handles Flax 0.12 API changes. Fixes #23289. (#23326) by @divyashreepathihalli
Compatibility
Fixes for Python 3.14 — Resolves NotImplementedError boolean coercion changes in Python 3.14 and fixes dimension filtering in shape utilities. (#23259) by @hertschuh
Contributors
Thank you to all the contributors who made this release possible! 🎉
@LinZiyuu — Security hardening for IMDB, Reuters, and .keras asset extraction (#23047, #23101)
@hertschuh — H5 group verification, Python 3.14 compatibility (#23168, #23259)
@buildwithsuhana — Model loading refactor (#23226)
@SABITHSAHEB — CIFAR dataset pickle restriction (#23252)
@divyashreepathihalli — NNX backend TraceContext fix (#23326)
Full Changelog : v3.15.0...v3.15.1
Contributors
hertschuh, divyashreepathihalli, and 3 other contributors
Assets
Loading
Uh oh!
There was an error while loading. Please reload this page.
-->
👍<br>etiennelndr reacted with thumbs up emoji<br>❤️<br>leo-smi reacted with heart emoji
All reactions
👍<br>1 reaction
❤️<br>1 reaction
2 people reacted
You can’t perform that action at this time.