# Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("lamm-mit/BioinspiredMixtral")
model = AutoModelForCausalLM.from_pretrained("lamm-mit/BioinspiredMixtral")
messages = [
{"role": "user", "content": "Who are you?"},
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=40)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))Quick Links
BioinspiredMixtral: Large Language Model for the Mechanics of Biological and Bio-Inspired Materials using Mixture-of-Experts
To accelerate discovery and guide insights, we report an open-source autoregressive transformer large language model (LLM), trained on expert knowledge in the biological materials field, especially focused on mechanics and structural properties.
The model is finetuned with a corpus of over a thousand peer-reviewed articles in the field of structural biological and bio-inspired materials and can be prompted to recall information, assist with research tasks, and function as an engine for creativity.
The model is based on mistralai/Mixtral-8x7B-Instruct-v0.1.
This model is based on work reported in https://doi.org/10.1002/advs.202306724, but uses a mixture-of-experts strategy.
from llama_cpp import Llama
model_path='lamm-mit/BioinspiredMixtral/ggml-model-q5_K_M.gguf'
chat_format="mistral-instruct"
llm = Llama(model_path=model_path,
n_gpu_layers=-1,verbose= True,
n_ctx=10000,
#main_gpu=0,
chat_format=chat_format,
#split_mode=llama_cpp.LLAMA_SPLIT_LAYER
)
Or, download directly from Hugging Face:
from llama_cpp import Llama
model_path='lamm-mit/BioinspiredMixtral/ggml-model-q5_K_M.gguf'
chat_format="mistral-instruct"
llm = Llama.from_pretrained(
repo_id=model_path,
filename="*q5_K_M.gguf",
verbose=True,
n_gpu_layers=-1,
n_ctx=10000,
#main_gpu=0,
chat_format=chat_format,
)
For inference:
def generate_BioMixtral (system_prompt='You are an expert in biological materials, mechanics and related topics.', prompt="What is spider silk?",
temperature=0.0,
max_tokens=10000,
):
if system_prompt==None:
messages=[
{"role": "user", "content": prompt},
]
else:
messages=[
{"role": "system", "content": system_prompt},
{"role": "user", "content": prompt},
]
result=llm.create_chat_completion(
messages=messages,
temperature=temperature,
max_tokens=max_tokens,
)
start_time = time.time()
result=generate_BioMixtral(system_prompt='You respond accurately.',
prompt="What is graphene? Answer with detail.",
max_tokens=512, temperature=0.7, )
print (result)
deltat=time.time() - start_time
print("--- %s seconds ---" % deltat)
toked=tokenizer(res)
print ("Tokens per second (generation): ", len (toked['input_ids'])/deltat)
- Downloads last month
- 35
Paper for lamm-mit/BioinspiredMixtral
Paper • 2309.08788 • Published • 1

# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="lamm-mit/BioinspiredMixtral") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)