Views
No views yet
O: Bukan entitasB-Person, I-Person: Entitas PersonB-Place, I-Place: Entitas PlaceB-Organisation, I-Organisation: Entitas Organisationpip install transformers torch1from transformers import AutoTokenizer, AutoModelForTokenClassification
2import torch
3
4# Load model dan tokenizer
5model_name = "ecaaa09/IndoELECTRA-NER-Singgalang"
6tokenizer = AutoTokenizer.from_pretrained(model_name)
7model = AutoModelForTokenClassification.from_pretrained(model_name)
8
9# Fungsi untuk prediksi NER
10def predict_ner(sentence):
11 tokens = sentence.split()
12 inputs = tokenizer(tokens, is_split_into_words=True, return_tensors="pt")
13
14 with torch.no_grad():
15 outputs = model(**inputs)
16
17 predictions = torch.argmax(outputs.logits, dim=-1).squeeze().tolist()
18
19 results = []
20 word_ids = inputs.word_ids()
21 prev_word = None
22
23 for idx, word_idx in enumerate(word_ids):
24 if word_idx is None or word_idx == prev_word:
25 continue
26 label = model.config.id2label[predictions[idx]]
27 results.append((tokens[word_idx], label))
28 prev_word = word_idx
29
30 return results
31
32# Contoh penggunaan
33sentence = "Joko Widodo bertemu dengan Prabowo di Jakarta"
34results = predict_ner(sentence)
35
36for token, label in results:
37 print(f"{token:<20} {label}")Joko B-Person
Widodo I-Person
bertemu O
dengan O
Prabowo B-Person
di O
Jakarta B-Place| Nama | NIM |
|---|---|
| Rayhan Fatih Gunawan | 122140134 |
| Elsa Elisa Yohana Sianturi | 122140135 |
| Nashwa Putri Laisya | 122140180 |
| Anisa Fitriyani | 122450019 |
| Siti Nur Aarifah | 122450006 |
| Muhammad Nelwan Fakhri | 122140173 |
| Raditya Erza Farandi | 122140209 |
1@misc{indoelectra-ner-singgalang,
2 author = {Rayhan Fatih Gunawan et al.},
3 title = {IndoELECTRA NER - Singgalang Dataset},
4 year = {2025},
5 publisher = {Hugging Face},
6 howpublished = {\url{https://huggingface.co/ecaaa09/IndoELECTRA-NER-Singgalang}}
7}