Interactive topic model visualization and interpretation library for Python, compatible with sklearn, Gensim, BERTopic, and Turftopic.
Topicwizard is a Python library for visualizing and interpreting topic models, which are used to discover abstract topics within a collection of documents. It provides interactive web applications and composable Plotly figures to explore relationships between topics, words, documents, and groups, helping users understand and communicate their topic modeling results.
Data scientists, NLP researchers, and developers working with topic modeling who need to interpret and visualize model outputs for analysis or client presentations.
Developers choose Topicwizard for its broad compatibility with popular topic modeling libraries (sklearn, Gensim, BERTopic, Turftopic), its opinionated yet pretty visualizations, and its easy deployment options for sharing results.
Powerful topic model visualization in Python
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports sklearn, Gensim, BERTopic, and Turftopic via compatibility layers, allowing users to visualize outputs from diverse topic modeling libraries without rewriting code.
The easy_deploy() function generates a Docker folder for seamless deployment to Hugging Face Spaces or cloud platforms, simplifying sharing of interactive dashboards.
Launches a local web application with pages for topics, words, documents, and groups, enabling intuitive exploration of model relationships through clickable visualizations.
Provides customizable Plotly figures (e.g., word maps, timelines) that can be modified and saved as HTML, offering flexibility for research papers or reports.
Version 1.0.0 introduced backwards incompatibility with old TopicData files, requiring manual updates or potential data loss when upgrading.
Serialization and deployment depend on consistent package versions (e.g., scikit-learn, BERTopic), which can lead to errors when sharing across different environments.
Without precomputing UMAP projections via precompute_positions(), initial app loads can be slow for large corpora, impacting user experience in deployments.