aryn-ai / conversational-opensearch

A plugin for OpenSearch implementing an API to do conversational search
Apache License 2.0
8 stars 1 forks source link

Plugin for Conversations in OpenSearch

This repo is a WIP plugin for handling conversations in OpenSearch (Per this RFC). It consists of three components:

Progress so far

Currently, we've mostly done the CRUD API for conversational memory - it's in the conversational-memory branch. The search pipeline is still a work in progress, and the wrapper API is nonexistant. These parts might not go in this repo.



This repo was create using the OpenSearch plugin template (found here). The template came with:

Naming

This plugin is named conversational, because it's a conversational plugin but "plugin" shouldn't be part of a plugin's name. Likewise "opensearch" shouldn't be part of a plugin's name, but it's in the title of this repo because this is an OpenSearch project. Accordingly, all code lives somewhere in the org.opensearch.conversational package.

Tests

The conversational-memory branch has, along with the CRUD API, numerous tests. I'm pretty sure they're not completely comprehensive, but they're pretty good. Run them with

./gradlew check

The current implementation against OpenSearch 2.8.0 - there shouldn't be too much incompatibility between versions given what currently exists, but when pipelines come along that assertion will break.

License

This code is licensed under the Apache 2.0 License. See LICENSE.txt.

Copyright

Copyright Aryn, Inc 2023. See NOTICE for details.