Phidata is an open-source project and we welcome contributions.
Please follow the fork and pull request workflow:
- Fork the repository.
- Create a new branch for your feature.
- Add your feature or improvement.
- Send a pull request.
- We appreciate your support & input!
- Clone the repository.
- Create a virtual environment using the
./scripts/create_venv.sh
script. This will:- Create a
phienv
virtual environment in the current directory. - Install the required packages.
- Install the
phidata
package in editable mode.
- Create a
- Activate the virtual environment using
source phienv/bin/activate
.
We provide a ./scripts/format.sh
script that runs ruff
, mypy
and pytest
.
Please run this script before submitting a pull request.
- Get your local environment setup by following the Development setup.
- Create a new directory in
phi/vectordb
with the name of the vector database. - Implement the
VectorDb
interface inphi/vectordb/<your_db>/<your_db>.py
. - Import your
VectorDb
implementation inphi/vectordb/<your_db>/__init__.py
. - Add a recipe for using your
VectorDb
incookbook/<your_db>/assistant.py
. - Format and validate your code by running
./scripts/format.sh
. - Submit a pull request.
This project is licensed under the terms of the MIT license