Pengantar YAML

CI/CD untuk Machine Learning

Ravi Bhadauria

Machine Learning Engineer

Apa itu YAML?

  • YAML: YAML Ain't Markup Language
  • Digunakan untuk file konfigurasi, pertukaran data, dan representasi data terstruktur
  • Bahasa pemformatan data mirip JSON dan XML
  • Memungkinkan format standar untuk transfer data antar bahasa atau aplikasi
  • Format sederhana dan bersih
  • Ekstensi file valid: .yaml atau .yml
  • Digunakan menulis konfigurasi berbagai alat CI/CD:
    • GitHub Actions
    • Data Version Control (DVC)
CI/CD untuk Machine Learning

Sintaks YAML

  • YAML memiliki struktur hierarkis
    • Indentasi bermakna
  • Tab tidak diperbolehkan
  • Validator YAML (https://www.yamllint.com/)
  • Komentar diawali #
name: Ravi
occupation: Instructor
# This is a valid comment
programming_languages: # and this one too
  python: Advanced
  go: Intermediate
  scala: Beginner
CI/CD untuk Machine Learning

Scalar YAML

  • Angka: bilangan bulat atau pecahan (floating-point)
  • Boolean: true atau false
  • Null: kata kunci null atau ~
  • String: teks polos atau diapit '' atau ""
# Integer
42
# Floating point
3.14
# Boolean
true
# Null values
null
# String value
a: "A string in YAML"
b: 'A string in YAML'
c: A string in YAML
CI/CD untuk Machine Learning

Koleksi YAML

Sequence

  • Juga disebut list, array, atau vektor
  • Ditulis dalam dua gaya:

    • Gaya blok

      - first
      - second
      - third
      
    • Gaya alir

      [first, second, third]
      

Mapping

  • Juga disebut dictionary, pasangan kunci-nilai, hash, atau objek
  • Kunci unik, nilai dapat berupa data valid apa pun
  • Kunci dan nilai dipisahkan dengan :
key1: value1
blocklist:
  - first
  - second
flowlist: [1.2, 2, "fifty", true]
CI/CD untuk Machine Learning

Ringkasan

  • YAML adalah bahasa pemformatan data
  • Berguna untuk menulis konfigurasi CI/CD
  • Indentasi sangat penting
    • Tab tidak diperbolehkan
  • Mapping, sequence, dan scalar adalah blok penyusun YAML

Graf hierarkis struktur data YAML.

CI/CD untuk Machine Learning

Tata Letak Latihan Editor

Gambar beranotasi tata letak latihan editor menampilkan folder, file, dan area terminal.

CI/CD untuk Machine Learning

Ayo berlatih!

CI/CD untuk Machine Learning

Preparing Video For Download...