gpt4all/monorepo_plan.md

34 lines
1.0 KiB
Markdown
Raw Normal View History

2023-05-01 19:45:39 +00:00
# Monorepo Plan (DRAFT)
## Directory Structure
- gpt4all-api
- RESTful API
- gpt4all-backend
- C/C++ (ggml) model backends
- gpt4all-bindings
- Language bindings for model backends
- gpt4all-chat
- Chat GUI
- gpt4all-docker
- Dockerfile recipes for various gpt4all builds
- gpt4all-training
- Model training/inference/eval code
## Transition Plan:
This is roughly based on what's feasible now and path of least resistance.
1. Clean up gpt4all-training.
- Remove deprecated/unneeded files
- Organize into separate training, inference, eval, etc. directories
2. Clean up gpt4all-chat so it roughly has same structures as above
- Separate into gpt4all-chat and gpt4all-backends
- Separate model backends into separate subdirectories (e.g. llama, gptj)
3. Develop Python bindings (high priority and in-flight)
4. Develop Dockerfiles for different combinations of model backends and bindings
- Dockerfile for just model backend
- Dockerfile for model backend and Python bindings
5. Develop RESTful API / FastAPI