Uploading a Model
A model can be uploaded from an authorised repository via the UI, with just a couple of clicks. As standard, TRAC integrates with four of the most popular repo’s but custom integrations are also possible.
But What is a ‘Model’?
A TRAC MODEL ASSET
In TRAC a model asset consists of a queries or discrete units of code in an authorised repository, plus the internal representation of that code, which consists of the model schema and other descriptive metadata.
LANGUAGES
TRAC does not use a proprietary modelling language. It can accept and orchestrate models written in several common open-source languages such as Python, Spark, R, Java, Scala and SQL. Models in different languages can be combined in a single Flow or Job.
GRANULARITY
A model is the smallest unit of code which is independently governed or subject to change control. Complex, composite models (e.g. an IFRS9 impairment calculation) should represented as a Flow, with the individual components (e.g. LGD or EAD) being the models.
ALSO EVERYTHING IS A MODEL!
Any unit of code stored in a repository which TRAC can access is a ‘model’. This could be things which you consider to be ‘models’ under to your model governance framework, but they could also be monitoring tests, calibrations scripts or other forms of analytics you want to run in a controlled manner.
MODEL VERSIONING
Tied to a Commit ID in your model repository, each model object in TRAC corresponds to one immutable version of the model code. TRAC retains a complete history of all changes and can always recover every prior version of the model that has been exposed on the platform.
Using Models in Virtual Deployments
Models can be used to launch a single-model Job or incorporated into a Flow to create a more complex ‘virtual’ deployment which can then be used to launch its own Job. The model code is fetched from the repository every time it is needed for a Job.