julep icon indicating copy to clipboard operation
julep copied to clipboard

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

Open creatorrr opened this issue 1 year ago • 7 comments
trafficstars

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:

  • A report detailing the testing process and results for each configuration.
  • Any necessary tweaks or fixes to the Docker Compose files.
  • Updated documentation reflecting the tested configurations.
  • Recommendations for default configuration and best practices.

creatorrr avatar Oct 02 '24 19:10 creatorrr

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.

RS-labhub avatar Oct 09 '24 03:10 RS-labhub

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 avatar Oct 09 '24 03:10 ijindal1

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

ijindal1 avatar Oct 09 '24 03:10 ijindal1

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 avatar Oct 09 '24 04:10 RS-labhub

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

I'm not getting them 😭

RS-labhub avatar Oct 09 '24 04:10 RS-labhub

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 :)

ijindal1 avatar Oct 09 '24 04:10 ijindal1

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

RS-labhub avatar Oct 09 '24 04:10 RS-labhub