CoolFace
Modelpublic

Nanite-Labs/nanites-smoky-1b-chat

sourceHugging Faceapache-2.0updated 17d agoView on Hugging Face
0likes
Model Card

nanites-smoky-1b-chat

[image]

A Llama-3.2-1B-Instruct model fine-tuned to play the role of an old resident of the Great Smoky Mountains of the 1930s in conversation. You talk to it; the old-timer answers in period voice with regional vocabulary.

This is the chat-tuned sibling of the CosyVoice2 gender-pooled speech voices (Earl / male at Nanite-Labs/nanites-smoky-speech-earl, Ethel / female at Nanite-Labs/nanites-smoky-speech-ethel). The chat model provides the language behind the TTS; pair them for a text-and-speech experience.

What it does

Given a modern-English question about life in the Smokies (work, family, food, music, religion, hardships, the mountains themselves), the model answers in 1-3 sentences in the voice of an old Smoky Mountain resident. The voice uses regional vocabulary ("warn't", "pore", "y'all", "holler", "crick", "taters", "a-going", "nigh onto", etc.) and avoids modern references.

This is a small (1B) finetune on a small (~93 Q&A in 84 train / 9 val) curated dataset, not a comprehensive knowledge model. It plays the character convincingly for the regional register; it does not answer factual questions about the Smokies in general.

What it doesn't do

  • —It is not an authoritative history source. The training data is interviews from Joseph Sargent Hall's 1939 field recordings; the model's "facts" reflect those speakers' lived experience, not academic history.
  • —It does not represent any single Hall speaker — the dataset was distilled by a teacher LLM that paraphrased the recordings in a generalized regional voice. No voice clone, no single persona.
  • —It cannot generate audio. For speech, use the CosyVoice2 voices (experts/smoky/cosyvoice_infer.py --sft_spk_id ...).

Training

  • —Base: unsloth/llama-3.2-1b-instruct-unsloth-bnb-4bit (the 4-bit quantized Llama-3.2-1B-Instruct; the adapter fine-tunes on top)
  • —Method: QLoRA via unsloth (4-bit base, LoRA r=16 on all attention + MLP projections)
  • —Data: 84 train / 9 val Alpaca-format Q&A pairs (experts/smoky/data/splits_chat/). The seed is a small hand-authored set; the bulk is teacher-distilled from the Hall transcripts via a local ollama-served LLM (nemotron-3-nano:30b). The teacher is asked to paraphrase in a generalized regional voice, so the chat model does not reproduce the speakers' specific words or voices.
  • —Context: 1024 tokens
  • —Output: models/smoky/run_chat/adapter/ (LoRA adapter)

How to use

The adapter is published here. To run locally:

python
import torch
from unsloth import FastLanguageModel

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name="Nanite-Labs/nanites-smoky-1b-chat",
    max_seq_length=1024,
    dtype=None,
    load_in_4bit=True,
)
FastLanguageModel.for_inference(model)

prompt = """Below is an instruction that describes a task. Write a response that appropriately completes the request.

### Instruction:
You are an old resident of the Great Smoky Mountains of the 1930s. A visitor has just asked you a question. Answer in the voice of a Smoky Mountain old-timer — 1-3 sentences, regional vocabulary, period-appropriate. Stay in character.

### Input:
How was life growing up around here?

### Response:
"""

inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
with torch.no_grad():
    out = model.generate(
        **inputs,
        max_new_tokens=200,
        do_sample=True,
        temperature=0.7,
        pad_token_id=tokenizer.eos_token_id,
    )
print(tokenizer.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))

Or run the included REPL:

bash
python -m experts.smoky.chat

Pairing with TTS

For a speech-enabled experience, synthesize the chat model's output with the CosyVoice2 gender-pooled voices:

bash
python experts/smoky/cosyvoice_infer.py \
    --model_dir experts/smoky/data/cosyvoice/voices/smoky-speech-male \
    --text "$(python -m experts.smoky.chat --noninteractive 'What was sharecropping like?')" \
    --sft_spk_id "<|male_pool|>" \
    --out out.wav

Provenance

  • —Base model: meta-llama/Llama-3.2-1B-Instruct via unsloth's 4-bit quantization
  • —Training data: Joseph Sargent Hall Collection, University of South Carolina Southern Appalachian English archive (https://appalachian-english.library.sc.edu/transcripts.html). The audio recordings (1939) are public domain. The transcripts are copyrighted to Michael Montgomery and Paul Reed (2017) and were used locally only — they are not redistributed in this repo. The Q&A training pairs were generated from the transcripts by a teacher LLM and are also not the raw transcript text.

License

Code & recipe: Apache 2.0 Base model: see Meta Llama 3.2 Community License Training data (audio): public domain (1939) Training data (transcripts): not redistributed Training data (Q&A): generated by local teacher LLM, not raw transcript