Ivme-Conversate-v2-Base / NEW_FILES.md
ereniko's picture
Add safetensors + Transformers (AutoModelForCausalLM) support
5974fd0 verified
|
Raw
History Blame Contribute Delete
1.27 kB

Transformers / safetensors support

This model can now be loaded with AutoModelForCausalLM instead of the manual pickle-loading workflow, and weights are available as model.safetensors.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
    "IvmeLabs/Ivme-Conversate-v2-Base", trust_remote_code=True, dtype=torch.float32,
)
tokenizer = AutoTokenizer.from_pretrained("IvmeLabs/Ivme-Conversate-v2-Base", trust_remote_code=True)
model.eval()

inputs = tokenizer("Once upon a time, there was a", return_tensors="pt")
out = model.generate(
    **inputs, max_new_tokens=200, do_sample=True,
    temperature=0.8, top_k=50, pad_token_id=tokenizer.pad_token_id,
)
print(tokenizer.decode(out[0], skip_special_tokens=True))

trust_remote_code=True is required (custom architecture: RoPE + SwiGLU + RMSNorm dense decoder). The original ckpt_final.pt pickle checkpoint and model/ architecture source remain in this repo unchanged for backwards compatibility.

Note on batch generation: use left-padding (tokenizer.padding_side = "left") — the model doesn't use an explicit attention mask over padded positions, so right-padding within a batch will give incorrect results.