ทำความเข้าใจ transformer

Python เบื้องต้นสำหรับ LLMs

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Transformer คืออะไร?

  • สถาปัตยกรรม deep learning
  • ประมวลผล เข้าใจ และสร้างข้อความ
  • ใช้ใน LLM ส่วนใหญ่
  • จัดการลำดับข้อความยาวแบบขนาน

ภาพประกอบสถาปัตยกรรม transformer สามแบบ: encoder-only, decoder-only และ encoder-decoder

Python เบื้องต้นสำหรับ LLMs

สถาปัตยกรรม transformer

ภาพประกอบสถาปัตยกรรม transformer สามแบบ: encoder-only, decoder-only และ encoder-decoder

  • ดูรายละเอียดสถาปัตยกรรมได้ใน Hugging Face model card
Python เบื้องต้นสำหรับ LLMs

Encoder-only

ภาพประกอบ encoder-only

  • เข้าใจข้อความอินพุต
  • ไม่มีเอาต์พุตแบบลำดับ
  • งานที่พบบ่อย:
    • การจำแนกข้อความ
    • การวิเคราะห์ความรู้สึก
    • การตอบคำถามแบบ extractive (ดึงหรือติดป้ายกำกับ)
  • โมเดล BERT
  • ตัวอย่าง: "distilbert-base-uncased-distilled-squad"
Python เบื้องต้นสำหรับ LLMs

Encoder-only

ภาพประกอบ encoder-only

llm = pipeline(model="bert-base-uncased")
print(llm.model)
BertForMaskedLM(
  (bert): ...
    )
    (encoder): BertEncoder(
      ...
print(llm.model.config)
BertConfig {
...
  "architectures": [
    "BertForMaskedLM"
...
Python เบื้องต้นสำหรับ LLMs

Encoder-only

ภาพประกอบ encoder-only

print(llm.model.config.is_decoder)
False
  • หรือใช้: llm.model.config.is_encoder_decoder
Python เบื้องต้นสำหรับ LLMs

Decoder-only

ภาพประกอบ decoder-only

  • เน้นที่เอาต์พุต
  • งานที่พบบ่อย:
    • การสร้างข้อความ
    • การตอบคำถามแบบ generative (ประโยคหรือย่อหน้า)
  • โมเดล GPT
  • ตัวอย่าง: "gpt-5.4-mini"
Python เบื้องต้นสำหรับ LLMs

Decoder-only

ภาพประกอบ decoder-only

llm = pipeline(model="gpt2")
print(llm.model.config)
GPT2Config {
...
  "architectures": [
    "GPT2LMHeadModel"
  ],
...
  "task_specific_params": {
    "text-generation": {
...
print(llm.model.config.is_decoder)
False
Python เบื้องต้นสำหรับ LLMs

Encoder-decoder

ภาพประกอบ encoder-decoder

  • เข้าใจและประมวลผลทั้งอินพุตและเอาต์พุต
  • งานที่พบบ่อย:
    • การแปลภาษา
    • การสรุปข้อความ
  • โมเดล T5, BART
Python เบื้องต้นสำหรับ LLMs

Encoder-decoder

ภาพประกอบ encoder-decoder

llm = pipeline(model="Helsinki-NLP/opus-mt-es-en")
print(llm.model)
MarianMTModel(
...
    (encoder): MarianEncoder(
...
    (decoder): MarianDecoder(
...
Python เบื้องต้นสำหรับ LLMs

Encoder-decoder

ภาพประกอบ encoder-decoder

print(llm.model.config)
MarianConfig {
...
  "decoder_attention_heads": 8,
...
  "encoder_attention_heads": 8,
...
  "is_encoder_decoder": true,
...
print(llm.model.config.is_encoder_decoder)
True
Python เบื้องต้นสำหรับ LLMs

มาฝึกกันเถอะ!

Python เบื้องต้นสำหรับ LLMs

Preparing Video For Download...