Instructions to use ashcash15/bus-chat-35b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use ashcash15/bus-chat-35b with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3.6-35B-A3B") model = PeftModel.from_pretrained(base_model, "ashcash15/bus-chat-35b") - Notebooks
- Google Colab
- Kaggle
bus-chat-35b
A LoRA adapter for Qwen/Qwen3.6-35B-A3B that teaches business concepts
conversationally: it explains, checks understanding, and adjusts how technical
it is based on how the learner is doing.
Trained in two stages:
- Continued pretraining on 862 verified business passages (~1.4M tokens) spanning accounting, economics, finance, information systems, management and marketing, mixed with general-web replay data.
- Supervised fine-tuning on 1,068 synthetic tutoring dialogues in which the tutor's technical level moves both up and down within a conversation β up when the learner is ready, down when they show confusion. Only the tutor's turns carry loss.
LoRA rank 32 throughout, one epoch of each stage β see Evaluation for why.
Evaluation
Measured against the unmodified base model on held-out data the adapter never
saw. Business perplexity is exp(mean cross-entropy) over 43 held-out passages.
Recall is a deterministic cloze test over the same held-out set (86 items,
4000-token budget). MMLU is 160 questions across marketing, management,
econometrics and professional accounting, scored by answer likelihood.
| recall β | answered | business perplexity β | MMLU β | |
|---|---|---|---|---|
Qwen/Qwen3.6-35B-A3B (base) |
0.4942 | 84/86 | 3.2932 | 0.8313 |
| after stage 1 (CPT) | β | β | 2.8021 (β14.9%) | 0.8375 |
| + this adapter (SFT 1 epoch) | 0.5116 | 85/86 | 2.8417 (β13.7%) | 0.8313 |
| SFT 2 epochs | 0.5407 | 84/86 | 2.9192 (β11.4%) | 0.8438 |
| SFT 3 epochs | 0.5349 | β | 3.0943 (β6.0%) | β |
| SFT 4 epochs | 0.4593 | β | 3.3287 (+1.1%) | β |
Continued pretraining produced the largest perplexity gain but left the model less willing to answer a question directly. The SFT stage restored that and improved on the base model's answering, at the cost of part of the perplexity gain. No stage reduced MMLU β general business ability is slightly above the base model at every checkpoint, so the domain training did not come at the expense of what the model already knew.
Training past one SFT epoch overfits. Across four epochs, training loss fell 64% while held-out perplexity degraded at every step, until the four-epoch model was worse than base on both perplexity and recall. The apparent recall advantage of the two-epoch checkpoint (0.5407 vs 0.5116) is not statistically distinguishable from noise (11 items better, 8 worse of 86; p = 0.648), and what signal it has sits in generic vocabulary rather than business terms. This adapter is the one-epoch checkpoint.
No learning-rate schedule was used β a flat 1e-4 throughout β so this result is specific to that configuration rather than a general claim about the data.
Not measured: safety behaviour, and performance on business material outside the six domains above. Teaching quality was assessed qualitatively, not by a benchmark. Treat the model as a research artefact, not a deployed tutor.
Intended use
Explaining business concepts to learners, at a technical level it adapts as the conversation goes. It is a research artefact for studying whether synthetic teaching data transfers pedagogy to a smaller open model.
It is not suitable for financial, legal, tax or accounting advice, for grading, or for any decision affecting a person. Its knowledge comes from synthetic passages written by a language model and filtered by another; factual errors survive that process.
Usage
The adapter expects a system turn describing the tutor role and the learner, which is the shape it was trained on:
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base = "Qwen/Qwen3.6-35B-A3B"
tok = AutoTokenizer.from_pretrained(base)
model = AutoModelForCausalLM.from_pretrained(base, device_map="auto")
model = PeftModel.from_pretrained(model, "ashcash15/bus-chat-35b")
messages = [
{"role": "system", "content":
"You are an expert business tutor at a university, teaching one student "
"one-to-one. Adjust how technical you are to the student in front of you: "
"go simpler when they show confusion, go deeper when they are ready or "
"ask for it.\n\nTHE STUDENT\n- a junior business major, first accounting "
"course, uneasy with anything that looks like calculus"},
{"role": "user", "content": "I don't really get accruals. Can you help?"},
]
prompt = tok.apply_chat_template(messages, tokenize=False,
add_generation_prompt=True)
out = model.generate(**tok(prompt, return_tensors="pt").to(model.device),
max_new_tokens=512)
print(tok.decode(out[0], skip_special_tokens=True))
Serving with vLLM:
vllm serve Qwen/Qwen3.6-35B-A3B --enable-lora \
--lora-modules bus=ashcash15/bus-chat-35b
Training data
The corpus and the tutoring dialogues are both synthetic. Passages were written by Kimi-K2.6 and screened by a deterministic code gate plus a GPT-5.4 judge. Dialogues were written by DeepSeek-V4-Pro against a sampled learner profile, screened by a structural gate (which enforced that difficulty moved in both directions) and a five-dimension GPT-5.4 rubric covering scaffolding, whether each difficulty shift was justified, misconception handling, level fit and learner-voice realism.
Limitations
- Synthetic training data throughout; no human-authored ground truth.
- Knowledge is limited to the six domains listed above.
- The base model reasons before answering; budget tokens accordingly.
- LoRA rank 32 over all linear layers; 431 non-zero
lora_Btensors. - Evaluated on cloze recall, perplexity and MMLU only β none measures teaching quality directly.
Citation
@misc{bus-chat-35b,
title = {bus-chat-35b: a two-stage business tutoring LoRA adapter for Qwen3.6-35B-A3B},
author = {Ashley Castelino},
year = {2026},
url = {https://huggingface.co/ashcash15/bus-chat-35b}
}
- Downloads last month
- 21
Model tree for ashcash15/bus-chat-35b
Base model
Qwen/Qwen3.6-35B-A3B