Pytea, un analyseur d'erreur de forme du tenseur du tenseur pytorch, est conçu pour scanner statiquement les applications Pytorch et détecter les erreurs de forme possibles en analysant les chemins d'exécution et les contraintes de forme tensor. Cependant, Pytea peut avoir du mal avec certaines API Pytorch si elles ne sont pas entièrement implémentées ou prises en charge dans son cadre.
L'analyse de Pytea peut soulever de fausses alarmes si le code contient Pytorch ou d'autres API tierces qui n'ont pas été implémentées. Cela signifie que si Pytea rencontre un appel API non implémenté, il peut le signaler à tort comme une erreur ou émettre un avertissement. L'outil enregistre chaque appel d'API non implémenté dans ses journaux, permettant aux utilisateurs d'identifier les API spécifiques ne sont pas prises en charge [10].
De plus, l'efficacité de Pytea peut être limitée par la complexité du code qu'il analyse. Par exemple, si le code implique des opérations complexes ou des contraintes non linéaires difficiles à gérer pour le solveur SMT (Z3), Pytea pourrait classer ces cas comme «indécidables» et le délai d'attente [10]. Cependant, des API Pytorch spécifiques avec lesquelles Pytea lutte n'est pas explicitement répertoriée, mais toutes les opérations non implémentées ou trop complexes pourraient poser des défis.
Citations:[1] https://arxiv.org/pdf/2112.09037.pdf
[2] https://stackoverflow.com/questions/59158044/installing-a-specific-pytorch-build-f-e-cpu-ingly-with-poetry
[3] https://pytorch.org/docs/stable/func.ux_limitations.html
[4] https://pytorch.org/docs/stable/torch.compiller_fine_grain_apis.html
[5] https://pytorch.org/functorch/stable/ux_limitations.html
[6] https://discuss.pytorch.org/t/survey-what-are-you-using-the-c-api-for/55163
[7] https://docs.habana.ai/en/latest/pytorch_customop_api/page_index.html
[8] https://discuss.pytorch.org/t/is-there-an-elegant-way-to-calculate-integral-image-using-pytorch-api/22669
[9] https://www.altexsoft.com/blog/pytorch-library/
[10] https://github.com/ropas/pytea