Tutorial Lengkap Hugging Face Transformers: NLP Modern dengan Python

# Tutorial Lengkap Hugging Face Transformers: Pretrained Models untuk NLP dan Vision Hugging Face Transformers adalah library paling populer untuk state-of-the-art pretrained models. Dengan ribuan mo...

By Ruby Abdullah · · tutorial
Hugging FaceTransformersNLPBERTPythonDeep Learning

Tutorial Lengkap Hugging Face Transformers: Pretrained Models untuk NLP dan Vision

Hugging Face Transformers adalah library paling populer untuk state-of-the-art pretrained models. Dengan ribuan model tersedia, Anda dapat dengan mudah menggunakan BERT, GPT, T5, dan lainnya untuk klasifikasi teks, generasi, terjemahan, dan tugas computer vision.

Mengapa Hugging Face Transformers?

Keunggulan Transformers:
  • Ribuan model: Akses ke 200,000+ pretrained models
  • Multiple frameworks: Support PyTorch, TensorFlow, JAX
  • Mudah digunakan: Simple pipelines API
  • Production ready: Optimized inference
  • Community aktif: Update regular dan model baru

Use Cases:
  • Text classification dan NER
  • Question answering
  • Text generation (GPT, LLaMA)
  • Translation
  • Image classification dan object detection

Instalasi

pip install transformers

Dengan PyTorch

pip install transformers torch

Dengan TensorFlow

pip install transformers tensorflow

Dengan semua extras

pip install transformers[torch,sentencepiece,tokenizers]

Verify

python -c "import transformers; print(transformers.version)"

Quick Start dengan Pipelines

1. Text Classification

from transformers import pipeline

Sentiment analysis

classifier = pipeline("sentiment-analysis")

result = classifier("Saya suka produk ini! Luar biasa!")

print(result) # [{'label': 'POSITIVE', 'score': 0.9998}]

Multiple texts

results = classifier([

"Ini bagus sekali!",

"Ini sangat buruk!",

"Biasa saja, tidak istimewa."

])

Custom model

classifier = pipeline(

"sentiment-analysis",

model="nlptown/bert-base-multilingual-uncased-sentiment"

)

2. Named Entity Recognition

from transformers import pipeline

ner = pipeline("ner", groupedentities=True)

result = ner("Nama saya Budi dan saya bekerja di Google di Jakarta.")

print(result)

[{'entitygroup': 'PER', 'word': 'Budi', ...},

{'entitygroup': 'ORG', 'word': 'Google', ...},

{'entitygroup': 'LOC', 'word': 'Jakarta', ...}]

3. Question Answering

from transformers import pipeline

qa = pipeline("question-answering")

context = """

Hugging Face adalah perusahaan yang mengembangkan tools untuk machine learning.

Mereka terkenal dengan library Transformers dan Hugging Face Hub.

Perusahaan ini didirikan pada tahun 2016.

"""

result = qa(

question="Kapan Hugging Face didirikan?",

context=context

)

print(result) # {'answer': '2016', 'score': 0.98, ...}

4. Text Generation

from transformers import pipeline

GPT-2

generator = pipeline("text-generation", model="gpt2")

result = generator(

"Masa depan AI adalah",

maxlength=50,

numreturnsequences=3

)

Dengan model lebih baik

generator = pipeline("text-generation", model="meta-llama/Llama-2-7b-hf")

result = generator(

"Jelaskan machine learning:",

maxnewtokens=100,

temperature=0.7

)

5. Translation

from transformers import pipeline

English ke French

translator = pipeline("translationentofr")

result = translator("Hello, how are you?")

print(result) # [{'translationtext': 'Bonjour, comment allez-vous?'}]

Multi-language

translator = pipeline("translation", model="Helsinki-NLP/opus-mt-en-id")

result = translator("Machine learning is fascinating.")

6. Summarization

from transformers import pipeline

summarizer = pipeline("summarization")

article = """

Teks artikel panjang disini...

"""

summary = summarizer(

article,

maxlength=100,

minlength=30,

dosample=False

)

print(summary[0]['summarytext'])

Artikel Terkait

Tutorial BERTopic: Topic Modeling Modern dengan Embeddings

BERTopic: Pemodelan Topik Modern dengan Embedding BERTopic adalah library pemodelan topik yang menggabungkan embedding t...

Tutorial Sentence Transformers: Embeddings, Similarity, dan Reranker

Sentence Transformers: Embedding, Kemiripan Semantik, dan Reranker Sentence Transformers (sering disebut SBERT) adalah p...

Tutorial spaCy: NLP Berskala Industri dengan Python

spaCy: NLP Kelas Industri di Python spaCy adalah pustaka open-source untuk pemrosesan bahasa alami (NLP) yang dirancang ...

Tutorial OpenCV + Deep Learning: Image Processing Modern dengan Python

OpenCV + Deep Learning: Tutorial Komprehensif Daftar Isi Pendahuluan Prasyarat Dasar-Dasar Preprocessing Gambar [T...