Libraries
The Elastiknn project includes some additional Python, Java, and Scala libraries.
- Python client
- Java library with exact and approximate similarity models
- Java library with custom Lucene queries
- Scala client
- Scala case classes and codecs for the JSON API
Python client
The Python client provides a pythonic interface for using Elastiknn. This includes a low level client that roughly mirrors the Scala client, as well as a higher level “model” that mimics the scikit-learn interface.
Install
pip install elastiknn-client
Documentation
Versions
Java library with exact and approximate similarity models
This library contains the exact and approximate similarity models used by Elastiknn.
Install
In a Gradle project:
implementation 'com.klibisz.elastiknn:models:<version below>'
Versions
Java library with custom Lucene queries
This library contains a custom Lucene query used by Elastiknn, as well as a handful of related utilities.
Install
In a Gradle project:
implementation 'com.klibisz.elastiknn:lucene:<version below>'
Versions
Scala client
The Scala client provides type-safe, asynchronous methods for using the Elastiknn plugin from your Scala project. It’s built on top of the popular elastic4s library and abstracts over effect types. A default instance for Scala Future
s ships with the client.
Install
In an sbt project:
libraryDependencies += "com.klibisz.elastiknn" %% "client-elastic4s" % <version below>
Documentation
Versions
Scala case classes and codecs for the JSON API
This library contains case classes and Circe codecs for the data structures in Elastiknn’s JSON API.
Install
In an sbt project:
libraryDependencies += "com.klibisz.elastiknn" %% "api4s" % <version below>
Versions