What this is part of
This adapter is one component of a full-stack Bible Q&A system: hybrid RAG retrieval
(BM25 + dense ChromaDB search + Reciprocal Rank Fusion + cross-encoder reranking),
constitutional-AI guardrails, an optional voice pipeline (Faster-Whisper STT + Kokoro
TTS), and a Gradio UI — 183 tests, 55% coverage, full CI/CD. See the
GitHub repo for the complete system;
this repo is just the model weights.
Training
Table with columns: Stage, Detail| Stage | Detail |
|---|
| SFT | ~1,800 diverse examples, LoRA (Unsloth/PEFT/TRL), bf16 |
| ORPO | 500 preference pairs, preference alignment on top of the SFT adapter |
| Total steps | 5,925 |
| LoRA config | r=16, lora_alpha=32, lora_dropout=0.1, targets: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj |
Training run tracked in Weights & Biases (34 runs across the full project).
Usage
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3.5-4B", dtype="bfloat16")
model = PeftModel.from_pretrained(base, "Ttimms/bible-ai-qwen3.5-4b-lora")
tokenizer = AutoTokenizer.from_pretrained("Ttimms/bible-ai-qwen3.5-4b-lora")
The production deployment merges this adapter and exports to GGUF (F16 + Q4_K_M) for
Ollama serving — see scripts/ in the GitHub repo for the merge/export pipeline.
License
MIT — matches the upstream project license.