julep-ai / julep

A new DSL and server for AI agents and multi-step tasks
https://julep.ai
Apache License 2.0
2.62k stars 911 forks source link

[Good First Issue] Test and Review New Deployment Configurations for Various Julep Setups #553

Closed creatorrr closed 6 days ago

creatorrr commented 1 month ago

NOTE: Inside the f/deployment-docker-compose-files branch and the corresponding PR #552 :

We have created new Docker Compose files for different Julep deployment configurations. These files need to be thoroughly tested, tweaked if necessary, and then submitted for review. The new configurations cover various scenarios including single-tenant/multi-tenant, CPU/GPU embeddings, and managed/self-hosted databases.

Files to be tested:

  1. deploy/docker-compose.single-tenant-cpu-managed.yml
  2. deploy/docker-compose.multi-tenant-cpu-managed.yml
  3. deploy/docker-compose.single-tenant-gpu-managed.yml
  4. deploy/docker-compose.multi-tenant-gpu-managed.yml
  5. deploy/docker-compose.single-tenant-cpu-selfhosted.yml
  6. deploy/docker-compose.multi-tenant-cpu-selfhosted.yml
  7. deploy/docker-compose.single-tenant-gpu-selfhosted.yml
  8. deploy/docker-compose.multi-tenant-gpu-selfhosted.yml

Testing Steps:

For each configuration:

a. Create a .env file with all necessary environment variables. b. Run docker-compose -f up -d. c. Check if all services start successfully. d. Verify that the services are accessible and functioning as expected. e. Test the main functionalities of Julep using this configuration. f. Monitor resource usage and performance. g. Test scaling of services where applicable.

For GPU configurations:

a. Ensure GPU is properly utilized by the embedding service. b. Compare performance with CPU configurations.

For multi-tenant configurations:

a. Test isolation between tenants. b. Verify that the gateway properly routes requests.

For self-hosted database configurations:

a. Verify data persistence across restarts. b. Test backup and restore procedures.

General checks:

a. Ensure all environment variables are properly used. b. Check for any hardcoded values that should be configurable. c. Verify that services are connecting to each other correctly.

Documentation:

a. Update the deploy/README.md with any additional instructions or notes. b. Document any known limitations or specific requirements for each configuration.

Deliverables:

RS-labhub commented 1 month ago

I think, I can work on this. Where are the files?? Also, how much GPU will required (any estimation would be great) so that I could a setup a workspace according to that.

ijindal1 commented 1 month ago

No GPU needed if you use voyage embedding by setting them in .env

And even otherwise, the embedding server will run fine on the cpu

ijindal1 commented 1 month ago

You can look inside the agents_api/autogen/openapi_model.py file and the agents_api/web.py file

RS-labhub commented 1 month ago

No GPU needed if you use voyage embedding by setting them in .env

And even otherwise, the embedding server will run fine on the cpu

Ahh cool!

RS-labhub commented 1 month ago

You can look inside the agents_api/autogen/openapi_model.py file and the agents_api/web.py file

I'm not getting them 😭

ijindal1 commented 1 month ago

In that case, why don’t you look at the integrations/ directory. We need to build integrations and they would be a lot simpler to make :)

RS-labhub commented 1 month ago

I found the docker-compose.yml to setup .env file. Now I have to look for several API keys. 🙂

why don’t you look at the integrations/ directory Checking the whole code base for now