blob: d5db18eeb94a12475d36bd40e15309e06185bb4a [file] [log] [blame]
---
layout: default
---
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div id="banner-box" class="bottom-arrow">
<div id="inner-banner-box">
<div id="banner">
<div id="nat-lang-itf">Apache NLPCraft</div>
<h1 id="banner-sub-title">An API to convert natural language into actions</h1>
<div>
<a id="get-started-btn" role="button" href="docs.html" class="btn mt-5">GET STARTED <i class="ml-2 fas fa-angle-right"></i></a>
</div>
</div>
</div>
</div>
<div id="about-nlpcraft" class="bottom-arrow main-section">
<div class="container-fluid">
<div class="row">
<div class="col-4">
<h2 class="section-title">What Is <span>NLPCraft</span></h2>
<section>
<p>
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 deep learning model training or pre-existing text corpora.
</p>
<p>
Apache NLPCraft is simple to use: define a semantic model and intents to interpret
user input. Securely deploy this model and use REST API to explore the data using natural language from
your applications.
</p>
<div class="learn-more">
<a href="docs.html">Learn more <i class="align-text-bottom fas fa-angle-right"></i></a>
</div>
</section>
</div>
<div class="col-4">
<h2 class="section-title">Natural <span>Language</span></h2>
<section>
<p>
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 conversational AI.
</p>
<p>
There is no learning curve, no special rules or applications to master, no cumbersome syntax or terms to remember -
just a natural language that your users already speak.
</p>
</section>
</div>
<div class="col-4">
<h2 class="section-title">Quick <span>Links</span></h2>
<section>
<div class="quick-link" >
<a href="https://github.com/apache/incubator-nlpcraft" target="github">
<img
class="quick-link-img"
src="{{ 'images/github_logo.png' | relative_url }}" alt="">
</a>
<div class="gh-btn">
<a
class="github-button"
href="https://github.com/apache/incubator-nlpcraft/subscription"
data-icon="octicon-eye"
aria-label="Watch on GitHub">Watch</a>
</div>
<div class="gh-btn">
<a
class="github-button"
href="https://github.com/apache/incubator-nlpcraft/tree/master/src/main/scala/org/apache/nlpcraft/examples"
aria-label="NLPCraft examples on GitHub">Examples</a>
</div>
<a target=_ href="https://gitter.im/apache-nlpcraft/community"><img alt="Gitter" src="https://badges.gitter.im/apache-nlpcraft/community.svg"></a>
</div>
<div class="quick-link" >
<a href="/apis/latest/index.html" target="_">
<img alt="" class="quick-link-img" src="{{ 'images/java.png' | relative_url }}">
<span>Latest&nbsp;</span>
<!-- TODO: fix package name for javadoc.io image. -->
<a target="_" href="https://javadoc.io/doc/org.apache.nlpcraft/nlpcraft"><img src="https://javadoc.io/badge/org.nlpcraft/nlpcraft.svg" alt="Javadocs"></a>
</a>
</div>
<div class="quick-link">
<a href="https://nlpcraft.docs.apiary.io" target="apiary">
<img alt="" class="quick-link-img" src="{{ 'images/apiary.svg' | relative_url }}">
<span>REST API</span>
</a>
</div>
</section>
</div>
</div>
</div>
</div>
<div id="features" class="bottom-arrow main-section">
<div class="container-fluid">
<div class="row">
<div class="col-12">
<h2 class="section-title">Key <span>Features</span></h2>
</div>
</div>
<div class="row">
<div class="col-4">
<h3 class="sub-section-title">Semantic Modeling</h3>
<section>
<p>
Advanced semantic modelling and intent-based matching enables
deterministic natural language understanding without
requiring deep learning training or pre-existing text corpora.
</p>
</section>
</div>
<div class="col-4">
<h3 class="sub-section-title">Any Data Source</h3>
<section>
<p>
Any data source, device, or service - public or private. From databases and SaaS systems,
to smart home devices, voice assistants and chatbots.
</p>
</section>
</div>
<div class="col-4">
<h3 class="sub-section-title">Java-First</h3>
<section>
<p>
REST API and Java-based implementation natively
support world's largest ecosystem of development tools, programming languages and services.
</p>
</section>
</div>
</div>
<div class="row mt-4">
<div class="col-4">
<h3 class="sub-section-title">Strong Security</h3>
<section>
<p>
HTTPs, model deployment isolation, 256-bit encryption and ingress-only connectivity are
among the key security features in NLPCraft.
</p>
</section>
</div>
<div class="col-4">
<h3 class="sub-section-title">Model-As-A-Code</h3>
<section>
<p>
Model-as-a-code convention natively
supports any system development life cycle tools and frameworks in Java eco-system.
</p>
</section>
</div>
<div class="col-4">
<h3 class="sub-section-title">Out-Of-The-Box Integration</h3>
<section>
<p>
NLPCraft natively <a href="/integrations.html">integrates</a> with 3rd party libraries for base NLP processing
and named entity recognition:
</p>
<div id="integration-logos">
<a target=_ href="https://opennlp.apache.org"><img src="/images/opennlp-logo.png" height="32px" alt=""></a>
<a target=_ href="https://cloud.google.com/natural-language/"><img src="/images/google-cloud-logo-small.png" height="32px" alt=""></a>
<a target=_ href="https://stanfordnlp.github.io/CoreNLP"><img src="/images/corenlp-logo.gif" height="48px" alt=""></a>
<a target=_ href="https://spacy.io"><img src="/images/spacy-logo.png" height="32px" alt=""></a>
</div>
</section>
</div>
</div>
<div class="learn-more">
<a href="docs.html">Learn more <i class="align-text-bottom fas fa-angle-right"></i></a>
</div>
</div>
</div>
<div id="howitworks" class="bottom-arrow main-section">
<div class="container-fluid">
<div class="row">
<div class="col-12">
<h2 class="section-title">How <span>It Works</span></h2>
</div>
</div>
<div class="row d-flex flex-wrap align-items-center">
<div class="col-6">
<section>
<p>
There are three main software components:
<p>
<b>Data model</b> 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 or Scala.
<p>
<b>Data probe</b> 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.
<p>
<b>REST server</b> provides REST endpoint for user applications to securely query data
sources using NLI via data models deployed in data probes.
</p>
</section>
</div>
<div class="col-6">
<center>
<img class="img-fluid" src="{{ 'images/homepage-fig1.1.png' | relative_url}}" alt="">
</center>
</div>
</div>
<div class="learn-more">
<a href="docs.html">Learn more <i class="align-text-bottom fas fa-angle-right"></i></a>
</div>
</div>
</div>
<div id="news" class="bottom-arrow main-section">
<div class="container-fluid">
<div class="row">
<div class="col-12">
<h2 class="section-title">Latest <span>News</span></h2>
</div>
</div>
<div id="news-container" class="row">
{% for news in site.data.news %}
<div class="col-4">
<div class="news-title">
<a href="{{ news.url }}" target=_>
{{ news.title }}
</a>
</div>
<div class="news-excerpt">
{{ news.excerpt}}&nbsp;<a target=_ href="{{ news.url }}"><i class="fas fa-angle-double-right"></i></a>
</div>
<div class="news-footer">
{% if news.avatar_url %}<img class="avatar-img" src="{{ news.avatar_url | relative_url}}" alt="">{% endif %}
{% if news.pub_logo_url %}<img class="pub-logo-img" src="{{ news.pub_logo_url | relative_url}}" alt="">{% endif %}
{% if news.medium_id %}<a class="news-author text-nowrap " target="news" href="https://medium.com/@{{ news.medium_id}}">{{ news.author }}</a>{% endif %}
{% if news.linkedin_id %}<a target="linkedin" href="https://www.linkedin.com/in/{{ news.linkedin_id}}/"><i class="fab fa-fw fa-linkedin"></i></a>{% endif %}
{% if news.medium_id %}<a target="medium" href="https://medium.com/@{{ news.medium_id}}"><i class="fab fa-fw fa-medium"></i></a>{% endif %}
{% if news.twitter_id %}<a target="twitter" href="https://twitter.com/{{ news.twitter_id}}"><i class="fab fa-fw fa-twitter"></i></a>{% endif %}
<span class="text-nowrap news-date">{{ news.publish_date }}</span>
</div>
</div>
{% endfor %}
</div>
</div>
</div>
<div id="about" class="bottom-arrow main-section">
<div class="container-fluid">
<div id="about-container" class="row">
<div class="col-12" style="margin-top: 50px;">
<!-- <p align="center">-->
<!-- <a href="https://www.apache.org/licenses/LICENSE-2.0" target=_><img src="{{ 'images/asf20.jpg' | relative_url}}" height="64px" alt=""></a>-->
<!-- </p>-->
<p align="center">
<a href="https://incubator.apache.org/" target=_><img src="{{ 'images/apache_incubator.png' | relative_url}}" height="64px" alt=""></a>
</p>
<p align="center" style="font-size: 100%; margin: 0 20%">
Apache NLPCraft licensed under <a target=_ href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, version 2.0</a> is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by
the <a href="https://incubator.apache.org/" target=_>Apache Incubator</a>. 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.
</p>
</div>
</div>
</div>
</div>