Skip to main content

Model Code Approval Process

TANGO Library Model Code contains the collection of models (codebase plus model weights). This is adequate, e.g., for pre-trained models ready to be consumed by third party applications, taking advantage of the TANGO features while abstracting clients from complexities related to hardware allocation, deployment issues and/or inner model complexity.

Contribution prerequites

The pre-requisites for inclusion in the TANGO Library are the following ones:

  • Publication: The candidate util or model code for inclusion must be published in a public Git repository. This repository must be accessible to the TANGO community and other potential users, ensuring transparency and ease of access.
  • Licensing: The library must be released under Apache v2 licence.
  • Documentation: Comprehensive and detailed documentation must accompany the library. This documentation should cover the library's purpose, functionality, installation instructions and usage examples. Proper documentation is critical to enable users to understand and utilize the library effectively.

Specifically, to be an eligible part of the Model Code, the following pre-requisites must be satisfied:

  • The model implements the TangoModel interface provided by the TANGO Library;
  • The model implements the interfaces needed by the hosting MLOps platform:
    • The TANGO Ecosystem provides default implementation for deploying the model on MLFlow and Databricks environments: in this case, implementing the mlflow.pyfunc.PythonModel interface guarantees full integration with the platform;
    • In case an extra MLOps platform is needed, follow dedicated instruction (TBD).

Use the template

To refactor your already existing code, you can follow guidance provided by the TANGO Model Template available on GitLab.com as explained in this page.

Evaluation process

The process will include the following steps.

Submitting a Merge Request

The requester (who must be a maintainer of the library/tool for which the inclusion is requested) must submit a merge request (MR) to the public documentation repository of the TANGO Ecosystem.

This MR should include:

  • The addition of the library to the list of approved libraries.
  • A concise yet detailed description of the library's purpose, features, and potential benefits for TANGO users.
  • A link to the library's Git repository (licensed undes Apache v2).
  • A link to the library's documentation to ensure users can access detailed information about the library's usage and capabilities.

Community Discussion and Review

The submitted merge request serves as the starting point for a public community discussion. During this phase, the library/tool maintainer commits to engage with the TANGO community, providing reasons for the library's inclusion and addressing any feedback or concerns raised. The goal is to convince the TANGO community of the library's utility and relevance to the ecosystem.

Final Review and Decision

After 30 days from the MR, a TANGO platform maintainer will conduct a final review of the library after the community discussion. If the maintainer determines that the library aligns with the TANGO Ecosystem's goals and meets the established standards, the merge request will be accepted, officially validating the library. If the library does not meet the criteria, the merge request will be rejected, and the maintainer will receive feedback on the reasons for rejection. This qualification and acceptance process ensures that only high-quality and relevant tools become part of the TANGO Library, maintaining its value as a resource for the TANGO platform and its users.

Monitoring the process

The process can be monitored based on its approval status.

Possible statuses include:

  • Submitted
  • Under Discussion
  • Waiting for Clarification
  • Final Review
  • Accepted
  • Rejected