--- title: "Indonesian GPT2 Medical Chatbot" tags: - gpt2 base_model: - indonesian-nlp/gpt2 datasets: - Danda245/medical-qa-id-llama-split --- # Indonesian GPT2 Medical Chatbot This model is a fine-tuned version of GPT-2 for medical chatbot in the Indonesian language. It can be used to generate answers to various medical questions. #### Model Sources - **Repository:** [indonesian-nlp/gpt2](https://huggingface.co/indonesian-nlp/gpt2) #### Dataset - **Repository:** [Danda245/medical-qa-id-llama-split](https://huggingface.co/datasets/Danda245/medical-qa-id-llama-split) | Metric | Value | |----------------------------------|------------------------------| | **Global Steps** | 14480 | | **Training Loss** | 0.3822 | | **Training Runtime** | 15150.72 seconds | | **Training Samples per Second** | 11.47 samples/sec | | **Training Steps per Second** | 0.96 steps/sec | | **Total FLOPs** | 4.54e+16 | | **Epoch** | 5.0 | #### How to Use ```bash !pip install transformers torch from transformers import AutoModelForCausalLM, AutoTokenizer import torch model_name = "lafarizo/indo_medical_gpt2_v2" model = AutoModelForCausalLM.from_pretrained(model_name) tokenizer = AutoTokenizer.from_pretrained(model_name) device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') model.to(device) if tokenizer.pad_token is None: tokenizer.pad_token = tokenizer.eos_token input_text = input("Pertanyaan: ") inputs = tokenizer(input_text, return_tensors="pt", truncation=True, padding=True, max_length=512) input_ids = inputs['input_ids'].to(device) attention_mask = inputs['attention_mask'].to(device) outputs = model.generate( input_ids=input_ids, attention_mask=attention_mask, max_length=512, num_beams=5, temperature=0.7, top_k=50, top_p=0.9, no_repeat_ngram_size=2, do_sample=True, eos_token_id=tokenizer.eos_token_id, pad_token_id=tokenizer.pad_token_id ) generated_answer = tokenizer.decode(outputs[0], skip_special_tokens=True) if generated_answer.lower().startswith(input_text.lower()): generated_answer = generated_answer[len(input_text):].strip() print("Jawaban: ", generated_answer)