tika-python VS contextualized-topic-models

Compare tika-python vs contextualized-topic-models and see what are their differences.


Tika-Python is a Python binding to the Apache Tika™ REST services allowing Tika to be called natively in the Python community. (by chrismattmann)


A python package to run contextualized topic modeling. CTMs combine contextualized embeddings (e.g., BERT) with topic models to get coherent topics. Published at EACL and ACL 2021. (by MilaNLProc)
Our great sponsors
  • SonarQube - Static code analysis for 29 languages.
  • talent.io - Download talent.io’s Tech Salary Report
  • Scout APM - Truly a developer’s best friend
tika-python contextualized-topic-models
4 6
1,199 929
- 2.0%
0.0 6.5
7 months ago 7 days ago
Python Python
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of tika-python. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-07-19.
  • Document Parsing - an unsolved problem?
    5 projects | reddit.com/r/LanguageTechnology | 19 Jul 2022
    At my previous job we had the same problem which we solved by using Tika. We called it on the server along with other stuff, but there is also a Python binding.
  • Extract text from PDF
    7 projects | reddit.com/r/Python | 2 Nov 2021
    Hey, I’ve spent quite a bit of time looking at extracting text as accurately as possibly from PDFs, it’s turns out that it is not as simple as it might seem. It is especially tricky once you get a wide variety of PDFs (including PDFs with image based text or tables). While I unfortunately cannot share the code I used to extract this text, I will tell you that for what I think your doing, the best solution will require a few things. First you should pick a good module. I’ve spent a long time going over open source solutions to this and the best two I’d say are Excalibur and Apache Tika .
    7 projects | reddit.com/r/Python | 2 Nov 2021
    Tika is from Apache so yes its original code base is Java but it has bindings in other languages. Checkout Tika-Python!
  • Extract text from documents
    5 projects | dev.to | 27 Mar 2021
    The Textractor instance is the main entrypoint for extracting text. This method is backed by Apache Tika, a robust text extraction library written in Java. Apache Tika has support for a large number of file formats: PDF, Word, Excel, HTML and others. The Python Tika package automatically installs Tika and starts a local REST API instance used to read extracted data.


Posts with mentions or reviews of contextualized-topic-models. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-02-15.
  • Using Transformer for Topic Modeling - what are the options?
    2 projects | reddit.com/r/LanguageTechnology | 15 Feb 2022
    This library from MILA seems quite neat! I haven’t had the change to play with it though : https://github.com/MilaNLProc/contextualized-topic-models
  • (NLP) Best practices for topic modeling and generating interesting topics?
    3 projects | reddit.com/r/MLQuestions | 31 May 2021
    If you use CTM, you can provide the topic model two inputs: the preprocessed texts (that will be used by the topic model to generate the topical words) and the unpreprocessed texts (to generate the contextualized representations that will be later concatenated to the document bag-of-word representation). We saw that this slightly improves the performance instead of providing BERT the already-preprocessed text. This feature is supported in the original implementation of CTM, not in OCTIS. See here: https://github.com/MilaNLProc/contextualized-topic-models#combined-topic-model
    3 projects | reddit.com/r/MLQuestions | 31 May 2021
    My team and I have recently released a python library called OCTIS (https://github.com/mind-Lab/octis) that allows you to automatically optimize the hyperparameters of a topic model according to a given evaluation metric (not log-likelihood). I guess, in your case, you might be interested in topic coherence. So you will get good quality topics with a low effort on the choice of the hyperparameters. Also, we included some state-of-the-art topic models, e.g. contextualized topic models (https://github.com/MilaNLProc/contextualized-topic-models).
  • Latest trends in topic modelling?
    3 projects | reddit.com/r/LanguageTechnology | 24 Apr 2021
    Cross-lingual Contextualized Topic Models with Zero-shot Learning from a team at MilaNLP which uses bag of words representations in combination with multi lingual embeddings from SBERT and works like a VAE (encode the input, use the encoded representation to decode back to a bag of words as close to the input as possible). Using SBERT embeddings makes their model generalise for other languages which may be useful. One major shortfall of this model as I understand is that it can't deal with long documents very elegantly - only up to BERT'S word limit (the workaround is to truncate and use the first words)

What are some alternatives?

When comparing tika-python and contextualized-topic-models you can also consider the following projects:

BERTopic - Leveraging BERT and c-TF-IDF to create easily interpretable topics.

EasyOCR - Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.

txtai - 💡 Build AI-powered semantic search applications

py-pdf-parser - A Python tool to help extracting information from structured PDFs.

OCTIS - OCTIS: Comparing Topic Models is Simple! A python package to optimize and evaluate topic models (accepted at EACL2021 demo track)

PolyFuzz - Fuzzy string matching, grouping, and evaluation.

paperai - 📄 🤖 AI-powered literature discovery and review engine for medical/scientific papers

layout-parser - A Unified Toolkit for Deep Learning Based Document Image Analysis

transformers - 🤗 Transformers: State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.

Machine-Learning-Cyrillic-Classifier - This is a web app where you can draw a letter in the russian alphabet and the ML algorithm will predict the letter that you drew.

paperetl - 📄 ⚙️ ETL processes for medical and scientific papers

unrpa - A program to extract files from the RPA archive format.