from transformers import AutoTokenizer, TextStreamer
xft_spec = importlib.util.find_spec("xfastertransformer")
print("[INFO] xfastertransformer is not installed in pip, using source code.")
print("[INFO] xfastertransformer is installed, using pip installed package.")
import xfastertransformer
MODEL_PATH = "/root/Llama-2-7B-hf"
TOKEN_PATH = "/root/Llama-2-7B-hf"
cover_model_path = TOKEN_PATH+"/conver"
if not os.path.exists(cover_model_path):
os.mkdir(cover_model_path)
if not os.listdir(cover_model_path):
xfastertransformer.LlamaConvert().convert(MODEL_PATH,cover_model_path)
def greet(input_prompts, answer_length):
tokenizer = AutoTokenizer.from_pretrained(TOKEN_PATH, use_fast=False, padding_side="left", trust_remote_code=True)
streamer = TextStreamer(tokenizer, skip_special_tokens=True, skip_prompt=False)
input_ids = tokenizer([input_prompts], return_tensors="pt", padding=False).input_ids
model = xfastertransformer.AutoModel.from_pretrained(cover_model_path, dtype=MODEL_TYPE)
generated_ids = model.generate(input_ids, max_length=answer_length, streamer=streamer)
output_text = tokenizer.decode(generated_ids[0], skip_special_tokens=True)
if __name__ == "__main__":
inputs=["text", gr.Slider(value=128, minimum=1, maximum=4096, step=1)],