STEM-Oracle / README.md
Verdugie's picture
Explainer card with a five-subject battery and transcripts
37f9a8c verified
|
Raw History Blame Contribute Delete
9.6 kB
---
license: apache-2.0
language:
- en
base_model: Qwen/Qwen3.5-27B
base_model_relation: finetune
tags:
- 27b
- stem
- tutor
- math
- physics
- chemistry
- biology
- computer-science
- claude-distillation
- conversational
- gguf
- local
- offline
- lm-studio
- llama-cpp
library_name: gguf
pipeline_tag: text-generation
---
**or·a·cle** /ˈôrəkəl/ — a source of wise counsel; one who provides authoritative knowledge.
*From Latin ōrāculum, meaning divine announcement.*
## STEM Oracle
A conceptual explainer fine-tuned from Qwen 3.5 27B on **5,179 STEM conversations**. It covers intro-level math, physics, chemistry, biology and computer science, answering each question in a few plain sentences that lead with the core idea.
By the training file's source tags, about half of the data was written by Claude Haiku and a small share by Claude Opus, a fifth was enhanced by Claude Sonnet, and over a third carries no model tag.
## Selected Responses
Verbatim from the live battery described below: complete replies, single takes. Each is cited to its transcript and turn (T3/6 means turn 3 of 6). Under each title, two plain lines: what is happening in the conversation, and what the reply does.
**Biology: cousins, not grandparents** · [biology](./transcripts/biology.pdf) T3/6
*What's happening: a curious adult with no biology since high school, two turns into how DNA becomes protein, asks whether humans evolved from chimps.*
*What the reply does: corrects the premise in its first two words, then gives an analogy, cousins rather than grandparents, and dates the split at roughly 6 to 7 million years ago, with both lines evolving separately since.*
> Shared ancestor — not direct parentage. We don't descend *from* chimps; we share a common root w/ them. Like cousins, not grandparents. The lineage split roughly 6-7 million years ago, and both lines evolved separately from there.
**Physics: entropy without disorder** · [physics](./transcripts/physics.pdf) T5/6
*What's happening: a high-school junior who rejects definitions that explain nothing has worked through energy, its conservation, cold mountaintops and light pressure, and now asks for entropy without the word disorder.*
*What the reply does: defines entropy as a count of the microscopic arrangements that could produce what you observe, ties more arrangements to less certainty about the actual state, and mentions the disorder metaphor only to drop it.*
> Entropy counts how many microscopic arrangements could produce what you're seeing. More arrangements means less certainty about the actual state. It's a measure of ignorance, not messiness. The "disorder" metaphor has done serious damage — retire it.
**Math: zoom in, zoom out** · [math](./transcripts/math.pdf) T6/6
*What's happening: after five turns on derivatives, limits, integrals and e, the adult relearning calculus asks for one sentence to remember about how derivatives and integrals connect.*
*What the reply does: leads with a contrast to remember, derivatives zoom in and integrals zoom out, then spells out the link in a second sentence: one gives the rate at a point, the other accumulates it over an interval, and they are inverse operations.*
> Derivatives zoom in; integrals zoom out. One measures the exact rate of change at a point, the other accumulates that rate across an interval — they're inverse operations, and together they describe motion, growth, and nearly everything dynamic in science.
**Computer science: why recursion stops** · [computer-science](./transcripts/computer-science.pdf) T2/6
*What's happening: a bootcamp student who wants mental models more than definitions asks what recursion is and why it doesn't just go on forever.*
*What the reply does: defines recursion as a function calling itself on simpler inputs, then answers the second question with an image: each call shrinks toward a bedrock case so simple it just answers, and that is where the calls stop.*
> Recursion is a function calling itself w/ simpler inputs each time. It stops when it hits bedrock — the case so simple it just *answers*. No infinite loop because each call shrinks toward that floor.
**Chemistry: what pH measures** · [chemistry](./transcripts/chemistry.pdf) T2/6
*What's happening: a nursing student who wants practical chemistry before jargon asks what pH actually measures, beyond 'acidity'.*
*What the reply does: names the quantity, hydrogen ion activity, and explains the logarithmic scale: each whole-number step is a tenfold change in concentration.*
> pH measures hydrogen ion activity — how aggressively H⁺ ions are behaving in solution. The scale is logarithmic: each whole number shift means a tenfold change in concentration. It's not just "acidic or basic." It's a precise, exponential readout of chemical environment.
## Versatility Battery
Five short conversations, one per subject, run live against the model. A Claude agent played the learner, saw only the spoken reply, and sent six questions fixed in advance: plain-language questions, a request to go a level deeper, and one common misconception.
Run configuration: `STEM-Oracle-Q4_K_M.gguf`, LM Studio (llama.cpp backend), temp 0.7, max tokens 2048, no system prompt, no think block, no regenerates.
| Subject | Learner | Turns | Result |
|---------|---------|-------|--------|
| **Math** | Adult relearning calculus, math-anxious, intuition first | 6 | Explained derivatives, limits, e and the fundamental theorem, correcting the idea that an integral is only area |
| **Physics** | High-school junior who wants the real reason | 6 | Explained energy, conservation, light pressure and entropy, correcting the idea that mountaintops should be warmer |
| **Chemistry** | Nursing student, practical chemistry before jargon | 6 | Explained dissolving, pH, catalysts and blood buffers, correcting the idea that breaking bonds releases energy |
| **Biology** | Curious adult, no biology since high school | 6 | Explained protein synthesis, antibiotics, boosters and fitness, correcting the idea that humans evolved from chimps |
| **Computer science** | Coding bootcamp student who wants mental models | 6 | Explained stacks and queues, recursion, big-O and page loading, correcting the idea that more RAM always helps |
30 exchanges across five subjects, zero empty replies. Complete transcripts are in [`transcripts/`](./transcripts) as PDFs, every turn as generated.
## How It Was Built
Source tags in the training file attribute 2,576 of the 5,179 records (49.7%) to Claude Haiku and 198 (3.8%) to Claude Opus, mark 1,063 (20.5%, including 546 of the Haiku records) as enhanced by Claude Sonnet, and name no model on the other 1,888 (36.5%). Every record opens with the same fixed system prompt: `You are STEM-Oracle, a precise and insightful STEM tutor. You give conclusions first, then mechanics. You identify common misconceptions proactively. You verify your answers. You build intuition, not just knowledge.` The fine-tune is a bf16 LoRA (r=128, α=256).
## Quick Start
Works with any GGUF runtime: llama.cpp, LM Studio, KoboldCpp (recent builds for this architecture).
```
llama-server --model STEM-Oracle-Q4_K_M.gguf --ctx-size 32768 -ngl 99 --jinja
```
No system prompt is required; the battery ran without one.
Thinking: the two shipped templates disagree. `chat_template.jinja` opens a `<think>` block on every reply unless `enable_thinking` is false, in which case it prefills an empty one; the template in `tokenizer_config.json` always prefills the empty block (`<think>\n\n</think>`). The battery saw no think block in any reply.
## Available Quantizations
| File | Quant | Size |
|------|-------|------|
| `STEM-Oracle-Q4_K_M.gguf` | Q4_K_M | 16.5 GB |
| `STEM-Oracle-Q6_K.gguf` | Q6_K | 22.1 GB |
| `STEM-Oracle-Q8_0.gguf` | Q8_0 | 28.6 GB |
| `STEM-Oracle-BF16.gguf` | BF16 | 53.8 GB |
The battery ran on `STEM-Oracle-Q4_K_M.gguf`.
## Model Details
| Attribute | Value |
|-----------|-------|
| **Base Model** | Qwen 3.5 27B (hybrid GatedDeltaNet + attention) |
| **Training Data** | 5,179 STEM conversations: 3,858 single exchanges, 1,321 multi-turn of two to six exchanges |
| **Fine-tune Method** | bf16 LoRA (r=128, α=256) |
| **Schedule** | lr 5e-5, 3 epochs; final loss 0.492 |
| **Reasoning** | no think blocks in the training data |
| **Context** | 256k native |
| **License** | Apache 2.0 |
## Limitations & Responsible Use
- **Unreliable on worked problems.** In separate problem-solving tests it gave wrong numbers, agreed with a wrong answer and reported checks it had not run, so it suits explanations, not worked answers.
- **Short by default.** Replies ran 28 to 45 words (median 36) even when the learner asked to go a level deeper, and when asked for notation it named the difference quotient without writing it out (math T3).
- **Simplifies, sometimes into error.** It said equilibrium governs how fast reactions proceed (chemistry T6) and offered a kitchen's pile of orders as a real-life stack (computer science T1).
- **Open weights, Apache 2.0.** Deploy responsibly.
## The Candid Line
| Model | Size | For |
|-------|------|-----|
| [Candid 3.5](https://huggingface.co/Verdugie/Candid-3.5) | 27B | conversation, opinion, pushback; EN/ES |
| **STEM Oracle** (this model) | 27B | STEM concept explanations |
## Dataset
Training data: [`stem_oracle_5179conv.json`](https://huggingface.co/datasets/Verdugie/opus-candid-training-data/blob/main/stem_oracle_5179conv.json), ShareGPT format, Apache 2.0.
---
*Built by [Verdugie](https://huggingface.co/Verdugie)*