Building-ML-Pipelines / building-machine-learning-pipelines

Code repository for the O'Reilly publication "Building Machine Learning Pipelines" by Hannes Hapke & Catherine Nelson
MIT License
583 stars 250 forks source link

Why Infra Validator Component is not even covered? #42

Closed dbustosp closed 3 years ago

dbustosp commented 3 years ago

Hi! I want to congrats you for the book. Nice reading and well explained. I am designing a ML platform for the company I work for and I am using TFX. I just wanted to ask you a question, why does InfraValidator is not covered? Is there any reason behind?

Thanks!

hanneshapke commented 3 years ago

Hi @selknamintech,

The InfraValidator component was just released when we finalized the draft. It basically didn't make the cut. We were able to squeeze in a section about the Tuner component. Adding more components would have delayed the production schedule of the book.

The InfraValidator component is great! It is very useful if your model size fluctuates or you are concerned about hardware limitations.

dbustosp commented 3 years ago

@hanneshapke

Thanks for your kind answer! I agree with you and digging deeper around the official documentation is not complete yet, at least that is what they say here. I will do some POCs with this component to see if is worth it to include it as part of the standard ML pipeline at this point.

Thanks!

hanneshapke commented 3 years ago

@selknamintech I wish the component would allow a latency validation as part of the infravalidation. Btw, the TFX code contains often useful comments and examples, which might be missing in an early documentation. Here is the code example from the doc string: https://github.com/tensorflow/tfx/blob/master/tfx/components/infra_validator/component.py#L39

dbustosp commented 3 years ago

@hanneshapke

I actually got very excited and made it work today using Interactive, Airflow and Beam. I got an error though :(

I submitted an issue here: https://github.com/tensorflow/tfx/issues/2914

If you have time and take a look at will be very helpful. I got confused about the behaviour of this component.