Tutorial NeMo Guardrails: Membangun Pagar Pengaman untuk Aplikasi LLM

# Tutorial NeMo Guardrails: Membangun Pagar Pengaman untuk Aplikasi LLM Dalam era adopsi Large Language Model (LLM) yang semakin masif, keamanan dan kontrol terhadap output AI menjadi tantangan kriti...

By Ruby Abdullah · · tutorial
NeMo GuardrailsLLM SafetyNVIDIAAI SecurityColang

Tutorial NeMo Guardrails: Membangun Pagar Pengaman untuk Aplikasi LLM

Dalam era adopsi Large Language Model (LLM) yang semakin masif, keamanan dan kontrol terhadap output AI menjadi tantangan kritis bagi developer dan organisasi. Model bahasa besar seperti GPT-4, Claude, atau Llama bisa menghasilkan respons yang tidak sesuai, berbahaya, atau keluar dari konteks yang diinginkan. Di sinilah NeMo Guardrails hadir sebagai solusi.

NeMo Guardrails adalah toolkit open-source dari NVIDIA yang memungkinkan developer menambahkan pagar pengaman (guardrails) yang dapat diprogram ke aplikasi berbasis LLM. Dengan NeMo Guardrails, Anda bisa mengontrol topik percakapan, memfilter konten berbahaya, mencegah jailbreak, dan memastikan AI tetap beroperasi dalam batasan yang telah ditentukan.

Tutorial ini akan membahas secara lengkap cara menggunakan NeMo Guardrails, mulai dari instalasi hingga implementasi advanced untuk production.

Mengapa NeMo Guardrails Penting?

Sebelum masuk ke teknis, mari pahami mengapa guardrails diperlukan:

  • Keamanan: Mencegah LLM menghasilkan konten berbahaya, tidak etis, atau ilegal
  • Konsistensi: Memastikan chatbot tetap pada topik dan persona yang ditentukan
  • Kepatuhan: Memenuhi regulasi industri terkait penggunaan AI
  • Pencegahan Jailbreak: Melindungi dari upaya manipulasi prompt
  • Kontrol Biaya: Membatasi panggilan API yang tidak perlu dengan menolak query di luar cakupan
  • Instalasi dan Setup

    Prasyarat

    Pastikan Anda memiliki Python 3.9 atau lebih baru terinstal di sistem Anda.

    python --version
    

    Instalasi NeMo Guardrails

    Instal NeMo Guardrails menggunakan pip:

    pip install nemoguardrails
    

    Untuk instalasi dengan dukungan semua fitur:

    pip install nemoguardrails[all]
    

    Instalasi Dependencies Tambahan

    Jika Anda menggunakan OpenAI sebagai backend LLM:

    pip install openai
    

    Untuk menggunakan model lokal dengan HuggingFace:

    pip install transformers torch
    

    Konfigurasi API Key

    Set environment variable untuk API key:

    export OPENAIAPIKEY="sk-your-api-key-here"
    

    Atau buat file .env di root project:

    OPENAIAPIKEY=sk-your-api-key-here
    

    Konsep Dasar: Colang dan Konfigurasi

    NeMo Guardrails menggunakan bahasa pemodelan percakapan bernama Colang (Conversational Language). Ada dua versi: Colang 1.0 dan Colang 2.0. Tutorial ini akan membahas keduanya.

    Struktur Project

    Sebuah project NeMo Guardrails memiliki struktur berikut:

    myguardrailsapp/
    

    ├── config/

    │ ├── config.yml # Konfigurasi utama

    │ ├── rails.co # Definisi guardrails (Colang)

    │ ├── prompts.yml # Custom prompts

    │ └── actions.py # Custom actions (Python)

    ├── main.py # Entry point aplikasi

    └── requirements.txt

    Konfigurasi Dasar (config.yml)

    File config.yml adalah pusat konfigurasi:

    models:
    
    • type: main
    engine: openai

    model: gpt-4o-mini

    instructions:

    • type: general
    content: |

    Kamu adalah asisten AI untuk perusahaan teknologi.

    Kamu hanya menjawab pertanyaan terkait teknologi dan produk perusahaan.

    Kamu selalu menjawab dengan sopan dan profesional.

    sampleconversation: |

    user "Halo, apa kabar?"

    "Halo! Saya baik, terima kasih. Ada yang bisa saya bantu terkait produk kami?"

    user "Bisa ceritakan tentang produk kalian?"

    "Tentu! Kami menyediakan solusi cloud computing dan AI untuk enterprise. Mau tahu lebih detail tentang produk tertentu?"

    Basic Usage: Membuat Guardrails Pertama

    Contoh 1: Topical Guardrail

    Buat file config/rails.co untuk membatasi topik percakapan:

    define user ask about politics
    

    "Apa pendapat kamu tentang politik?"

    "Siapa presiden terbaik?"

    "Bagaimana pandanganmu soal pemilu?"

    "Partai politik mana yang terbaik?"

    define user ask about religion

    Artikel Terkait

    Tutorial Triton Inference Server: High-Performance Model Serving

    Tutorial 19: Triton Inference Server - Penyajian Model Berperforma Tinggi Daftar Isi Pendahuluan Prasyarat Menyiapkan Tr...

    Tutorial Install TensorRT dengan pip di Ubuntu

    Tutorial Install TensorRT dengan pip di Ubuntu

    TensorRT dapat diinstal menggunakan pip untuk kebutuhan inference berbasis Python di Ubuntu dengan GPU NVIDIA, selama dr...

    Tutorial Marker: Mengubah PDF dan Dokumen Menjadi Markdown untuk Pipeline RAG

    Tutorial Marker: Mengubah PDF dan Dokumen Menjadi Markdown untuk Pipeline RAG Dalam dunia AI dan data engineering, kemam...

    Tutorial Lengkap Pinecone: Vector Database untuk AI dan Semantic Search

    Tutorial Lengkap Pinecone: Vector Database untuk AI dan Semantic Search Pinecone adalah managed vector database yang dir...