Helping AI practitioners better understand their datasets and models in text classification. From ServiceNow.
Azimuth, an open-source dataset and error analysis tool for text classification, with love from ServiceNow.
Overview
Azimuth is an open source application that helps AI practitioners and data scientists better understand their dataset and model predictions by performing thorough dataset and **error analyses**. The application leverages different tools, including robustness tests, semantic similarity analysis and saliency maps, unified by concepts such as smart tags and **proposed actions. It currently only supports text classification use cases**.
Published Paper at EMNLP
Our paper was accepted as a system demo at EMNLP 2022. It is available here.
Documentation
Our documentation contains all the instructions and references to use Azimuth.
contains all the instructions to install and launch the app.- Key Concepts explains the different
- User Guide goes screen per screen to
- Reference details the config file and the
- Development guides on how to develop and
YouTube Playlist
Run Our Demo
After installing the requirements, as explained in Installation, run the following command to run the demo. More details in Learn Basics.
pip install gdown
make download_demo
make CFG_PATH=/config/development/clinc/conf.json launch
Once the startup tasks are completed, you will be able to access Azimuth at http://localhost:8080. To learn more about Azimuth's features, refer to our Key Concepts and our User Guide.
To use your own dataset and models, please refer to Run on Your Use Case.
How to Contribute?
Refer to our CONTRIBUTING.md.
Code Documentation
At different places in the code, you'll find README files explaining further how the back end works. Don't hesitate to add other README files in appropriate places, and don't forget to edit them if you change these components.
- In azimuth, explaining the main back-end components.
- In azimuth/modules, explaining how modules work.
- In azimuth/routers, explaining how to add new routes.
Repo Structure
โโโ azimuth # Back End
โย ย โโโ modules
โย ย โย ย โโโ Where core capabilities are implemented
โย ย โโโ plots
โย ย โย ย โโโ Plotting functions
โย ย โโโ routers
โย ย โย ย โโโ FastAPI routers
โย ย โโโ types
โย ย โย ย โโโ Specific pydantic types that this application is based on
โย ย โโโ utils
โย ย โย ย โโโ Extra utilities
โโโ azimuth_shr
โย ย โโโ Custom code that is shareable.
โโโ config
โย ย โโโ Config files for different data/models
โโโ docs
โย ย โโโ User documentation
โโโ tests
โย ย โโโ Unit/integration tests
โโโ webapp
โย ย โโโ Front End
โโโ docker-compose.yml # Where the config and images are specified.
โโโ docker-compose-gpu.yml # Extension to use Azimuth with gpus.
โโโ runner.py # Application entrypoint.
Contact
To contact us, join our slack or send us an email!
License
The package is licensed by ServiceNow, Inc. under the Apache 2.0 license. See LICENSE for more details.