Enhancing Cheshire-Cat capabilities with metadata assignment and filtering.
The CATalogator Plugin is an open-source tool designed to integrate seamlessly with the Cheshire-Cat framework, enabling users to assign metadata to documents during upload and apply filters to the declarative memory to focus responses on specific documents.
Use this plugin with custom clients where you can change the structure of WebSocket messages sended to Cheshire-Cat.
There are no prerequisites to use CATalogator Plugin.
- Open the Cheshire-Cat Admin UI and head over to the plugins section.
- Look for "CATalogator" plugin and choose to install it.
- After installation, locate the "Configure" button next to CATalogator plugin in the list and click it to open the configuration sidebar.
- Save your configurations to apply the changes.
CATalogator plugin will now be ready to use with your Cheshire-Cat projects.
Before uploading a new document, via plugin settings, you can add metadata in the following format:
key1: value1; key2: value2; ...
The plugin will set the metadata for each document accordingly.
Users can apply filters on documents' metadata by passing the filter_declarative_memory
property in the WebSocket message. Example:
{
"text": "Speak about Cheshire-Cat",
"user_id": "user",
"filter_declarative_memory": {
"key1": "value1"
}
}
The plugin will intercept these filters and apply them to the declarative memory, focusing the response only on matching documents.
Warning: If the user changes the filter in the same session while asking the same question, it's possible that Cheshire-Cat will give the same answer because it focuses on the history of the chat with the user.
Encountering issues or have queries about CATalogator plugin? Feel free to create an issue on the GitHub repository.
Contributions are warmly welcomed from the community! If you're interested in contributing, please fork the repository, commit your changes, and submit a pull request.
CATalogator Plugin is made available under the MIT License, allowing you to use, modify, and distribute it as per your needs.
Enhance your Cheshire-Cat experience with CATalogator Plugin. Happy coding!