--- language: he widget: - text: "האיש האחרון עלי אדמות ישב לבד בחדרו כשלפתע נשמעה נקישה" - text: "שם היצירה: " - text: "\n\n שם היצירה:" license: mit --- # Hebrew-GPT2-345M-Stage An undertrained GPT2 based Hebrew text generation model which I slightly trained at 2020 on text from "Bama Hadasha" ("במה חדשה") A gguf version is [available here](https://huggingface.co/Norod78/Hebrew-GPT2-345M-Stage/resolve/main/ggml-model-f16.gguf?download=true) ## Dataset ### Around 10% of the text from [stage.co.il ](http://stage.co.il/) ## LM Studio A configuration scheme for LM Studio is [available here](https://huggingface.co/Norod78/Hebrew-GPT2-345M-Stage/raw/main/lm_studio_model_config_HebStage3M.json) #### Usage with Transformers - sample code ```python import os os.environ["PYTORCH_ENABLE_MPS_FALLBACK"] = "1" from transformers import pipeline, set_seed import random model_id = "Norod78/Hebrew-GPT2-345M-Stage" text_generator = pipeline('text-generation', model=model_id, tokenizer=model_id, device_map="auto") max_length = 256 top_k = 70 top_p = 0.92 temperature = 1.0 max_seed = (2**32)-1 global_seed = random.randint(0, max_seed) def text_generation(input_text = ''): global global_seed global_seed = global_seed + 1 if global_seed >= max_seed: global_seed = 0 if input_text == None or len(input_text) == 0: input_text = "\n" set_seed(global_seed) generated_text = text_generator(input_text, max_length=max_length, top_k=top_k, top_p=top_p, temperature=temperature, do_sample=True, repetition_penalty=1.4, num_return_sequences=1) parsed_text = generated_text[0]["generated_text"].replace("<|startoftext|>", "").replace("\r","").replace("\n\n", "\n").replace("\t", " ").replace("<|pad|>", " * ").replace("\"\"", "\"").strip() #print("parsed_text = \"" + parsed_text + "\" (seed = " + str(global_seed) + ")") return parsed_text def main(): prompt_prefix = "\n\n שם היצירה: " prompt_text = prompt_prefix + "חגבים ירוקים מקפצים בשדה" result = text_generation(input_text=prompt_text) print("result : \n" + str(result)) if __name__ == '__main__': main() ```