Views
No views yet
pip install hf-hub-ctranslate2>=2.12.0 ctranslate2>=3.17.11# from transformers import AutoTokenizer
2model_name = "michaelfeil/ct2fast-Phind-CodeLlama-34B-v2"
3
4
5from hf_hub_ctranslate2 import GeneratorCT2fromHfHub
6model = GeneratorCT2fromHfHub(
7 # load in int8 on CUDA
8 model_name_or_path=model_name,
9 device="cuda",
10 compute_type="int8_float16",
11 # tokenizer=AutoTokenizer.from_pretrained("{ORG}/{NAME}")
12)
13outputs = model.generate(
14 text=["def fibonnaci(", "User: How are you doing? Bot:"],
15 max_length=64,
16 include_prompt_in_result=False
17)
18print(outputs)compute_type=int8_float16 for device="cuda"compute_type=int8 for device="cpu"LLama-2 -> removed <pad> token.pip install git+https://github.com/huggingface/transformers.git### System Prompt
You are an intelligent programming assistant.
### User Message
Implement a linked list in C++
### Assistant
...1
2from transformers import AutoTokenizer, LlamaForCausalLM
3from human_eval.data import write_jsonl, read_problems
4from tqdm import tqdm
5
6# initialize the model
7
8model_path = "Phind/Phind-CodeLlama-34B-v2"
9model = LlamaForCausalLM.from_pretrained(model_path, device_map="auto")
10tokenizer = AutoTokenizer.from_pretrained(model_path)
11
12# HumanEval helper
13
14def generate_one_completion(prompt: str):
15 tokenizer.pad_token = tokenizer.eos_token
16 inputs = tokenizer(prompt, return_tensors="pt", truncation=True, max_length=4096)
17
18 # Generate
19 generate_ids = model.generate(inputs.input_ids.to("cuda"), max_new_tokens=384, do_sample=True, top_p=0.75, top_k=40, temperature=0.1)
20 completion = tokenizer.batch_decode(generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]
21 completion = completion.replace(prompt, "").split("\n\n\n")[0]
22
23 return completion
24
25# perform HumanEval
26problems = read_problems()
27
28num_samples_per_task = 1
29samples = [
30 dict(task_id=task_id, completion=generate_one_completion(problems[task_id]["prompt"]))
31 for task_id in tqdm(problems)
32 for _ in range(num_samples_per_task)
33]
34write_jsonl("samples.jsonl", samples)
35
36# run `evaluate_functional_correctness samples.jsonl` in your HumanEval code sandbox