What Is NLPCraft

Apache NLPCraft® is an open source library for adding natural language Interface to any applications. Based on semantic modelling it allows rapid implementation and requires no model training or pre-existing text corpora.

Define a semantic model and intents to interpret user input using any JVM-based language like Java, Scala, Groovy or Kotlin. Deploy the model and use REST API to explore the data using natural language.

Natural Language

Natural Language Interface (NLI) enables users to explore any type of data sources using natural language augmenting existing UI/UX with fidelity and simplicity of a familiar spoken language.

There is no learning curve, no special rules or UI to master, no cumbersome syntax or terms to remember - just a natural language that your users already speak.

Key Features

Semantic Modeling

Advanced semantic modelling and intent-based matching enables deterministic natural language understanding without requiring deep learning and development of large text corpora.

Any Data Source

NLPCraft supports any data source, device, or service - public or private. From databases and SaaS systems, to smart home devices, voice assistants and chatbots.

English Focused

NLPCraft focuses on processing English language delivering the ease of use and unparalleled comprehension for the language spoken by more than a billion people.

Java-First

REST API and Java-based implementation natively supports the world's largest ecosystem of development tools, multiple programming languages, frameworks and services.

Strong Security

HTTPs, model deployment isolation, 256-bit encryption and ingress-only connectivity are among the key security features in NLPCraft.

Model-As-A-Code

Model-as-a-code convention natively supports any system development life cycle tools and frameworks in the Java ecosystem.

By Devs - For Devs

Built with a singular focus - provide developers with unprecedented productivity and efficiency when building modern NLI applications.

Advanced NLP Toolset

Ease-of-use and development productivity along with state-of-the-art NLP capabilities like short-term-memory (STM) support, advanced intent DSL with deterministic matching, and composable named entities.

Out-Of-The-Box Integration

NLPCraft natively integrates with 3rd party libraries for basic NLP processing and named entity recognition:

How It Works

There are three main software components:

Data model specifies how to interpret user input, how to query a data source, and how to format the result back. Developers use model-as-a-code approach to build models using any JVM language like Java, Scala, Groovy or Kotlin.

Data probe is a DMZ-deployed application designed to securely deploy and manage data models. Each probe can manage multiple models and you can have many probes.

REST server provides REST endpoint for user applications to securely query data sources using NLI via data models deployed in data probes.

Latest News

Download NLPCraft 0.7.1. 
Download NLPCraft 0.7.0. 
Announcing the 1st release of the Apache NLPCraft. 

Apache NLPCraft is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects.

While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. Licensed under the Apache License, Version 2.0. Apache NLPCraft, Apache, the Apache feather, and the Apache NLPCraft project logo are either trademarks or registered trademarks of the Apache Software Foundation.