metadata
license: apache-2.0
language:
- en
tags:
- legal
- ohio
- custody
- family-law
- qwen
- lora
- peft
- legal-agent-council
base_model: Qwen/Qwen3.5-9B
datasets:
- Roderick3rd/OhioCustodyBERT-corpus
pipeline_tag: text-generation
OhioCustodyBERT โ Qwen3.5-9B LoRA Adapter
Ohio family law specialist โ LoRA adapter for Qwen3.5-9B, fine-tuned on 13,346 curated legal Q&A pairs covering Ohio custody statutes, appellate decisions, and parental rights case law.
Part of the Legal Agent Council
This model is one component of the OhioCustodyBERT Legal Agent Council โ a multi-agent system for Ohio family law analysis. See the hub repo for the full architecture.
| Model | Role |
|---|---|
| OhioCustodyBERT | Retriever + Verifier (ModernBERT) |
| This model | Generative Agents (Statute, Case Law, Adversary) |
| Training Corpus | 13,346 SFT pairs from 19 sources |
Status
๐ Training in progress โ LoRA fine-tuning on M4 Pro 48GB with MLX. Adapter weights will be uploaded when training completes.
Training Config
| Parameter | Value |
|---|---|
| Base model | Qwen3.5-9B (8-bit, MLX) |
| Method | LoRA, 16 layers |
| Data | v24: 12,679 train + 667 valid |
| Iterations | 5,000 (~3 passes) |
| Optimizer | AdamW, lr=1e-4 |
| Effective batch | 8 (1 ร grad_accum 8) |
| Max sequence | 2,048 tokens |
Quick Start (after release)
With Ollama
ollama run ohio-custody
>>> What are the best interest factors under R.C. 3109.04?
With Transformers + PEFT
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3.5-9B")
model = PeftModel.from_pretrained(base, "Roderick3rd/OhioCustodyBERT-Qwen3.5-9B")
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3.5-9B")
Citation
@misc{ohiocustodybert2026,
title={OhioCustodyBERT: Domain-Specific Legal AI System for Ohio Family Law},
author={Roderick Mullins},
year={2026},
howpublished={HuggingFace: Roderick3rd/OhioCustodyBERT}
}
โ ๏ธ Not legal advice. This is a research tool. Always consult a licensed attorney.