Elysia is an open-source agentic platform for searching data. It is built with customisation in mind, allowing you to build agents and tools that are tailored to your specific use case. It uses Weaviate as the default retrieval tools, and can interface with your data stored in a Weaviate cluster.
Project description
Welcome to Elysia
Elysia is an agentic platform designed to use tools in a decision tree. A decision agent decides which tools to use dynamically based on its environment and context. You can use custom tools or use the pre-built tools designed to retrieve your data in a Weaviate cluster.
Get Started
To use Elysia, you need to either set up your models and API keys in your .env file, or specify them in the config. See the setup page to get started.
Elysia can be used very simply:
from elysia import tool, Tree
tree = Tree()
@tool(tree=tree)
async def add(x: int, y: int) -> int:
return x + y
tree("What is the sum of 9009 and 6006?")
Elysia is pre-configured to be capable of connecting to and interacting with your Weaviate clusters!
import elysia
tree = elysia.Tree()
response, objects = tree(
"What are the 10 most expensive items in the Ecommerce collection?",
collection_names = ["Ecommerce"]
)
This will use the built-in open source query tool or aggregate tool to interact with your Weaviate collections. To get started connecting to Weaviate, see the setting up page in the docs.
Installation (bash) (Linux/MacOS)
PyPi (Recommended)
Simply run
pip install elysia-ai
to install straight away!
GitHub
To get the latest development version, you can do
git clone https://github.com/weaviate/elysia
move to the working directory via
cd elysia
Create a virtual environment with Python (version 3.10 - 3.12, see installation instructions for brew or ubuntu).
python3.12 -m venv .venv
source .venv/bin/activate
and then install Elysia via pip
pip install -e .
Done! You can now use the Elysia python package
Running the Elysia App
Backend
Just simply run
elysia start
and the backend will start on localhost:3000 by default.
Frontend Installation
From the directory you just cloned, (i.e. inside elysia/). You need to clone the frontend repository (give it a star!) via
git clone https://github.com/weaviate/elysia-frontend
navigate inside the frontend repository via
cd elysia-frontend
and install and run the node server via
npm install
npm run dev
By default this will run the app on localhost:8000. Visit this to use the app!
Configuring the Environment
To use Elysia with Weaviate, i.e. for agentic searching and retrieval, you need a Weaviate cluster api key and URL
WCD_URL=...
WCD_API_KEY=...
Elysia will automatically detect these when running locally, and this will be the default Weaviate cluster for all users logging into the Elysia app. But these can be configured on a user-by-user basis.
Whichever vectoriser you use for your Weaviate collection you will need to specify your corresponding API key, e.g.
OPENAI_API_KEY=...
These will automatically be added to the headers for the Weaviate client.
Same for whichever model you choose for the LLM in Elysia, so if you are using GPT-4o, for example, specify an OPENAI_API_KEY.
The 'default' config for Elysia is to use OpenRouter to give easy access to a variety of models. So this requires
OPENROUTER_API_KEY=...
and OpenAI as the vectorisers for the alpha datasets, so you need OPENAI_API_KEY too.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file elysia_ai-0.1.0.dev25.tar.gz.
File metadata
- Download URL: elysia_ai-0.1.0.dev25.tar.gz
- Upload date:
- Size: 3.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1b261e625538f082931a422d8fef39d61d34e055ff6027522d7e2712b2eac9a
|
|
| MD5 |
4383eb4e1d0d8962a9472b93cc8986bd
|
|
| BLAKE2b-256 |
6fcee883bf38c3de2100917c5678075ef259cc9df9b618697576bea667ce627c
|
File details
Details for the file elysia_ai-0.1.0.dev25-py3-none-any.whl.
File metadata
- Download URL: elysia_ai-0.1.0.dev25-py3-none-any.whl
- Upload date:
- Size: 3.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
044e52b05b462fd8c66ab8bd634fe07ad2ce049fc902dd9e9e98eaa421076c18
|
|
| MD5 |
a1864e92e24665dc6937637d2a90c988
|
|
| BLAKE2b-256 |
65efc29159dc07a27a088ed762521df03cb19c1b750f04245f49f7f6baeaa336
|