Software

topica

topica logo: the Greek letter theta

topica is an open-source Python library for topic modeling, built for social scientists. It brings together more than forty models usually split across JVM tools like MALLET and R packages like stm—including LDA, STM, CTM, keyATM, BERTopic, and a range of neural, dynamic, short-text, and embedding-based models—under a single NumPy-native interface. Because every model shares one set of diagnostics, labeling, validation, and covariate-effect tools, the workflow you learn for one applies across the roster, and structural models can relate topic prevalence and content to covariates with reported uncertainty. Fits are reproducible from a fixed seed and each model is validated against its reference implementation. The library installs as a single wheel that needs only NumPy and pandas: no JVM, no PyTorch. The source is on GitHub under an Apache 2.0 license, and the documentation includes a getting-started guide and worked examples.