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 |
|---|---|---|---|
| persian-tools/persian-tools A comprehensive, zero-dependency TypeScript toolkit with 27+ utilities for Persian (Farsi) text, numbers, and Iranian-specific validation s… | 66 | 1212 | active |
| kb A collection of single-header, permissively-licensed C/C++ libraries in the stb style. Its main library, kb_text_shape.h, provides Unicode … | 63 | 1210 | active |
| juliasilge/tidytext tidytext is an R package that applies tidy data principles to text mining, providing functions like unnest_tokens to convert text to and fr… | 62 | 1205 | stable |
| matthiasn/lotti Lotti is a private, local-first logbook app for journaling, task management, time tracking, habits, and health data, with a staff of person… | 99 | 1200 | active |
| deepseek-ai/DeepSeek-VL DeepSeek-VL is an open-source vision-language foundation model for real-world multimodal understanding, released with model weights and inf… | 26 | 4183 | maintenance |
| huggingface/Math-Verify A Python library from Hugging Face for robustly parsing and verifying mathematical expressions, designed to evaluate Large Language Model o… | 47 | 1197 | active |
| iDC-NEU/YiGraph YiGraph is an LLM-driven agent system for autonomous graph data analytics built on the Analytics-Augmented Generation (AAG) framework. It e… | 64 | 1192 | active |
| jncraton/languagemodels A Python library providing simple building blocks for running large language models locally with as little as 512MB of RAM. It offers instr… | 57 | 1189 | active |
| chakki-works/seqeval seqeval is a Python library for evaluating sequence labeling tasks such as named-entity recognition, part-of-speech tagging, and semantic r… | 23 | 1188 | stable |
| mlfoundations/open_flamingo OpenFlamingo is an open-source PyTorch implementation of DeepMind's Flamingo, a large multimodal vision-language model that interleaves ima… | 23 | 4114 | maintenance |
| grangier/python-goose Python-Goose is a Python library that extracts the main body text, metadata, top image, and embedded videos from news article web pages. It… | 61 | 4106 | maintenance |
| yanyiwu/simhash A C++ header-only library that computes Simhash fingerprints for Chinese documents, using CppJieba for tokenization and keyword extraction.… | 61 | 1171 | stable |
| SuperBruceJia/EEG-DL EEG-DL is a deep learning library built on TensorFlow for classifying EEG signals, supporting many architectures including CNNs, RNNs, GCNs… | 43 | 1171 | active |
| OpenKE OpenKE is an open-source PyTorch-based toolkit for knowledge graph embedding (knowledge representation learning), with C++ accelerated data… | 32 | 4053 | maintenance |
| PyThaiNLP PyThaiNLP is a Python library for Thai natural language processing, offering tokenization, POS tagging, transliteration, soundex, spell cor… | 98 | 1161 | active |
| Libr-AI/OpenFactVerification Loki is an open-source Python tool that automates fact verification by decomposing texts into claims, retrieving evidence via search, and u… | 16 | 1159 | active |
| jkwill87/mnamer mnamer is a Python command-line utility that parses media filenames for metadata, queries online providers like TVDb, TvMaze, TMDb, and OMD… | 91 | 1156 | active |
| suifengqjn/videoWater AI快剪 (videoWater) is a desktop application for fully automated batch video editing, built in Go. It bundles clipping, merging, watermarking… | 32 | 1154 | active |
| baidu/lac LAC (Lexical Analysis of Chinese) is Baidu's deep-learning-based Chinese lexical analysis toolkit that jointly performs word segmentation, … | 23 | 4001 | maintenance |
| liujuntao123/smart-mermaid Smart Mermaid is an AI-powered web application that converts natural language text into Mermaid diagram code and renders it as visual chart… | 38 | 1151 | active |
| AndyTheFactory/newspaper4k Newspaper4k is a Python library and CLI for scraping and curating news articles, extracting text, titles, authors, publish dates, and metad… | 78 | 1149 | active |
| textlint-ja/textlint-rule-preset-ai-writing A textlint rule preset that detects AI-generated writing patterns in Japanese text and suggests more natural phrasing. It can also run as a… | 69 | 1149 | active |
| brightmart/albert_zh A repository providing pre-trained ALBERT models for Chinese language, implemented in TensorFlow with PyTorch and Keras conversions. It inc… | 32 | 3984 | maintenance |
| Snips NLU Snips NLU is a Python library (with a Rust core) that extracts structured meaning from natural language text by detecting user intents and … | 23 | 3974 | maintenance |
| ttttccxxui/DataInfra-RedactionEverything A local-first redaction workbench that detects and anonymizes sensitive information in documents, scanned PDFs, images, Word files, and pla… | 57 | 1143 | active |
| facebookresearch/StarSpace StarSpace is a general-purpose neural model from Facebook Research that learns entity embeddings for classification, retrieval, ranking, an… | 10 | 3955 | maintenance |
| Lingua Lingua is a language detection library for Python (with a Rust core) that identifies which of 75 languages a text is written in. It is desi… | 82 | 1140 | active |
| vec2text/vec2text A Python library for text embedding inversion: training and running models that reconstruct text sequences from their sentence embeddings. … | 54 | 1140 | active |
| mrphrazer/reverser_ai ReverserAI is a Binary Ninja plugin that provides automated reverse engineering assistance using locally-hosted large language models runni… | 63 | 1139 | active |
| rockbenben/subtitle-translator A free, browser-based batch subtitle translation tool for .srt, .ass, .vtt, and .lrc files that strips timing locally and sends only dialog… | 85 | 1136 | active |
| WojciechMula/pyahocorasick A Python module (implemented as a C extension with a pure-Python fallback) implementing the Aho-Corasick algorithm for fast multi-pattern s… | 69 | 1126 | stable |
| AdaptiveMotorControlLab/CEBRA CEBRA is a Python library for self-supervised learning of consistent latent embeddings from high-dimensional time-series recordings, using … | 87 | 1121 | active |
| MatchZoo MatchZoo is a Python toolkit for designing, comparing, and sharing deep text matching models. It provides a unified data pipeline, pre-buil… | 23 | 3849 | maintenance |
| Kieirra/murmure Murmure is a privacy-first, open-source desktop speech-to-text application that transcribes voice entirely on-device using NVIDIA's Parakee… | 83 | 1114 | active |
| index-labs/readpilot Read Pilot is a web application that analyzes online articles and generates Q&A cards from them using OpenAI models. It is built with Next.… | 60 | 1111 | active |
| PyABSA PyABSA is a PyTorch-based library providing state-of-the-art models for aspect-based sentiment analysis, including aspect term extraction, … | 67 | 1105 | active |
| appsfolder/livebridge LiveBridge is a Flutter Android app with native Kotlin logic that converts regular notifications into Android 16+ Live Updates, providing a… | 68 | 1104 | active |
| wilpel/caveman-compression A Python tool that compresses text for LLM contexts by stripping predictable grammar while preserving factual content, reducing token usage… | 38 | 1103 | active |
| wtetsu/mouse-dictionary Mouse Dictionary is a super fast browser extension that shows dictionary definitions instantly when you select or hover over words on web p… | 88 | 1100 | active |
| soxoj/socid-extractor socid_extractor is a Python library and CLI that extracts structured account metadata and stable internal identifiers (usernames, UIDs, GAI… | 88 | 1099 | active |
| greyblake/whatlang-rs Whatlang is a lightweight Rust library for detecting the natural language of a text, supporting 70 languages plus script recognition. It is… | 45 | 1088 | stable |
| csurfer/rake-nltk rake-nltk is a Python library implementing the Rapid Automatic Keyword Extraction (RAKE) algorithm on top of NLTK. It determines key phrase… | 32 | 1084 | stable |
| QwenLM/Qwen2.5-Math Qwen2.5-Math is a series of math-specialized large language models (1.5B/7B/72B base and instruct variants plus a 72B reward model) built o… | 24 | 1084 | active |
| brianmario/charlock_holmes A Ruby library for character encoding detection built on top of ICU. It detects the encoding of arbitrary text or binary content and can tr… | 60 | 1083 | stable |
| olivia-ai/olivia Olivia is an open-source chatbot written in Go that uses a neural network for natural language understanding, aiming to be a free alternati… | 10 | 3716 | maintenance |
| CJ-Chen/TBtools-II TBtools-II is a stand-alone bioinformatics platform with a user-friendly GUI and command-line tools for analyzing high-throughput sequencin… | 86 | 1082 | active |
| FalkorDB/QueryWeaver QueryWeaver is an open-source Text2SQL tool that converts plain-English questions into SQL queries using graph-powered schema understanding… | 83 | 1082 | active |
| jaraco/inflect A Python library that accurately generates English plurals, singular nouns, ordinals, indefinite articles, present participles, and word-ba… | 68 | 1082 | active |
| FuJacob/cotabby Cotabby is an open-source macOS menu bar application that provides local, on-device AI autocomplete (ghost text) in nearly any text field a… | 77 | 1078 | active |
| THU-BPM/MarkLLM MarkLLM is an open-source Python toolkit for watermarking large language model outputs, implementing multiple LLM watermarking algorithms w… | 67 | 1078 | active |
| Makememo/MemoAI MemoAI is a desktop application for macOS and Windows that transcribes audio and video (YouTube links, podcasts, local files) into text and… | 95 | 1074 | active |
| mskayyali/nodepad nodepad is a spatial note-taking web application where notes are placed on a canvas and AI quietly classifies them, infers connections, and… | 53 | 1074 | active |
| orange2ai/renwei-writing An open-source AI agent skill (a prompt/instruction pack) called 'Renwei Writing' that guides AI editors to revise text while preserving th… | 50 | 1074 | active |
| THUDM/GLM GLM is a general language model pretrained with an autoregressive blank-filling objective, released with pretrained checkpoints and fine-tu… | 32 | 3680 | maintenance |
| ufal/whisper_streaming A Python library that turns Whisper-like speech recognition models into a real-time streaming transcription and translation system using a … | 50 | 3674 | maintenance |
| xmflswood/pinyin-match A JavaScript library for fast pinyin-based matching of Chinese text, supporting polyphonic characters, traditional Chinese, and initial-let… | 54 | 1071 | active |
| smartParsePro smartParsePro is an offline JavaScript library for parsing Chinese addresses, extracting province, city, county, street, detail address, na… | 62 | 1069 | active |
| facebookresearch/LASER LASER is a Python library from Facebook Research for computing multilingual, language-agnostic sentence embeddings supporting 200+ language… | 10 | 3660 | maintenance |
| thuiar/MMSA MMSA is a unified Python framework for multimodal sentiment analysis, supporting 15 MSA models and datasets like MOSI, MOSEI, and CH-SIMS. … | 23 | 1067 | active |
| princeton-nlp/SimCSE SimCSE is a Python library and research codebase implementing simple contrastive learning for sentence embeddings, with pre-trained unsuper… | 23 | 3652 | maintenance |
| DeeplxFile DeeplxFile is a free, cross-platform desktop file translation tool built on Deeplx and Playwright that supports unlimited file sizes and ve… | 21 | 1066 | active |
| translate-tools/linguist Linguist is a privacy-first browser extension for Chrome and Firefox that translates web pages, selected text, subtitles, and messages, wit… | 93 | 1065 | active |
| 墨奇输入法 Moqi Yinxing is an open-source Rime input method configuration providing double-pinyin (shuangpin) schemes with shape-based auxiliary codes… | 82 | 1065 | active |
| SmsCode/XposedSmsCode An Xposed module for Android that recognizes and parses SMS verification codes when a new message arrives, copying them to the clipboard an… | 23 | 1065 | active |
| Felix3322/PotPlayer_ChatGPT_Translate A PotPlayer plugin that integrates OpenAI-compatible AI APIs (including ChatGPT and Ollama) to translate video subtitles in real time. It u… | 88 | 1064 | active |
| soulverteam/SoulverCore SoulverCore is a Swift framework providing a natural language math engine that evaluates expressions like '65 kg in pounds' or '$25k over 1… | 85 | 1061 | active |
| InternRobotics/PointLLM PointLLM is a multimodal large language model that understands colored 3D point clouds of objects, built on a point cloud encoder fused wit… | 62 | 1058 | active |
| sylvainhalle/textidote TeXtidote is a Java command-line tool that performs spelling, grammar, and style checking on LaTeX documents (and Markdown files). It strip… | 75 | 1057 | active |
| stay-leave/weibo-public-opinion-analysis A Python project for Weibo public opinion analysis that combines a web crawler, LDA topic modeling, sentiment analysis, and spatiotemporal … | 32 | 1051 | active |
| ChenYCL/chrome-extension-udemy-translate A Chrome extension that translates video subtitles on any website in real time, with support for custom DOM selectors per site. It supports… | 49 | 1048 | active |
| Shawn1993/cnn-text-classification-pytorch A PyTorch implementation of Kim's CNN architecture for sentence classification, reproducing results from the paper 'Convolutional Neural Ne… | 62 | 1043 | active |
| D2I-CUHKSZ/MicroWorld MicroWorld is a lightweight Python engine that turns multi-modal event materials (documents, images, videos, graph signals) into structured… | 50 | 1038 | active |
| m-damien/VisualStoryWriting A web application that automatically visualizes a story's chronology, characters, and their movements, letting writers edit the story by ma… | 29 | 1036 | active |
| dtsola/xiaoyaosearch XiaoyaoSearch is a cross-platform desktop application (Electron + Python/FastAPI) that lets users find local files using AI-powered semanti… | 74 | 1034 | active |
| bilibili/Index-1.9B Index-1.9B is a family of lightweight 1.9-billion-parameter multilingual language models from Bilibili's Index team, released in base, chat… | 68 | 1033 | active |
| antimatter15/ocrad.js Ocrad.js is a pure-JavaScript port of the Ocrad OCR engine, compiled to JavaScript via Emscripten, that converts scanned images of text bac… | 32 | 3515 | maintenance |
| jfilter/clean-text A Python package for cleaning and normalizing messy text, especially user-generated content from the web and social media. It fixes unicode… | 74 | 1031 | active |
| FastEmbed A Rust library for generating text and image vector embeddings and reranking documents locally using ONNX inference via ort and Hugging Fac… | 93 | 1030 | active |
| asreview/asreview ASReview LAB is an open-source machine learning application for interactive, AI-assisted screening of large textual datasets. It uses activ… | 92 | 1027 | active |
| chatmcp/mcp-server-chatsum An MCP server that queries and summarizes chat messages stored in a local chat database, exposed as a tool for MCP-compatible clients like … | 22 | 1027 | active |
| hezarai/hezar Hezar is an all-in-one Python AI library for the Persian language, covering NLP, speech recognition, OCR, and image captioning through a ta… | 71 | 1021 | active |
| mikiarlo3/ai-copywriter A portable Markdown-based agent skill that writes marketing copy (headlines, descriptions, microcopy, subject lines) with a human tone whil… | 53 | 1020 | active |
| Sudachi Sudachi is a Java-based Japanese morphological analyzer that performs segmentation, part-of-speech tagging, and normalization with multiple… | 88 | 1014 | active |
| google-research/inksight InkSight is a Google Research system that converts photos of offline handwritten text into digital ink strokes using a ViT and mT5 encoder-… | 67 | 1014 | active |
| voquill/voquill Voquill is an open-source, cross-platform AI voice dictation app that lets users dictate into any desktop application, with AI-powered tran… | 78 | 1012 | active |
| wang-rui/phishguard-scaffold PhishGuard is a Python research framework that jointly performs phishing detection and dissemination control on social media using LLaMA-ba… | 45 | 1012 | active |
| DyNet DyNet is a C++ neural network toolkit with Python bindings, designed for efficient CPU/GPU training of networks with dynamic per-instance s… | 23 | 3429 | maintenance |
| huawei-noah/noah-research A collection of research code subprojects released by Huawei Noah's Ark Lab, each in its own directory. It is not an official Huawei produc… | 73 | 1011 | active |
| ownthink/Jiagu Jiagu is a Python library for Chinese natural language processing built on deep learning models trained on large-scale corpora. It provides… | 32 | 3425 | maintenance |
| Fadi002/de4py An open-source, AI-powered toolkit for reverse engineering Python code, combining an LLM-driven deobfuscation engine (via Ollama) with lega… | 88 | 1007 | active |
| letiantian/TextRank4ZH A Python implementation of the TextRank algorithm tailored for Chinese text, extracting keywords, key phrases, and extractive summaries usi… | 38 | 3394 | maintenance |
| google-research/albert Official TensorFlow implementation and pretrained checkpoints of ALBERT, a lite version of BERT for self-supervised learning of language re… | 10 | 3278 | maintenance |
| facebookresearch/MUSE MUSE is a Python library from Facebook AI Research for creating and aligning multilingual word embeddings, using both supervised (bilingual… | 10 | 3266 | maintenance |
| mojombo/chronic Chronic is a pure Ruby natural language date and time parser that converts phrases like 'tomorrow at 6:45pm' or '3rd wednesday in november'… | 32 | 3251 | maintenance |
| cemoody/lda2vec A Python library implementing lda2vec, a hybrid topic model that combines word2vec word embeddings with LDA-style interpretable document to… | 32 | 3169 | maintenance |
| farizrahman4u/seq2seq A sequence-to-sequence learning add-on library for Keras, providing modular encoder-decoder layers and ready-made Seq2Seq models. It suppor… | 32 | 3166 | maintenance |
| matheuss/google-translate-api A free and unlimited Node.js library that provides an unofficial API for Google Translate, using the same servers as translate.google.com. … | 23 | 3145 | maintenance |
| FudanNLP/fastNLP fastNLP is a lightweight, modularized and extensible NLP framework in Python that reduces engineering boilerplate such as data processing l… | 23 | 3137 | maintenance |
| twitter/twitter-text A collection of official Twitter libraries and conformance tests for parsing and tokenizing Tweet text. It determines character counts and … | 23 | 3136 | maintenance |
| dbiir/UER-py UER-py is a PyTorch framework for pre-training transformer language models (BERT, GPT-2, T5, ELMo, etc.) and fine-tuning them on downstream… | 32 | 3114 | maintenance |