# Fast-Inference with Ctranslate2
Speedup inference while reducing memory by 2x-4x using int8 inference in C++ on CPU or GPU.
quantized version of VMware/open-llama-13b-open-instruct
pip install hf-hub-ctranslate2>=2.12.0 ctranslate2>=3.16.0
# from transformers import AutoTokenizer
model_name = "michaelfeil/ct2fast-open-llama-13b-open-instruct"
from hf_hub_ctranslate2 import GeneratorCT2fromHfHub
model = GeneratorCT2fromHfHub(
# load in int8 on CUDA
model_name_or_path=model_name,
device="cuda",
compute_type="int8_float16",
# tokenizer=AutoTokenizer.from_pretrained("{ORG}/{NAME}")
)
outputs = model.generate(
text=["def fibonnaci(", "User: How are you doing? Bot:"],
max_length=64,
include_prompt_in_result=False
)
print(outputs)
Checkpoint compatible to ctranslate2>=3.16.0 and hf-hub-ctranslate2>=2.12.0
compute_type=int8_float16
fordevice="cuda"
compute_type=int8
fordevice="cpu"
Converted on 2023-06-27 using
ct2-transformers-converter --model VMware/open-llama-13b-open-instruct --output_dir ~/tmp-ct2fast-open-llama-13b-open-instruct --force --copy_files README.md tokenizer_config.json generation_config.json special_tokens_map.json .gitattributes --quantization int8_float16 --trust_remote_code
Licence and other remarks:
This is just a quantized version. Licence conditions are intended to be idential to original huggingface repo.
Original description
VMware/open-llama-13B-open-instruct
Instruction-tuned version of the fully trained Open LLama 13B model. The model is open for COMMERCIAL USE.
NOTE : The model was trained using the Alpaca prompt template
NOTE : Fast tokenizer results in incorrect encoding, set the use_fast = False
parameter, when instantiating the tokenizer
NOTE : The model might struggle with code as the tokenizer merges multiple spaces
License
- Commercially Viable
- Instruction dataset, VMware/open-instruct-v1-oasst-dolly-hhrlhf is under cc-by-sa-3.0
- Language Model, (openlm-research/open_llama_13b) is under apache-2.0
Nomenclature
- Model : Open-llama
- Model Size: 13B parameters
- Dataset: Open-instruct-v1 (oasst,dolly, hhrlhf)
Use in Transformers
import os
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = 'VMware/open-llama-13b-open-instruct'
tokenizer = AutoTokenizer.from_pretrained(model_name, use_fast=False)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.float16, device_map='sequential')
prompt_template = "Below is an instruction that describes a task. Write a response that appropriately completes the request.\n\n### Instruction:\n{instruction}\n\n### Response:"
prompt = 'Explain in simple terms how the attention mechanism of a transformer model works'
inputt = prompt_template.format(instruction= prompt)
input_ids = tokenizer(inputt, return_tensors="pt").input_ids.to("cuda")
output1 = model.generate(input_ids, max_length=512)
input_length = input_ids.shape[1]
output1 = output1[:, input_length:]
output = tokenizer.decode(output1[0])
print(output)
Finetuning details
The finetuning scripts will be available in our RAIL Github Repository
Evaluation
TODO
- Downloads last month
- 8