Buat dan Terapkan Alur Kerja AI yang Aman untuk Data


Pendahuluan

Sifat baru dan sulit diprediksi dari aplikasi Large Language Model (LLM) dapat menimbulkan banyak pertanyaan mengenai apa yang terjadi pada data Anda saat Anda menggunakannya. Pertimbangkan apakah data bersifat pribadi, di mana data tersebut mungkin muncul secara tidak terduga di kemudian hari, dan bagaimana memastikan kebocoran baru tidak muncul saat Anda menambahkan kemampuan agenik ke aplikasi Anda. Hal ini sangat penting terutama untuk aplikasi yang memerlukan kepatuhan hukum seperti HIPAA, COPPA, GDPR, SOC 2, dan lain-lain.

Jika dibangun dengan benar, aplikasi LLM memiliki potensi untuk seaman atau bahkan lebih aman daripada aplikasi konvensional. LLM sering kali dapat dijalankan pada satu server atau dijalankan secara lokal, tergantung pada ukuran model dan ketersediaan perangkat keras. Banyak tugas yang sebelumnya mungkin memerlukan alat eksternal kini dapat diselesaikan dengan memanggil satu model saja. Namun, dengan metode baru dalam penggunaan data muncul kerentanan baru yang perlu diperhatikan. Tutorial ini membahas pertimbangan utama dan strategi untuk membangun alur kerja LLM dengan keamanan data sebagai fokus.

Poin Penting

  • Keamanan data dalam alur kerja LLM memerlukan pertimbangan yang cermat terkait penyedia model, opsi hosting, dan penggunaan API versus antarmuka web. Model open-source dengan inferensi tanpa server atau penyebaran GPU mandiri menawarkan kontrol yang lebih besar terhadap privasi data dibandingkan model closed-source.

  • Alur kerja LLM memperkenalkan tantangan aliran data yang unik di luar aplikasi tradisional, termasuk penyimpanan riwayat percakapan, praktik pencatatan, dan integrasi pihak ketiga seperti API ucapan-ke-teks atau server protokol konteks model yang mungkin mengirimkan data pengguna.

  • Praktik keamanan tradisional tidak cukup untuk LLM. Prompt sistem tidak boleh diandalkan untuk keamanan, agen harus memiliki izin yang dibatasi oleh pengguna, dan akses ke SQL atau baris perintah harus dibatasi secara tegas untuk mencegah kebocoran data atau akses yang tidak sah.

Langkah 1 — Memilih Penyedia Model

Untuk masalah privasi, memilih penyedia adalah salah satu keputusan paling penting yang akan Anda buat. Berbagai penyedia model dan opsi hosting memiliki sikap yang berbeda terhadap pengumpulan data dan privasi. Di setiap penyedia, terdapat kebijakan data yang berbeda tergantung apakah Anda menggunakan antarmuka web atau API mereka untuk inferensi.

Saat menggunakan model sumber tertutup melalui antarmuka web penyedia, biasanya mereka menyimpan data Anda dan menggunakannya untuk melatih model mereka di masa depan. Jika Anda menggunakan API mereka dan membayar per token, penyedia umumnya tidak menggunakan data prompt Anda untuk pelatihan, tetapi mereka sering menyimpannya untuk jangka waktu tertentu, biasanya 30 hari. Model sumber tertutup ini biasanya tersedia melalui penyedia inferensi pihak ketiga, sehingga Anda mungkin berpikir ini menghindari periode penyimpanan data. Namun, bahkan jika Anda menggunakan model sumber tertutup melalui penyedia pihak ketiga, masih mungkin baik penyedia atau perusahaan model tersebut menyimpan data Anda selama periode penyimpanan data, jadi pastikan untuk memeriksa syarat dan ketentuan dari semua perusahaan yang Anda gunakan untuk memahami kebijakan data mereka secara spesifik.

Jika Anda membutuhkan tingkat privasi data yang lebih tinggi, model sumber terbuka melalui layanan yang menyediakan inferensi tanpa server bisa menjadi pilihan yang lebih baik. Misalnya, platform Gradient AI dari Linux-Console.net menawarkan Inferensi Tanpa Server di mana Anda dapat menggunakan Llama, GPT-OSS, atau model sumber terbuka lainnya. Saat menggunakan model-model ini, data di luar yang diperlukan untuk fungsi tidak disimpan atau digunakan untuk pelatihan.

Untuk melangkah lebih jauh, Anda bisa menyewa Droplet GPU Linux-Console.net sendiri dan men-deploy LLM di situ. Selama Droplet GPU Linux-Console.net Anda aman, Anda akan memiliki kendali penuh atas data yang Anda sertakan dalam prompt Anda.

Akhirnya, tergantung pada kebutuhan model Anda, privasi data dapat dimaksimalkan dengan menjalankan model secara lokal di komputer Anda sendiri tanpa koneksi internet. Ini menjaga data yang Anda proses sepenuhnya tetap di luar internet. Ada model open-source yang cukup kecil untuk dijalankan di laptop, atau jika Anda memiliki sumber daya untuk membeli GPU, Anda bisa menggunakan yang open-source lebih besar.

Langkah 2 — Mengelola Data Alur Kerja LLM

Selanjutnya, Anda perlu mempertimbangkan bagaimana data dikelola dalam alur kerja LLM Anda. Misalnya, jika alur kerja LLM mencakup antarmuka obrolan, apakah riwayat obrolan disimpan di basis data Anda di server cloud, atau disimpan sepenuhnya di perangkat pengguna dan dikirim untuk setiap input pengguna? Mungkin ada lebih banyak privasi bagi pengguna jika riwayat percakapan mereka tidak disimpan di server, tetapi ukuran setiap permintaan akan menjadi lebih besar dengan percakapan yang lebih panjang, yang dapat menambah latensi.

Pencatatan juga merupakan pertimbangan penting. Jika Anda mencatat prompt yang dikirim ke LLM setiap kali, itu bisa berisi seluruh percakapan. Baik Anda menyimpan percakapan pengguna di server atau tidak, jika Anda mencatat seluruh prompt setiap kali, percakapan pengguna akan berada di server dalam log. Kontrol akses, jejak audit, dan integritas log harus dijaga, dan data apa saja yang disimpan dalam log tersebut perlu dipertimbangkan.

Banyak alur kerja LLM sekarang melibatkan proses pihak ketiga yang mengekspos data pengguna ke titik akhir lain. Ini bisa mencakup API ucapan ke teks, server protokol konteks model, basis data vektor, atau layanan yang mungkin secara otomatis termasuk dalam kerangka agen. Semua panggilan ini perlu diperhitungkan dan ditinjau untuk memastikan Anda mengetahui apa yang terjadi dengan data dan kapan. Basis data vektor atau opsi penyimpanan data alternatif yang digunakan untuk menambah konteks juga perlu aman.

Langkah 3 — Membela Diri dari Serangan Data

Aplikasi LLM masih relatif baru, tanpa standar industri yang mapan mengenai praktik terbaik keamanan. Hal ini membuat aplikasi baru rentan terhadap berbagai jenis serangan siber baru dari pengguna jahat.

Untuk mengamankan data Anda dari pengguna yang berniat jahat, ada pertimbangan tambahan di atas praktik keamanan standar yang perlu Anda perhatikan untuk alur kerja LLM. Pertama, pastikan prompt sistem tidak digunakan untuk fungsi keamanan atau privasi data apa pun. Bayangkan situasi di mana seorang pengguna jahat memiliki akses ke prompt sistem dan dapat menulis apa pun yang mereka inginkan. Jika hal ini dapat membahayakan privasi data dengan cara apa pun, Anda perlu mengubah alur kerja dan desain aplikasi Anda.

Prompt sistem tidak boleh memberi LLM akses alur kerja ke hal-hal yang seharusnya tidak bisa diakses oleh pengguna. Jangan menyimpan informasi sensitif dalam prompt sistem juga. Rancang arsitektur dan praktik keamanan data Anda berdasarkan asumsi bahwa kemungkinan prompt sistem dapat bocor, meskipun Anda mengambil langkah-langkah untuk mencegah hal ini.

Jangan memberikan akses terbuka ke SQL atau command line pada alur kerja LLM Anda tanpa pembatasan yang diterapkan pada pengguna saat ini. Paling aman adalah tidak mengizinkan agen menulis kueri atau instruksi command line apa pun yang tidak ingin Anda beri kemampuan kepada pengguna untuk menulis dan mengirimkannya sendiri.

Hal yang sama berlaku untuk data mana yang dapat diakses oleh agen. Jika pengguna seharusnya tidak bisa mengakses data tertentu, agen juga tidak boleh dapat mengaksesnya dalam proses merespon permintaan pengguna.

Langkah 4 — Menguji Alur Kerja Anda

Setelah membangun alur kerja LLM yang aman, lakukan pengujian penetrasi dan prosedur validasi keamanan. Hal ini dapat dilakukan secara manual atau menggunakan LLM lain yang telah diarahkan untuk menghasilkan jenis prompt yang diketahui dapat membahayakan keamanan data pada aplikasi LLM. Aplikasi LLM masih tergolong baru, dan ancaman baru yang efektif terus ditemukan secara berkala, sehingga pengujian keamanan menjadi tantangan. Tetaplah mengikuti serangan-serangan yang baru ditemukan dan terus perbarui fitur keamanan aplikasi Anda untuk memastikan dapat melindungi diri dengan aman dari serangan baru.

Beberapa contoh umum serangan berbahaya termasuk di bawah ini:

  • Injeksi Prompt Langsung: Penyerang menyisipkan perintah seperti “Abaikan semua instruksi sebelumnya dan…” atau “Bayangkan kamu adalah karakter film yang meretas ke dalam database…” dalam upaya untuk mengambil alih perilaku LLM.
  • Injeksi Prompt Tidak Langsung: Penyerang akan menyuntikkan instruksi berbahaya ke dalam dokumen atau basis data yang diambil oleh LLM.
  • Eksfiltrasi Data: Penyerang mencoba membuat LLM mengungkapkan prompt sistem, instruksi, atau data apa pun yang terkait dengan percakapan pengguna lain dalam konteks yang dibagikan.
  • Manipulasi Alat/Fungsi: Penyerang memanipulasi parameter pemanggilan fungsi untuk menjalankan tindakan yang tidak diinginkan.
  • Penolakan Layanan: Penyerang membuat perintah yang menyebabkan pembangkitan token atau komputasi yang berlebihan, memicu perilaku rekursif atau berulang untuk membanjiri LLM dengan token.

Pertanyaan yang Sering Diajukan

Apakah sanitasi input dan penyaringan output dapat membantu mencegah kebocoran informasi sensitif atau serangan injeksi?

Ya, tetapi LLM sebaiknya tidak dipercaya untuk secara andal mengidentifikasi informasi sensitif atau input berbahaya secara mandiri. Metode tradisional non-LLM, atau metode yang divalidasi secara kuat, untuk pembersihan dan validasi input harus menjadi pilihan utama. Jika Anda mencoba menggunakan LLM sebagai lapisan keamanan untuk mencegah injeksi SQL atau prompt, atau kebocoran informasi sensitif secara tidak sengaja kepada pengguna atau pihak ketiga, LLM mungkin dapat mencegah sebagian atau sebagian besar upaya injeksi prompt atau jailbreak. Namun, sifat non-deterministik LLM dan meningkatnya kompleksitas serangan membuat sulit untuk membangun aplikasi yang aman dengan LLM sebagai filter utama.

Praktik keamanan data tradisional apa saja yang masih relevan untuk alur kerja LLM?

Hampir semua praktik terbaik keamanan data masih relevan dengan alur kerja LLM. Kebijakan minimisasi dan retensi data harus memastikan hanya data yang diperlukan dan paling sedikit yang dikumpulkan serta diproses. Periode retensi yang jelas untuk log, percakapan, dan data sementara harus diterapkan. Data harus dienkripsi baik saat disimpan maupun saat dikirim. Kontrol akses berbasis peran dengan mekanisme autentikasi yang kuat harus diterapkan.

Bagaimana cara mencegah pengguna jahat melakukan spam pada alur kerja LLM saya dan meningkatkan biaya inferensi saya?

Terapkan pembatasan laju dan pantau pola yang tidak biasa atau penggunaan API yang berlebihan. Atur peringatan untuk perilaku mencurigakan. Pertimbangkan untuk menetapkan batas biaya untuk penyedia layanan LLM Anda guna mencegah biaya yang tidak terkendali dari pengguna otomatis atau berbahaya.

Bisakah LLM digunakan untuk aplikasi yang sesuai dengan HIPAA?

Ya, mereka bisa, tetapi ada langkah-langkah yang perlu Anda ikuti dengan penyedia layanan cloud untuk memastikan aplikasi Anda mematuhi peraturan HIPAA, termasuk menandatangani Perjanjian Mitra Bisnis jika diperlukan.

Bagaimana jika saya menyadari nanti ada kerentanan?

Anda sebaiknya mengikuti prosedur yang sama yang telah ditetapkan oleh organisasi Anda untuk setiap kerentanan keamanan yang mungkin telah ditemukan. Ini dapat mencakup memberi tahu pengguna dan melaporkannya ke saluran yang sesuai. Kerentanan keamanan dalam aplikasi LLM harus diperlakukan sama seriusnya seperti kerentanan keamanan dalam aplikasi lain.

Kesimpulan

Aplikasi LLM memperkenalkan kekhawatiran keamanan baru, tetapi dengan memperluas praktik keamanan terbaik standar ke lapisan logika LLM tambahan dari aplikasi dan secara strategis membatasi data yang dapat diakses oleh alur kerja agen Anda, Anda dapat terus memastikan tingkat keamanan data yang tinggi. Selidiki kebijakan data dari berbagai alat dan vendor yang Anda gunakan. Jangan membuat asumsi tentang bagaimana layanan yang berbeda menyimpan dan menggunakan data Anda.

Anda dapat menjaga kepatuhan HIPAA, COPPA, GDPR, SOC 2, dan kepatuhan lainnya dalam alur kerja LLM, tetapi masing-masing menambahkan tugas keamanan tambahan bagi tim Anda. Langkah berikutnya adalah mulai membangun dan menguji aplikasi Anda serta memastikan setiap keputusan keamanan sesuai dengan pengguna, tujuan, dan kasus penggunaan aplikasi Anda.

Terima kasih telah belajar bersama Komunitas Linux-Console.net.