A repo for building, fine-tuning, and deploying custom LLMs for domain-specific tasks.
| Project | Description | Status |
|---|---|---|
| fuelrx-llm | Meal plan generation for FuelRx | π§ In Progress |
llm-lab/
βββ README.md # This file
βββ fuelrx-llm/ # Meal planning LLM project
β βββ notebooks/ # Exploration & learning
β βββ data/ # Training data pipeline
β βββ training/ # Fine-tuning scripts
β βββ inference/ # Production inference
β βββ evaluation/ # Benchmarking suite
βββ [future-project]/ # Next domain-specific LLM
βββ shared/ # (future) Common utilities
Each project in this lab follows a similar pattern:
- Explore β Understand base model capabilities via notebooks
- Extract β Build training data from existing systems
- Evaluate β Create domain-specific benchmarks
- Fine-tune β Train with LoRA for efficiency
- Deploy β Ship to HuggingFace Endpoints
Each project is self-contained with its own dependencies and setup instructions. Navigate to a project directory and follow its README:
cd fuelrx-llm
cat README.md- Copy the example and fill in your values:
cp fuelrx-llm/.env.example fuelrx-llm/.env- Rebuild the Docker image:
cd fuelrx-llm
docker build -t fuelrx-llm-dev -f docker/Dockerfile.dev .- Start container with bash shell:
docker run -it \
-v $(pwd):/workspace \
--env-file .env \
fuelrx-llm-dev /bin/bash
# ---------------------------------
# OR if you already have the container running, you can exec into it:
# Find container ID
docker ps
# Exec into it
docker exec -it <container_id> /bin/bash
# ---------------------------------
# OR start the container without immediate access to its terminal to just play with jupyter notebooks:
docker run -it \
-v $(pwd):/workspace \
-p 8888:8888 \
fuelrx-llm-devInside the running container:
cd data
python extract_from_llm_logs.py --output training_data/meals.jsonlTo exit out and stop the container:
exit
# List running containers
docker ps
# Stop a container by name or ID
docker stop <container_name_or_id>As patterns emerge across projects, common code will be extracted to shared/:
- Evaluation harnesses
- Training utilities
- Deployment scripts
- Schema validation helpers
- Create a new directory:
mkdir my-new-llm - Copy the structure from an existing project as a starting point
- Update this README's project table
- Customize for your domain