Natural Language Processing

Spark NLP – scalable natural language processing library

Spark NLP is a natural language processing library built on Apache Spark. It provides tools for analysing text and other forms of unstructured information using distributed processing pipelines, making it suitable for applications that need to process large datasets.

The library combines traditional linguistic analysis with modern deep learning techniques. It supports a broad collection of pretrained models that can be incorporated into workflows without requiring every model to be trained from scratch.

Spark NLP is used for tasks ranging from identifying entities in documents to classifying text, translating languages and generating natural language. Its integration with Apache Spark allows processing to scale beyond a single machine, while interfaces for Python, Scala and Java make it accessible to different development environments.

This is free and open source software.

Key Features

  • Supports tokenisation, sentence detection, lemmatisation and part-of-speech tagging.
  • Provides named entity recognition and entity extraction.
  • Offers sentiment analysis and text classification.
  • Supports dependency parsing and linguistic annotation.
  • Generates word and sentence embeddings for downstream analysis.
  • Includes machine translation, text summarisation and question answering.
  • Supports text generation and zero-shot classification.
  • Provides automatic speech recognition and image-related processing tasks.
  • Offers a large collection of pretrained pipelines and models across numerous languages.
  • Supports transformer architectures including BERT, RoBERTa, T5 and other model families.
  • Can import models from TensorFlow, ONNX, OpenVINO and GGUF-compatible frameworks.
  • Integrates with Apache Spark ML pipelines for distributed processing.
  • Provides interfaces for Python, Scala, Java and other JVM languages.
  • Supports CPU processing and GPU acceleration in compatible environments.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: github.com/JohnSnowLabs/spark-nlp
Support:
Developer: John Snow Labs
License: Apache License 2.0

Spark NLP is written in Scala. Learn Scala with our recommended free books and free tutorials.


Related Software

Java Natural Language Processing Tools
CoreNLPAnnotation-based NLP pipeline that provides core natural language analysis
OpenNLPMachine learning based toolkit
DL4JDeploy and train deep learning models
LuceneHigh-performance, full-featured information retrieval software library
UIMAOpen source implementation of the UIMA specification
TikaContent analysis toolkit
MALLETStatistical natural language processing, document classification and more
GATEFull-lifecycle solution for a broad range of NLP tasks
ReVerb Automatically identifies and extracts binary relationships from sentences
NLP4JNLP framework for JVM languages
CogComp-NLPState-of-the-art Natural Language Processing (NLP) tools

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted