Abstract
Due to the under-specified interfaces, developers face challenges in correctly integrating machine learning (ML) APIs in software. Even when the ML API and the software are well designed on their own, the resulting application misbehaves when the API output is incompatible with the software. It is desirable to have an adapter that converts ML API output at runtime to better fit the software need and prevent integration failures. In this paper, we conduct an empirical study to understand ML API integration problems in real-world applications. Guided by this study, we present SmartGear, a tool that automatically detects and converts mismatching or incorrect ML API output at run time, serving as a middle layer between ML API and software. Our evaluation on a variety of open-source applications shows that SmartGear detects 70% incompatible API outputs and prevents 67% potential integration failures, outperforming alternative solutions.
| Original language | English |
|---|---|
| Article number | 231 |
| Journal | Proceedings of the ACM on Programming Languages |
| Volume | 7 |
| Issue number | OOPSLA2 |
| DOIs | |
| State | Published - 16 Oct 2023 |
Keywords
- machine learning API
- run-time patching
- software integration failure
Fingerprint
Dive into the research topics of 'Run-Time Prevention of Software Integration Failures of Machine Learning APIs'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver