03. Serialisasi Model - Simpan dan Muat

Serialisasi

Apa yang dimaksud dengan Serialisasi?

Definisi: Proses mengubah model menjadi format yang dapat disimpan.

Tujuan:

  • Menggunakan kembali model (tanpa pelatihan ulang)

  • Lebih mudah untuk mendistribusikan dan berbagi model

  • Menghemat sumber daya komputasi

Keuntungan:

  • Pemuatan model yang cepat

  • Dapat divisualisasikan

  • Dapat digunakan di berbagai lingkungan

erialisasi model adalah langkah penting dalam proses pengembangan dan penerapan AI, yang memungkinkan pengelolaan dan penggunaan ulang model secara efisien.

Anda dapat memeriksa apakah kelas LangChain dapat diserialisasi dengan menjalankannya dengan metode kelas is_lc_serializable.

# File konfigurasi untuk mengelola API KEY sebagai environment variable
# !pip install python_dotenv
from dotenv import load_dotenv

# API KEY 정보로드
load_dotenv()

Memeriksa serialisabilitas untuk kelas.

Memeriksa serialisabilitas untuk objek LLM.

Serialisasi berantai (dump, dumpd)

Gambaran umum

Serialisasi berantai mengacu pada proses mengubah semua objek yang dapat diserialisasikan menjadi kamus atau string JSON.

Metode serialisasi

Mengonversi properti dan data objek ke dalam bentuk kamus dengan menyimpannya sebagai pasangan nilai-kunci.

Metode serialisasi ini membuat objek mudah disimpan dan ditransfer, dan memungkinkan objek direkonstruksi di lingkungan yang berbeda.

Lihat juga:

  • dumps: serialisasi objek sebagai string JSON

  • dumpd: serialisasi objek sebagai dictionary

Pickle

Deskripsi

File acar adalah format untuk menserialisasi objek Python dalam bentuk biner.

Fitur

Format:

  • Format untuk membuat serialisasi objek Python dalam bentuk biner.

Fitur:

  • Hanya Python (tidak kompatibel dengan bahasa lain)

  • Mendukung sebagian besar tipe data Python (daftar, kamus, kelas, dll.)

  • Mempertahankan status dan struktur objek

Kelebihan:

  • Penyimpanan dan transfer yang efisien

  • Mempertahankan struktur objek yang kompleks

  • Kecepatan serialisasi/deserialisasi yang cepat

Kekurangan:

  • Risiko keamanan (harus berhati-hati saat melakukan deserialisasi data yang tidak dipercaya)

  • Format biner yang tidak dapat dibaca manusia

Penggunaan utama

  • Penyimpanan objek

  • Menyimpan model pembelajaran mesin

  • Menyimpan dan memulihkan status program

Penggunaan

  • pickle.dump(): Menyimpan objek ke sebuah file

  • pickle.load(): Memuat objek dari file

Menyimpan ke file pickle.

Anda juga dapat menyimpannya dalam format JSON.

load: Mengimpor model yang disimpan

Pertama, muat file pickle yang sudah Anda simpan sebelumnya.

Muat file JSON yang dimuat menggunakan metode load.

Last updated