Atom Electron 1.0

Atom Electron 1.0 is an instruction-tuned LoRA adapter developed by CrowtherLabs. It is distributed as a PEFT/LoRA adapter and is self-contained — the tokenizer and chat template are bundled in this repository, so you can load and run it with a single repo id and no extra downloads to configure.

  • Developer: CrowtherLabs
  • Model type: Causal language model (decoder-only), LoRA adapter (PEFT)
  • Language: English
  • License: Apache-2.0
  • Format: LoRA adapter + bundled tokenizer & chat template

Table of contents

  1. Installation
  2. Quick start
  3. Chat format
  4. Generation parameters
  5. Merging the adapter
  6. Hardware requirements
  7. Repository contents
  8. Adapter configuration
  9. License

Installation

pip install -U transformers peft accelerate torch

Optional, for faster/lighter loading:

pip install -U bitsandbytes   # 4-bit / 8-bit quantized loading
pip install -U hf_xet         # accelerated downloads from the Hub

Quick start

Because the tokenizer is bundled, both the model and tokenizer load from the same repo id:

import torch
from peft import AutoPeftModelForCausalLM
from transformers import PreTrainedTokenizerFast

REPO = "CrowtherLabs/Atom-Electron-1.0"

tokenizer = PreTrainedTokenizerFast.from_pretrained(REPO)
model = AutoPeftModelForCausalLM.from_pretrained(
    REPO,
    torch_dtype="auto",
    device_map="auto",
)
model.eval()

messages = [
    {"role": "user", "content": "Explain what a LoRA adapter is in two sentences."},
]

inputs = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    return_tensors="pt",
).to(model.device)

with torch.no_grad():
    outputs = model.generate(inputs, max_new_tokens=512, do_sample=True, temperature=0.7, top_p=0.9)

response = tokenizer.decode(outputs[0][inputs.shape[-1]:], skip_special_tokens=True)
print(response)

AutoPeftModelForCausalLM resolves and loads the underlying base weights automatically from the adapter configuration — there is nothing else to download or wire up by hand.

The bundled tokenizer is loaded with PreTrainedTokenizerFast (this is an adapter repo, so it has no top-level config.json for AutoTokenizer to infer a class from — PreTrainedTokenizerFast reads the bundled tokenizer.json directly and works from the repo id alone).


Chat format

Always build prompts with apply_chat_template rather than concatenating strings by hand — it applies the correct special tokens and role structure for you.

messages = [
    {"role": "system",  "content": "You are a helpful research assistant."},
    {"role": "user",    "content": "Summarise the key idea of transfer learning."},
]

prompt = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)

This is a reasoning-capable model: responses may contain an internal reasoning section followed by the final answer. You can hint how much deliberation to spend with the optional reasoning_effort argument ("low", "medium", or "high"):

inputs = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    reasoning_effort="high",
    return_tensors="pt",
)

Multi-turn conversations are supported — just append {"role": "assistant", ...} and the next {"role": "user", ...} turns to the messages list.


Generation parameters

Sensible starting points:

Parameter Suggested value Notes
max_new_tokens 512–2048 Raise for long-form / multi-step answers.
do_sample True False for deterministic (greedy) decoding.
temperature 0.6–0.8 Lower = more focused, higher = more creative.
top_p 0.9 Nucleus sampling.
repetition_penalty 1.0–1.1 Nudge up if you see loops.

Merging the adapter (optional)

For deployment you can fold the adapter into the base weights to get a standalone model (no PEFT dependency at inference time):

from peft import AutoPeftModelForCausalLM

model = AutoPeftModelForCausalLM.from_pretrained("CrowtherLabs/Atom-Electron-1.0")
merged = model.merge_and_unload()

merged.save_pretrained("atom-electron-1.0-merged")
tokenizer.save_pretrained("atom-electron-1.0-merged")

The merged folder is a full-size model and will be substantially larger than the adapter.


Hardware requirements

  • Adapter size: ~1.7 GB (this repository).
  • Base weights (fetched automatically on first load): ~20B-parameter class model.
  • Recommended GPU: ≥16 GB VRAM for bf16/quantized inference; more headroom is advised for long contexts or batched generation.
  • CPU-only loading is possible but slow and memory-heavy; a GPU is strongly recommended.
  • Use device_map="auto" (requires accelerate) to shard automatically, and bitsandbytes for 4-bit/8-bit loading on smaller GPUs.

Repository contents

File Purpose
adapter_model.safetensors LoRA adapter weights
adapter_config.json PEFT/LoRA configuration
tokenizer.json Fast tokenizer
tokenizer_config.json Tokenizer settings
special_tokens_map.json Special-token mapping
chat_template.jinja Chat/prompt template
README.md This model card

Adapter configuration

Setting Value
PEFT type LoRA
Rank (r) 32
lora_alpha 32
lora_dropout 0.0
Task type CAUSAL_LM
Target modules q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj, lm_head

License

Released under the Apache-2.0 license. You are free to use, modify, and distribute the model subject to the terms of that license. Please review it before use in production.


Atom Electron 1.0 · developed by CrowtherLabs.

Downloads last month
25
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support