Agents-as-a-Service is a web application that allows you to define agents with specific tasks and personalities. You can also equip these agents with custom-made tools in Python. Interact with the agents individually or in groups to achieve your desired outcomes.
- Define agents with tasks and personalities.
- Create custom tools in Python for your agents.
- Interact with agents individually or in groups.
- Web-based interface for easy interaction.
The project consists of two main parts:
- Website: The front-end built with SvelteKit.
- Functions: The back-end built with Python and FastAPI, deployed as Firebase functions.
-
Navigate to the functions directory:
cd functions
-
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Set environment variables:
OPENAI_API_KEY
GROQ_API_KEY
-
Navigate to the website directory:
cd website
-
Install dependencies:
npm install
-
Set environment variables:
PUBLIC_ENVIRONMENT
PUBLIC_FORM_ACCESS_KEY
To run the entire project locally, use the Firebase emulator:
firebase emulators:start
This command will start the Firebase emulators for both the website and the functions, allowing you to test the full functionality of the application locally.
The project includes a GitHub Actions workflow for continuous integration and deployment. The workflow performs the following steps:
- Checkout the repository.
- Set up Node.js and Python environments.
- Install dependencies for the website and functions.
- Build and deploy the SvelteKit website.
- Deploy the Python FastAPI Firebase functions.
The pipeline is triggered on pull requests and merges to the main
branch.
Agents-as-a-Service is licensed under the MIT License. See the LICENSE file for more information.