Open Assistants is a powerful platform built on OpenAI Assistants, designed to create, manage, test, share, and monitor AI assistants with ease. It enhances usability and manageability beyond what the OpenAI playground offers.
The platform allows users to test their assistants, manage vector stores and files, track usage metrics, and much more. Future updates will introduce support for additional AI backends and expanded functionality.
- Comprehensive Assistant Management: A centralized dashboard to manage assistants, vector stores, files, and their interconnections.
- Shareable Assistants: Generate unique links to share your assistants and enable seamless interaction for others.
- Usage Monitoring and Analytics: Access detailed reports on assistant usage and failure points to drive continuous improvement.
- Enhanced Playground Capabilities: Edit assistant metadata and descriptions directly within the platform.
- API Integration (In Progress): Extend your assistants' functionality by integrating external APIs as tools.
- Flexible Access Control: Fine-grained access management to regulate usage and assign admin rights effectively.
- Backend: Python, Django (ASGI server recommended for async support)
- Database: PostgreSQL (default)
- AI Integration: OpenAI API (integrations with other backends are planned)
- Python 3.10 or newer
- Django 4.2 or newer
- ASGI server (e.g., Uvicorn or Daphne) [optional but recommended]
git clone https://github.com/rekognize/open-assistants.git
cd open-assistants
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Create a .env
file in the project's root directory and define the following variables:
SECRET_KEY=<YOUR-DJANGO-SECRET-KEY>
OPENAI_API_KEY=<YOUR-OPENAI-API-KEY>
SITE_HOST=<YOUR-DOMAIN-NAME>
For local development, set IS_LOCAL
to True
to handle static files using the WhiteNoise module:
IS_LOCAL=True
If deploying from multiple branches (e.g., main
, stage
, dev
), set the BRANCH_NAME
in the .env
file for the current instance. This helps manage static file buckets independently for each branch:
BRANCH_NAME=<BRANCH-NAME-OF-THIS-INSTANCE>
To customize the site's branding, you can define the site name:
SITE_NAME="Open Assistants"
python manage.py migrate
uvicorn open_assistants.asgi:application --reload
Visit http://localhost:8000
or http://127.0.0.1:8000
.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a feature branch: git checkout -b feature-name.
- Commit your changes: git commit -m "Description of changes".
- Push to the branch: git push origin feature-name.
- Open a pull request.
This project is licensed under the MIT License.
- Advanced function call management
- Multi-Tenant Support: Allow multiple users to manage assistants independently.