Oleh: Rob Geada, Principal Engineer and TrustyAI Tech Lead, Red Hat
TrustyAI adalah komunitas open source yang khusus menyediakan beragam toolkit untuk pengembangan dan penerapan kecerdasan buatan (AI). TrustyAI didirikan tahun 2019 sebagai bagian dari Kogito, komunitas otomatisasi bisnis berbasis open source, sebagai respons terhadap permintaan yang semakin besar dari pengguna di industri yang highly regulated seperti layanan keuangan dan layanan kesehatan.
Dengan semakin banyaknya peraturan global terkait teknologi AI, toolkits untuk AI yang bertanggung jawab adalah aset yang bernilai besar dan penting bagi setiap platform MLOps. Sejak 2021, TrustyAI telah lepas dari Kogito, dan berkembang dalam skala dan jangkauan yang luar biasa di tengah gairah AI belakangan ini. Sebagai kontributor utama TrustyAI, Red Hat berdedikasi untuk membantu komunitas ini terus tumbuh dan berkembang.
Sebagai komunitas open source, TrustyAI punya posisi di ruang AI yang bertanggung jawab. Komunitas TrustyAI meyakini bahwa demokratisasi desain dan riset tooling AI yang bertanggung jawab melalui model open source sangat penting untuk memberdayakan mereka yang menerima dampak dari keputusan yang dilandasi oleh AI – saat ini, pada dasarnya semua orang – untuk ikut menentukan apa yang dimaksud dengan bertanggung jawab terhadap AI-mu.
Penggunaan TrustyAI
Komunitas TrustyAI mengelola sejumlah proyek AI yang bertanggung jawab, seputar model explainability, model monitoring, dan model sebagai layanan (model serving). Untuk memahami nilai dari project-project ini, mari lihat dua contoh cara penggunaan; yang pertama meneliti model machine learning “tradisional” yang memprediksi acceptance klaim asuransi, dan yang kedua menjalankan model AI generatif (gen AI) untuk menjadi tutor aljabar.
Model Prediktif: Acceptance Klaim Asuransi
Pada skenario ini, bayangkan perusahaan asuransi yang ingin menggunakan model ML untuk membantu proses klaim; mungkin model tersebut memberikan perkiraan mengenai kemungkinan disetujuinya suatu klaim, di mana klaim dengan kemungkinan tinggi secara otomatis disetujui.
Pertama, lakukan analisis mendetail terhadap model prediktif dengan mereview klaim asuransi tertentu yang sudah ditandai oleh model sebagai klaim yang kemungkinan besar akan ditolak. Dengan menggunakan algoritma explainability, kita bisa melihat daftar fitur-fitur penting dari pengajuan tersebut yang akan membuatnya ditolak.
Jika ada faktor diskriminatif seperti ras atau jenis kelamin digunakan dalam penalaran model tersebut, kita bisa menandai keputusan tertentu ini untuk selanjutnya direview secara manual.
Selanjutnya, kita menggunakan algoritma deteksi anomali untuk mengonfirmasi bahwa model tersebut sudah mendapatkan pelatihan yang sesuai untuk secara akurat memproses klaim ini. Jika klaim ini cukup berbeda dari data pelatihan model, model tersebut kemungkinan besar tidak akan memberikan hasil yang dapat dipercaya dan keputusannya sekali lagi harus direview secara manual.
Jika kedua pengecekan tersebut mengonfirmasikan bahwa prediksi model bersifat adil dan bisa diandalkan, di akhir kita mungkin beralih ke algoritma kontrafaktual. Ini akan memberikan kita laporan yang menerangkan hal-hal berbeda yang mungkin bisa dilakukan pemohon untuk mendapatkan persetujuan atas klaim mereka, dan dari sini kita bisa memberikan mereka beberapa masukan yang bisa ditindaklanjuti.
Selanjutnya, mari kita lihat model pada skala yang lebih luas untuk memahami pola yang lebih besar mengenai bagaimana ia melayani pengguna kita. Kita bisa menggunakan algoritma bias, yang memonitor kesenjangan dalam perlakuan model terhadap berbagai kelompok demografis yang berbeda dan bagaimana ini bisa berubah seiring waktu.
Sebagai contoh, kita mungkin ingin memonitor rate acceptance pada klaim di kelompok rasial yang berbeda di antara para pemohon dan memastikan bahwa rate tersebut tidak berbeda secara signifikan menurut statistik. Jika kita menemukan bahwa rate-nya berbeda-beda, kemungkinan besar ini adalah tanda bahwa kita harus melatih kembali model kita atau memikirkan kembali arsitektur kita.
Analisis ini dapat dilengkapi dengan algoritma drift, yang akan menganalisis data yang masuk dan memastikan bahwa distribusi umum dari data yang dilihat oleh model selaras dengan data yang dilatih. Contohnya, kita mungkin melihat bahwa distribusi usia pengguna kita secara signifikan berbeda dengan data pelatihan kita, dan dengan demikian model kita kemungkinan besar tidak mampu menghasilkan prediksi yang bisa dipercaya dan harus dilatih kembali dengan data yang lebih representatif. Sekali lagi, analisis ini dapat dihubungkan ke dalam pipeline penerapan model otomatis, sehingga setiap metrik yang mengkhawatirkan dapat segera ditandai dan memicu berbagai protokol remediasi.
Gen AI: Tutor aljabar
Untuk skenario kedua, bayangkan kita sudah mendapatkan model AI generatif dan ingin memanfaatkannya sebagai tutor aljabar. Untuk melakukan ini, kita ingin memverifikasi bahwa model tersebut memiliki pengetahuan mendalam di ranah tertentu dan membatasi interaksi pengguna di ranah yang dimaksudkan.
Untuk memverifikasi kemampuan aljabar model tersebut, kita bisa melakukan evaluasi menggunakan layanan Language Model Evaluation dari TrustyAI. Hal ini didasarkan pada library upstream lm-evaluation-harness yang populer dari EleutherAI, dan menyediakan serangkaian evaluasi otomatis untuk mengukur berbagai macam aspek yang berbeda dari kinerja model, mulai dari evaluasi umum yang mengukur pengetahuan umum model, pemahaman bahasa, atau kerentanan terhadap bias ras, hingga evaluasi yang lebih bertarget yang mengukur pengetahuan domain tertentu di bidang-bidang seperti kedokteran atau fisika.
Dalam kasus kita, kita akan memilih tiga subset evaluasi Massive Multitask Language Understanding; aljabar abstrak, matematika tingkat universitas dan matematika sekolah menengah atas. Jika model kita mendapatkan nilai baik di semua ujian ini, ini akan memberikan kita kepercayaan bahwa model ini sangat cocok menjadi tutor aljabar yang bisa diandalkan.
Setelah kita puas dengan performa model di wilayah yang diinginkan, kita bisa mengatur penerapan yang dibatasi menggunakan TrustyAI Guardrails. Guardrails memampukan kita menyaring konten yang dikirim ke dan dari model kita; hal ini akan membatasi jalur interaksi antara pengguna dan model kepada mereka yang kita maksudkan. Di sini, kita bisa mengaplikasikan guardrail input dan output yang memeriksa konten percakapan terkait dengan matematika.
Kemudian, saat kita mendesain aplikasi lengkap seputar model, kita bisa menggunakan pelanggaran guardrail apa pun sebagai tanda untuk memandu pengguna kembali ke topik yang dimaksudkan. Ini membantu mencegah perilaku yang tidak diharapkan yang mungkin muncul di jalur interaksi yang tak terduga, yang mana mungkin kita akan berhadapan dengan tanggung jawab yang tak terduga.
Proyek-proyek komunitas TrustyAI
Komunitas TrustyAI memberikan tool untuk menjalankan alur kerja ini pada sejumlah profil pengguna yang berbeda. Untuk pengembang Java, kami menyediakan TrustyAI Java library, proyek aktif terlama di komunitas kami. Tujuannya adalah memungkinkan alur kerja AI yang bertanggung jawab di dalam aplikasi Java, yang saat awal pengembangannya menjadi satu-satunya pustaka atau library di dalam ekosistem Java.
Meskipun Java bukan bahasa yang umum untuk pekerjaan ML, sifat alaminya sebagai bahasa yang dikompilasi memungkinkan peningkatan kecepatan yang luar biasa dibandingkan dengan lingua franca ML yang lebih tipikal, yaitu Python.
Untuk saintis dan pengembang data yang menggunakan Python, kami mengekspos pustaka Java kami melalui TrustyAI Python library, yang menggabungkan kecepatan Java dengan Python yang sudah dikenal. Di sini, algoritma TrustyAI diintegrasikan dengan pustaka sains data umum seperti Numpy dan Pandas. Untuk pekerjaan yang akan datang, direncanakan akan dilakukan penambahan algoritma Python native ke dalam library tersebut, memperluas kompatibilitas TrustyAI dengan integrasi library seperti PyTorch dan TensorFlow.
Salah satu proyek seperti itu adalah TrustyAI Python library, suatu modul di dalam library TrustyAI Python yang menyediakan guardrails, pendeteksian bahasa yang toxic dan kemampuan memfrasekan kembali untuk penggunaan dengan LLM.
Untuk kasus penggunaan enterprise dan MLOps, TrustyAI menyediakan TrustyAI Kubernetes Service and Operator, yang mengatasi bias TrustyAI, explainability, dan algoritma drift dalam lingkungan cloud serta menyediakan interface untuk fitur Language Model Evaluation and Guardrails.
Layanan dan operator tersebut diintegrasikan ke dalam Open Data Hub dan Red Hat OpenShift AI guna memfasilitasi koordinasi antara server model dan TrustyAI, membawa akses mudah ke toolkit AI kami yang bertanggung jawab kepada pengguna kedua platform. Saat ini, layanan TrustyAI Kubernetes mendukung model tabular yang disediakan di KServe atau ModelMesh.
Masa depan TrustyAI
Sebagai kontributor terbesar TrustyAI, Red Hat yakin bahwa saat pengaruh AI terus meluas, wajib bagi satu komunitas untuk mendiversifikasi kontributor, perspektif dan pengalaman untuk mendefinisikan AI yang bertanggung jawab. Saat kami terus menumbuhkan pekerjaan komunitas TrustyAI, kami juga harus berkolaborasi dan berintegrasi dengan komunitas open source lainnya, seperti Kubeflow dan EleutherAI untuk mendukung pertumbuhan dan pengembangan bagi semua.
Lanskap AI terus berubah, dan TrustyAI harus terus berkembang agar tetap memberikan dampak. Untuk membaca lebih lanjut tentang berita Red Hat KubeCon NA 2024, kunjungi Red Hat KubeCon newsroom.