dohyunku9's picture
Release MetaboLLM-Gemma-3-4B adapter
a776052
|
Raw
History Blame Contribute Delete
1.73 kB
metadata
base_model: google/gemma-3-4b-it
library_name: peft
pipeline_tag: text-generation
license: gemma
tags:
  - lora
  - metabolomics

MetaboLLM-Gemma-3-4B

PEFT LoRA adapter for metabolomics and biochemical knowledge tasks, trained from google/gemma-3-4b-it. The base-model weights are not included in this repository.

Requires transformers>=4.51, since the chat template ships as a standalone chat_template.jinja file.

pip install -U "transformers>=4.51" peft accelerate torch

google/gemma-3-4b-it is a gated model on the Hub. Accept its license and authenticate (hf auth login) before loading, or the base weights will fail to download.

Usage

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

BASE = "google/gemma-3-4b-it"
ADAPTER = "MetaboLLM/MetaboLLM-Gemma-3-4B"

tokenizer = AutoTokenizer.from_pretrained(ADAPTER)
model = AutoModelForCausalLM.from_pretrained(
    BASE,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
model = PeftModel.from_pretrained(model, ADAPTER)
model.eval()

messages = [
    {"role": "system", "content": "You are a metabolomics expert."},
    {"role": "user", "content": "What is the biological role of L-Alanine?"},
]
text = tokenizer.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)

outputs = model.generate(**inputs, max_new_tokens=512, do_sample=False)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:],
                       skip_special_tokens=True))

Call model.merge_and_unload() after loading to fold the adapter into the base weights for faster repeated inference.