SIG TFX-Addons is a community-led open source project. As such, the project depends on public contributions, bug fixes, and documentation. This project adheres to the TensorFlow Code of Conduct. By participating, you are expected to uphold this code.
The maintainers of TensorFlow Addons can be found in the CODEOWNERS file of the repo. If you would like to maintain something, please feel free to submit a PR. We encourage multiple owners for all submodules.
TFX Addons is available on PyPI for all OS. To install the latest version, run the following:
pip install tfx-addons
To ensure you have a compatible version of dependencies for any given project, you can specify the project name as an extra requirement during install:
pip install tfx-addons[feast_examplegen,schema_curation]
To use TFX Addons:
from tfx import v1 as tfx
import tfx_addons as tfxa
- tfxa.mlmd_client
- tfxa.schema_curation
- tfxa.feast_examplegen
- tfxa.xgboost_evaluator
- tfxa.sampling
- tfxa.message_exit_handler
See examples/
for end-to-end examples of various addons.
TFX Addons has been designed to compartmentalize submodules so that they can be maintained by community users who have expertise, and a vested interest in that component. We heavily encourage users to submit sign up to maintain a submodule by submitting your username to the CODEOWNERS file.
Full write access will only be granted after substantial contribution has been made in order to limit the number of users with write permission. Contributions can come in the form of issue closings, bug fixes, documentation, new code, or optimizing existing code. Submodule maintainership can be granted with a lower barrier for entry as this will not include write permissions to the repo.
We encourage any developers working in production ML environments, infrastructure, or applications to join and participate in the activities of the SIG. Whether you are working on advancing the platform, prototyping or building specific applications, or authoring new components, templates, libraries, and/or orchestrator support, we welcome your feedback on and contributions to TFX and its tooling, and are eager to hear about any downstream results, implementations, and extensions.
We have multiple channels for participation, and publicly archive discussions in our user group mailing list:
- [email protected] โ Google group for SIG TFX-Addons
- [email protected] โ our general mailing list for TFX
- TFX Addons Slack - Our shared slack workspace (join here )
Other Resources
- SIG Repository: http://github.com/tensorflow/tfx-addons (this repo)
- Documentation: https://www.tensorflow.org/tfx
- SIG Charter: https://github.com/tensorflow/community/blob/master/sigs/tfx-addons/CHARTER.md
Meeting cadence:
- Bi-weekly on Wednesday. Meeting notes
Components may become less and less useful to the community and TFX examples might become outdated as future TFX versions are released. In order to keep the repository sustainable, we'll be performing bi-annual reviews of our code to ensure everything still belongs within the repo. Contributing factors to this review will be:
- Number of active maintainers
- Amount of issues or bugs attributed to the code
- If a better solution is now available
Functionality within TFX Addons can be categorized into three groups:
- Suggested: well-maintained components and examples; use is encouraged.
- Discouraged: a better alternative is available; the API is kept for historic reasons; or the components and examples require maintenance and is the waiting period to be deprecated.
- Deprecated: use at your own risk; subject to be deleted.
The status change between these three groups is: Suggested <-> Discouraged -> Deprecated.
The period between an API being marked as deprecated and being deleted will be 90 days. The rationale being: In the event that TFX Addons releases monthly, there will be 2-3 releases before an API is deleted. The release notes could give user enough warning. 90 days gives maintainers ample time to fix their code.
- Project proposals will be submitted to the SIG and published for open review and comment by SIG members for 2 weeks.
- Following review and approval by the Google TFX team, core team members will vote either in person or offline on whether to approve or reject project proposals.
- All projects must meet the following criteria:
- Team members must be named in the proposal
- All team members must have completed a Contributor License Agreement
- The project must not violate the TensorFlow Code of Conduct, Google AI Principles or Responsible AI Practices.
- Projects must code to supported open interfaces only, and not reach into core TFX to make changes or rely on private classes, methods, properties, or interfaces.
- Google retains the right to reject any proposal.
- Projects must first be approved by the Google team. Projects are then sent for approval to the core community team. Projects will be approved with a minimum of three
+1
votes, but can be sent for changes and re-review with a single-1
vote.