Purpose
Ship a known-good PrivateGPT configuration snapshot that the setup scripts can copy into a local installation.
Current state
Last touched: 2024-09-26. Functionality and completeness: Default environment mirrors upstream PrivateGPT; customization is expected.
Next step
Add baseline automated tests to cover critical flows; Add CI pipeline for build/test/lint; Document deployment/runtime environment (or add Dockerfile); Document interfaces (CLI flags, API endpoints, file formats); Add structured logging and basic health checks.
Interfaces
Inputs- settings.yaml profiles, local_data paths, model files
Outputs- vector store data, API responses, UI outputs
- embeddings/vector store
Reality to Action trace
Reality IngestionContributes in this stage.
Canonical StorageContributes in this stage.
Automation EnginesContributes in this stage.
Human InterfacesContributes in this stage.
Operational AdoptionContributes in this stage.
Core workflow
TBD. Document the 5-10 steps that define the core workflow.
Artifacts
- OpenAI-compatible API schema for chat/completions
Operational notes
Constraints and scars
- Heavy model dependencies and storage requirements; local hardware limits apply.
Reliability posture
Failure modes and safe behavior: Missing models or vector store failures prevent ingestion or query. Idempotency / retries / batching behavior: Ingestion re-runs reindex documents; no built-in retry policy.
Observability
- Logs: FastAPI/Uvicorn logs and application output
- Metrics/health checks: None documented
Security and privacy
settings.yaml includes placeholder secrets; replace with secure local values. Local_data and embeddings can contain sensitive content; restrict access.
Dependencies
Upstream- Optional model providers configured in settings
Ownership
OwnersJosh Barton
UsersJosh Barton (owner)
PrivateGPTConf/env/default
Architecture & Major Components
High-level diagram (text):
- Entry/trigger -> core logic -> outputs (details per docs below)
Entry/trigger
→core logic
→outputs
Entry points: settings.yaml and scripts in env/default
Top-level folders: local_data, models, private_gpt, scripts, tests, settings*.yaml
Key abstractions: settings profiles, ingestion scripts, FastAPI server
Setup / Build / Run
- Build system(s): Python (pyproject).
- Uses Makefile targets for ingest/run; profiles are selected via settings.