Modernize Python/TensorFlow CI and add example smoke tests#83
Merged
shenweichen merged 8 commits intomasterfrom Apr 18, 2026
Merged
Modernize Python/TensorFlow CI and add example smoke tests#83shenweichen merged 8 commits intomasterfrom
shenweichen merged 8 commits intomasterfrom
Conversation
Delete the paragraph describing examples' `main(smoke=False, show=True)` signature and CI executing examples in smoke mode. The note was outdated or redundant and has been removed to tidy the README.
This was referenced Apr 18, 2026
Closed
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR modernizes the project's TensorFlow compatibility, CI matrix, examples, and smoke-test coverage.
tf-kerasandTF_USE_LEGACY_KERAS.LINEandSDNEto use publictensorflow.kerasAPIs.deepctr.main()entry points with lightweight smoke mode.examples/*.py.Extended description
The previous CI matrix attempted broad TensorFlow coverage through version combinations that are no longer consistently installable across supported Python versions. This PR replaces that setup with an explicit compatibility matrix covering TensorFlow 1.15.5, 2.10, 2.15, and 2.20 on supported Python versions. It also updates GitHub Actions dependencies and adds version-specific install handling for NumPy, protobuf, and legacy Keras.
The TensorFlow-backed models are updated to avoid private Keras imports and compatibility-sensitive helper dependencies.
LINEnow uses TensorFlow-native reduction and loss helpers instead ofdeepctr, whileSDNEnow avoids NumPy operations on symbolic tensors and uses publictensorflow.kerasAPIs.The example scripts are also made easier to validate. Each example now exposes a
main()entry point and supports a smoke mode that uses smaller graphs, fewer epochs, and reduced embedding dimensions. This allows CI to import and run the examples without requiring full training, plotting, or evaluation runs.Package metadata and docs are updated alongside the code changes. TensorFlow is exposed as an optional
tfextra, test dependencies are grouped under atestextra, Python support is clarified as>=3.7, and the README now uses a modern editable install command.Resolved issues
Resolved by this PR:
Related but not closed by this PR:
tf-gpu1.5 / cuBLAS runtime failure, which is outside the updated support matrix.Notes