Open-source nlp software
1574 open-source libraries, tools and applications tagged nlp, ranked by how closely nlp is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1574 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| minimaxir/aitextgen aitextgen is a Python library for training and generating text with GPT-2 and GPT Neo models, built on PyTorch, Hugging Face Transformers, … | 23 | 1836 | maintenance |
| huichen/sego sego is a Go library for Chinese word segmentation using a double-array trie dictionary and a shortest-path-plus-dynamic-programming algori… | 32 | 1821 | maintenance |
| ysc/word A Java distributed Chinese word segmentation library offering multiple dictionary-based segmentation algorithms with ngram-based disambigua… | 32 | 1816 | maintenance |
| maoruibin/TranslateApp An Android app called GuDong Translate that provides instant 'copy-to-translate' functionality: it monitors the clipboard and shows transla… | 10 | 1816 | maintenance |
| Trusted-AI/AIX360 AI Explainability 360 is an open-source Python library from IBM Research offering a comprehensive set of algorithms for interpreting and ex… | 65 | 1806 | maintenance |
| yongzhuo/Keras-TextClassification A Keras-based library for Chinese text classification supporting long/short text, multi-label classification, and sentence pair similarity.… | 23 | 1806 | maintenance |
| DQinYuan/chinese_province_city_area_mapper A Python library (pip package 'cpca') that extracts province, city, and district names from simplified Chinese address strings and maps the… | 32 | 1793 | maintenance |
| bazingagin/npc_gzip A Python library and research codebase implementing the parameter-free 'kNN-gzip' text classification method from the ACL 2023 paper, which… | 20 | 1781 | maintenance |
| ttengwang/Caption-Anything Caption-Anything combines Segment Anything image segmentation, visual captioning, and ChatGPT to generate tailored captions for any object … | 31 | 1777 | maintenance |
| impira/docquery DocQuery is a Python library and CLI tool that uses large language models to answer questions about semi-structured and unstructured docume… | 32 | 1774 | maintenance |
| salesforce/ALBEF Official PyTorch implementation of ALBEF, a vision-and-language pre-training method that aligns image and text representations before fusin… | 10 | 1754 | maintenance |
| deepset-ai/FARM FARM is a Python framework for fine-tuning and evaluating transformer-based language models for NLP tasks, with a focus on question answeri… | 10 | 1753 | maintenance |
| rspeer/wordfreq wordfreq is a Python library that provides word frequency data for over 40 languages, drawn from multiple corpus sources. It offers functio… | 23 | 1751 | maintenance |
| dav/word2vec The original Google word2vec tool, hosted on GitHub with community patches for Mac OS X compilation and memory fixes. It efficiently trains… | 32 | 1740 | maintenance |
| Franck-Dernoncourt/NeuroNER NeuroNER is a Python/TensorFlow program that performs named-entity recognition (NER) using neural networks, with pretrained models and an e… | 23 | 1726 | maintenance |
| madmom Madmom is a Python audio signal processing library with a strong focus on music information retrieval (MIR) tasks. It provides reference im… | 52 | 1724 | maintenance |
| allenai/scibert SciBERT is a BERT-based pretrained language model trained on a large multi-domain corpus of scientific publications, released by the Allen … | 32 | 1716 | maintenance |
| strob/gentle Gentle is a robust yet lenient forced aligner built on Kaldi that aligns audio speech with a known text transcript. It can be used as a Mac… | 62 | 1710 | maintenance |
| i-Code Microsoft's i-Code is a collection of research models and frameworks for integrative, composable multimodal AI spanning vision, language, a… | 32 | 1704 | maintenance |
| Graph4NLP Graph4NLP is a Python library for applying Graph Neural Networks to Natural Language Processing tasks, built on DGL and PyTorch. It provide… | 23 | 1690 | maintenance |
| zlwaterfield/scramble Scramble is an open-source browser extension that uses LLMs to enhance writing directly on any webpage, acting as a customizable Grammarly … | 32 | 1688 | maintenance |
| hightman/xunsearch Xunsearch is a free open-source Chinese full-text search engine built in C/C++ on Xapian and SCWS, with a PHP SDK. It provides indexing/sea… | 63 | 1685 | maintenance |
| eyurtsev/kor Kor is a Python library for extracting structured data from text using large language models. Users define a schema (Kor-style or Pydantic)… | 22 | 1684 | maintenance |
| hightman/scws SCWS (Simple Chinese Word Segmentation) is a dictionary-based mechanical Chinese word segmentation engine written in pure C, with no extern… | 25 | 1678 | maintenance |
| FoolNLTK FoolNLTK is a Python toolkit for Chinese natural language processing built on a BiLSTM model. It provides high-accuracy word segmentation, … | 32 | 1677 | maintenance |
| plasticityai/magnitude Magnitude is a Python package and file format for fast, memory-efficient loading and querying of vector embeddings like word2vec, GloVe, an… | 23 | 1673 | maintenance |
| notwaldorf/emoji-translate A JavaScript library and web app that translates English text into emoji, powered by the emojilib keyword dataset. It also ships as a Chrom… | 23 | 1660 | maintenance |
| google-research/pegasus PEGASUS is Google Research's implementation of transformer encoder-decoder models pre-trained with the Gap Sentences Generation objective f… | 10 | 1658 | maintenance |
| CyberPunkMetalHead/Binance-News-Sentiment-Bot A Python trading bot that analyzes news headlines from the top 100 crypto news feeds and places Binance buy/sell orders based on sentiment … | 32 | 1652 | maintenance |
| jasonwei20/eda_nlp EDA (Easy Data Augmentation) is a Python library implementing four simple text augmentation operations—synonym replacement, random insertio… | 32 | 1651 | maintenance |
| imfuxiao/Hamster Hamster (仓输入法) is an iOS third-party keyboard app that embeds the Rime Input Method Engine (librime) for highly customizable Chinese text i… | 28 | 1637 | maintenance |
| znck/grammarly A VS Code extension that brings Grammarly-powered grammar and spelling checking into the editor via a Language Server Protocol implementati… | 10 | 1632 | maintenance |
| moses-smt/mosesdecoder Moses is a statistical machine translation (SMT) system that trains translation models from parallel corpora and decodes with efficient phr… | 25 | 1624 | maintenance |
| timoschick/pet Official implementation of Pattern-Exploiting Training (PET), a semi-supervised method that reformulates text classification and natural la… | 32 | 1622 | maintenance |
| allenai/bilm-tf A TensorFlow implementation of the bidirectional language model (biLM) used to compute ELMo deep contextualized word representations. It su… | 32 | 1609 | maintenance |
| Delta-ML/delta DELTA is a deep learning based end-to-end natural language and speech processing platform built on TensorFlow and Python 3. It provides one… | 10 | 1606 | maintenance |
| boudinfl/pke pke is an open-source Python toolkit for keyphrase extraction that provides an end-to-end pipeline where each component (candidate selectio… | 23 | 1592 | maintenance |
| tmikolov/word2vec The original C implementation of word2vec, which trains word embeddings using the Continuous Bag-of-Words (CBOW) and Skip-gram neural netwo… | 32 | 1590 | maintenance |
| liuhuanyong/CrimeKgAssitant A Chinese legal intelligence application built around a crime knowledge graph covering 856 crime types. It provides crime type prediction f… | 32 | 1589 | maintenance |
| PrithivirajDamodaran/Gramformer Gramformer is a Python library that exposes interfaces to detect, highlight, and correct grammatical errors in natural language text, built… | 23 | 1583 | maintenance |
| project-yuki/YUKI YUKI is an open-source Galgame (visual novel) translator built with Electron and Vue that extracts text from running games via Windows APIs… | 23 | 1582 | maintenance |
| madisonmay/CommonRegex A Python library bundling common regular expressions for extracting entities like dates, times, emails, phone numbers, links, IP addresses,… | 32 | 1581 | maintenance |
| TsinghuaAI/CPM-1-Generate CPM-Generate provides inference code for CPM-LM, a 2.6B-parameter Chinese pre-trained language model based on the GPT-2 architecture and Me… | 32 | 1579 | maintenance |
| vturrisi/solo-learn solo-learn is a Python library of state-of-the-art self-supervised methods for unsupervised visual representation learning, built on PyTorc… | 62 | 1578 | maintenance |
| vlawhern/arl-eegmodels A collection of well-validated convolutional neural network models (EEGNet, DeepConvNet, ShallowConvNet) for EEG signal classification, imp… | 32 | 1565 | maintenance |
| bfelbo/DeepMoji DeepMoji is a deep learning model trained on 1.2 billion tweets with emojis to understand emotional language, with code for scoring texts, … | 32 | 1556 | maintenance |
| Tencent/TurboTransformers A fast, user-friendly C++/Python runtime for transformer model inference (BERT, ALBERT, RoBERTa, GPT2, decoders) on CPU and GPU. It works a… | 34 | 1551 | maintenance |
| dandelin/ViLT Official PyTorch code for the ICML 2021 paper ViLT, a vision-and-language transformer that performs multimodal pre-training without convolu… | 23 | 1537 | maintenance |
| yongzhuo/nlp_xiaojiang A Chinese natural language processing toolkit covering retrieval-based chatbots, text classification, NER (BERT+BiLSTM+CRF), sentence embed… | 32 | 1532 | maintenance |
| crownpku/Rasa_NLU_Chi A Chinese-language fork of Rasa NLU that turns Chinese natural language into structured intent and entity data using MITIE, Jieba tokenizat… | 32 | 1530 | maintenance |
| beyondcode/writeout.ai A self-hosted Laravel web application that transcribes uploaded audio files using OpenAI's Whisper API and translates the transcripts via t… | 68 | 1527 | maintenance |
| NLPchina/nlp-lang A Java base library from NLPchina that packages common utilities used across NLP projects, such as trie/double-array trie structures, word … | 63 | 1507 | maintenance |
| king-yyf/CMeKG_tools A collection of pretrained models and Python code for the Chinese Medical Knowledge Graph (CMeKG), providing medical text segmentation, med… | 32 | 1505 | maintenance |
| nlpyang/BertSum BertSum is the official PyTorch implementation of the paper 'Fine-tune BERT for Extractive Summarization', providing preprocessing pipeline… | 32 | 1505 | maintenance |
| facebookresearch/UnsupervisedMT The original implementation of phrase-based (PBSMT) and neural (NMT) unsupervised machine translation models from the EMNLP 2018 paper by F… | 10 | 1500 | maintenance |
| konlpy/konlpy KoNLPy is a Python package for Korean natural language processing, providing wrappers around Korean morphological analyzers like Mecab, Han… | 23 | 1493 | maintenance |
| wit-ai/pywit pywit is the official Python SDK for Wit.ai, Facebook's natural language processing platform. It provides a Wit client class for extracting… | 64 | 1488 | maintenance |
| Hironsan/anago anaGo is a Python library for sequence labeling tasks such as named entity recognition, part-of-speech tagging, and semantic role labeling,… | 23 | 1482 | maintenance |
| Image Captioning A PyTorch research codebase for image captioning, supporting self-critical sequence training, bottom-up features, transformer captioning mo… | 32 | 1477 | maintenance |
| matthewmueller/date A JavaScript library that parses English-language date and time expressions like 'tomorrow at 3pm' or '10 minutes from now' into JavaScript… | 32 | 1476 | maintenance |
| Marian NMT Marian is an efficient Neural Machine Translation framework written in pure C++ with minimal dependencies, supporting fast multi-GPU traini… | 23 | 1474 | maintenance |
| liuhuanyong/TextGrapher A Python library that extracts key information (high-frequency words, keywords, named entities, subject-verb-object phrases) from a documen… | 32 | 1471 | maintenance |
| fossasia/susi_alexa_skill An Amazon Alexa skill that connects Alexa-enabled devices to the Susi AI chatbot, letting users ask questions like 'Alexa, ask Susi what is… | 10 | 1469 | maintenance |
| buppt/ChineseNER A simple Chinese named entity recognition (NER) implementation using BiLSTM+CRF in both TensorFlow and PyTorch. It includes training script… | 32 | 1464 | maintenance |
| fex-team/ua-device ua-device is a JavaScript library by Baidu's FEX team that parses User-Agent strings to extract browser, engine, OS, and hardware device in… | 32 | 1456 | maintenance |
| kakao/khaiii Khaiii (Kakao Hangul Analyzer III) is a data-driven Korean morphological analyzer developed by Kakao, using a CNN-based neural network mode… | 67 | 1453 | maintenance |
| microsoft/NeuronBlocks NeuronBlocks is an NLP deep learning modeling toolkit from Microsoft that lets users build end-to-end neural network training and inference… | 23 | 1453 | maintenance |
| dmmiller612/bert-extractive-summarizer A Python library for extractive text summarization using BERT embeddings via HuggingFace transformers. It embeds sentences, clusters them, … | 23 | 1451 | maintenance |
| 3Top/word2vec-api A simple Python web service that exposes word embedding models (Word2Vec/GloVe) via an HTTP API built on Gensim. It serves similarity, most… | 32 | 1436 | maintenance |
| hungtraan/FacebookBot A Facebook Messenger chatbot ('Optimist Prime') that supports voice recognition, natural language processing, and contextual follow-up conv… | 32 | 1433 | maintenance |
| SamLynnEvans/Transformer A PyTorch implementation of the Transformer seq2seq model designed to build language translators from parallel corpora. It accompanies a tu… | 32 | 1430 | maintenance |
| zhihao-chen/QASystemOnMedicalGraph A medical-domain knowledge graph question answering system built in Python with Neo4j, containing ~37k entities and ~210k relations scraped… | 32 | 1428 | maintenance |
| rmokady/CLIP_prefix_caption Official implementation of ClipCap, a CLIP-based image captioning model that maps CLIP image encodings to a GPT-2 prefix to generate captio… | 32 | 1423 | maintenance |
| obra/Youtube2Webpage A Perl CLI script that converts a YouTube video into a static webpage pairing a transcript generated from closed captions with timestamped … | 31 | 1422 | maintenance |
| chiphuyen/sotawhat A Python CLI script that crawls arXiv for papers matching a keyword and returns summarized abstracts with title, author, date, and link. It… | 23 | 1421 | maintenance |
| vas3k/TaxHacker TaxHacker is a self-hosted AI-powered accounting app for freelancers, indie-hackers, and small businesses. It uses LLMs to OCR and analyze … | 82 | 6729 | experimental |
| SKTBrain/KoBERT KoBERT is a Korean BERT language model pre-trained on Korean Wikipedia by SK Telecom, distributed as a Python package with PyTorch, ONNX, a… | 40 | 1420 | maintenance |
| arguman/arguman.org Arguman.org is an open-source, community-driven argument analysis and mapping platform built with Django. Users collaboratively map content… | 32 | 1419 | maintenance |
| thunlp/ERNIE ERNIE is a PyTorch toolkit and dataset for augmenting pre-trained language models like BERT with knowledge graph entity representations, fr… | 32 | 1417 | maintenance |
| cdpierse/transformers-interpret A Python library providing model explainability for Hugging Face Transformers models, built on Captum. It explains text classification, que… | 23 | 1416 | maintenance |
| eschluntz/compress A Python tool that analyzes a corpus of your own writing to find common n-grams and suggest text-expansion abbreviations ranked by characte… | 32 | 1413 | maintenance |
| Dragonfire Dragonfire is an open-source virtual assistant for Ubuntu-based Linux distributions, combining speech recognition, text-to-speech, and NLP … | 23 | 1408 | maintenance |
| neo4j/NaLLM NaLLM is a demo application from Neo4j exploring synergies between Neo4j graph databases and Large Language Models. It provides a backend A… | 10 | 1404 | maintenance |
| facebookresearch/end-to-end-negotiator A PyTorch research codebase from Facebook AI Research implementing end-to-end learning for negotiation dialogues, including models for hier… | 10 | 1400 | maintenance |
| swapagarwal/JARVIS-on-Messenger JARVIS-on-Messenger is a community-driven Python chatbot for Facebook Messenger that answers everyday user queries through a simple module-… | 23 | 1393 | maintenance |
| Maluuba/nlg-eval A Python library and CLI tool that computes unsupervised automated metrics (BLEU, METEOR, ROUGE, CIDEr, SPICE, SkipThought, and embedding-b… | 23 | 1392 | maintenance |
| facebookresearch/LAMA LAMA is a research probe for analyzing the factual and commonsense knowledge stored in pretrained language models such as BERT, RoBERTa, GP… | 10 | 1392 | maintenance |
| yao8839836/text_gcn The official implementation of Text GCN, a Graph Convolutional Network approach for text classification published at AAAI 2019. It builds w… | 32 | 1390 | maintenance |
| zhanlaoban/EDA_NLP_for_Chinese A Python implementation of the EDA (Easy Data Augmentation) paper adapted for Chinese text corpora. It augments labeled text classification… | 32 | 1381 | maintenance |
| Glench/fuzzyset.js A JavaScript data structure for fuzzy string matching that finds likely misspellings and approximate matches against a set of strings. It u… | 32 | 1377 | maintenance |
| nishiwen1214/ChatReviewer ChatReviewer is a Python application built on the ChatGPT API that analyzes academic papers, summarizing their strengths and weaknesses and… | 31 | 1377 | maintenance |
| Zemberek-NLP Zemberek-NLP is a Java library providing natural language processing tools for Turkish, including morphological analysis, tokenization, spe… | 76 | 1368 | maintenance |
| RimoChan/unvcode A Python library that replaces characters in a string with visually similar Unicode homoglyphs, producing text that looks identical but has… | 32 | 1365 | maintenance |
| Talon Talon is a Python library from Mailgun that extracts reply quotations and signatures from email messages, both plain text and HTML. It comb… | 100 | 1346 | maintenance |
| chizhu/KGQA_HLM A knowledge-graph-based question answering and visualization system for character relationships in the Chinese classic novel 'Dream of the … | 32 | 1339 | maintenance |
| SHI-Labs/Versatile-Diffusion Versatile Diffusion is the official PyTorch implementation of a unified multi-flow multimodal diffusion model that handles text-to-image, i… | 32 | 1332 | maintenance |
| yangxuanxc/wechat_friends A Python application that analyzes WeChat friend data (gender, location, signatures, nicknames, avatars) and visualizes it with charts, map… | 32 | 1327 | maintenance |
| belerweb/pinyin4j A Java library for converting Chinese characters to pinyin romanization, republished from SourceForge to Maven Central. It adds polyphonic … | 40 | 1326 | maintenance |
| myth984/wechat-report A Vue-based web app that generates a personalized annual report from WeChat chat history, including word clouds and statistics. It requires… | 32 | 1318 | maintenance |
| lda-project/lda A Python library implementing latent Dirichlet allocation (LDA) topic modeling via collapsed Gibbs sampling, with a scikit-learn-style API.… | 32 | 1314 | maintenance |