Siaran ini ditulis oleh Bartosz Pietrucha
Membina aplikasi LLM gred perusahaan adalah satu keperluan dalam persekitaran perniagaan masa kini. Walaupun kebolehcapaian model dan API semakin bertambah baik, satu cabaran penting kekal: memastikan keselamatan mereka dan mengurus kebenaran mereka dengan berkesan.
Untuk menangani perkara ini, Keizinan Berbutir Halus (FGA) dan Retrieval Augmented Generation (RAG) ialah strategi yang berkesan untuk membina aplikasi AI yang selamat dan peka konteks yang mengekalkan kawalan akses yang ketat. Dalam artikel ini, kami akan meneroka cara FGA dan RAG boleh digunakan dalam tetapan penjagaan kesihatan sambil melindungi data sensitif.
Kami akan melakukan ini dengan membimbing anda melalui pelaksanaan sistem kebenaran Kawalan Akses Berasaskan Perhubungan (ReBAC) yang menyokong kemas kini masa nyata dengan tiga alatan: AstraDB, Langflow dan Permit.io.
Untuk lebih memahami kerumitan kebenaran dalam aplikasi LLM, dan penyelesaian yang ditawarkan oleh FGA dan RAG, kita boleh melihat ruang penjagaan kesihatan digital - kerana ia memberikan contoh sempurna di mana keupayaan AI dan keselamatan yang ketat adalah penting. Penyedia penjagaan kesihatan semakin mahu memanfaatkan LLM untuk menyelaraskan aliran kerja, menambah baik pembuatan keputusan dan menyediakan penjagaan pesakit yang lebih baik. Doktor dan pesakit sama-sama mahukan akses mudah kepada rekod perubatan melalui antara muka AI intuitif seperti chatbots.
Walau bagaimanapun, data perubatan adalah sangat sensitif dan harus dikawal dengan teliti. Walaupun LLM boleh memberikan cerapan pintar, kami mesti memastikan ia hanya mengakses dan mendedahkan maklumat yang dibenarkan untuk dilihat oleh pengguna. Doktor, sebagai contoh, hanya perlu melihat diagnosis daripada pusat perubatan yang ditetapkan dan pesakit hanya boleh mengakses rekod mereka sendiri.
Teruskan dengan contoh penjagaan kesihatan digital, mari lihat contoh aplikasi perubatan.
Aplikasi ini terdiri daripada beberapa sumber, beberapa peranan dan beberapa hubungan antara entiti ini:
Jenis Sumber :
Peranan :
Hubungan :
Seperti yang anda lihat, perhubungan hierarki sumber kami bermakna melaksanakan kawalan akses berasaskan peranan tradisional, di mana kebenaran diberikan secara langsung, tidak akan mencukupi.
Kerumitan kebenaran aplikasi ini memerlukan kami menggunakan penyelesaian kebenaran yang lebih terperinci (FGA) - dalam kes ini, Kawalan Akses Berasaskan Perhubungan (ReBAC).
ReBAC, model keizinan yang diilhamkan oleh kertas Zanzibar Google, memperoleh kebenaran daripada perhubungan antara entiti dalam sistem - tidak seperti kawalan akses berasaskan peranan tradisional (RBAC), di mana kebenaran diberikan secara langsung.
Kuasa ReBAC terletak pada cara kebenaran diperoleh melalui perhubungan ini. Mari lihat perwakilan visual contoh kami:
Dalam contoh di atas, Dr Bartosz mempunyai akses kepada diagnosis Virus bukan kerana kebenaran yang diberikan secara langsung tetapi sebaliknya kerana dia ditugaskan ke Pusat Perubatan Warsaw, yang mengandungi Lawatan Petang, yang mengandungi diagnosis . Oleh itu, hubungan antara sumber ini membentuk rantaian yang membolehkan kami memperoleh kebenaran akses.
Terdapat faedah yang jelas untuk menggunakan pendekatan ini:
Tetapi cabaran itu tidak berakhir di situ - kerana kami sedang membina sistem yang perlu berfungsi dengan LLM, ia perlu mempunyai keupayaan untuk menilai rantai perhubungan ini dalam masa nyata. Dalam bahagian seterusnya, kita akan belajar cara membuat pelaksanaan yang membolehkannya.
Sebelum kami meneruskan, mari semak dengan pantas peraturan kebenaran yang kami ingin pastikan ada:
Keperluan ini boleh dicapai melalui penggunaan Retrieval Augmented Generation (RAG).
RAG (Retrieval Augmented Generation) ialah teknik yang mempertingkatkan output LLM dengan menggabungkan dua langkah utama: pertama, mendapatkan maklumat yang berkaitan daripada pangkalan pengetahuan, dan kemudian menggunakan maklumat tersebut untuk menambah konteks LLM untuk penjanaan yang lebih tepat. Walaupun RAG boleh berfungsi dengan pangkalan data tradisional atau stor dokumen, pangkalan data vektor amat berkuasa untuk tujuan ini kerana ia boleh melakukan carian persamaan semantik, mencari maklumat berkaitan konsep walaupun kata kunci tepat tidak sepadan.
Dalam amalan, ini bermakna apabila pengguna bertanya tentang "masalah jantung," sistem boleh mendapatkan semula dokumen yang berkaitan tentang "isu jantung" atau "penyakit kardiovaskular," menjadikan respons LLM lebih tepat dan menyeluruh. Bahagian "penjanaan" kemudiannya melibatkan LLM yang mensintesis konteks yang diperoleh semula ini dengan pengetahuannya yang telah dilatih untuk menghasilkan respons fakta yang relevan yang berasaskan data khusus anda.
Untuk pelaksanaan kami, kami akan menggunakan AstraDB sebagai pangkalan data vektor kami. AstraDB menawarkan faedah berikut:
Untuk melaksanakan saluran paip RAG kami, kami juga akan menggunakan LangFlow, rangka kerja sumber terbuka yang menjadikan pembinaan sistem ini intuitif melalui antara muka visualnya. Sistem LangFlow boleh dibangunkan dengan persekitaran Python yang dijalankan secara tempatan atau dalam platform DataStax yang dihoskan awan. Dalam kes kami, kami memilih pilihan kedua dengan mencipta pangkalan data AstraDB tanpa pelayan (vektor) di bawah: https://astra.datastax.com
Dalam pelaksanaan kami, semakan kebenaran harus berlaku pada saat yang penting - selepas mendapatkan semula data daripada pangkalan data vektor tetapi sebelum memberikannya kepada LLM sebagai konteks. Dengan cara ini, kami mengekalkan kecekapan carian dengan terlebih dahulu mencari semua maklumat yang berkaitan dan kemudian menapis data yang tidak dibenarkan sebelum ia sampai ke LLM. LLM hanya boleh menggunakan dan mendedahkan maklumat yang dibenarkan untuk dilihat oleh pengguna.
Semakan keselamatan ini dilaksanakan menggunakan Permit.io, yang menyediakan infrastruktur untuk menilai rantai perhubungan yang kompleks dalam masa nyata. Apabila data anda berkembang dan hubungan menjadi lebih kompleks, sistem terus memastikan bahawa setiap maklumat hanya boleh diakses oleh mereka yang mempunyai kebenaran yang betul.
Untuk bermula dengan Permit, anda boleh membuat akaun percuma dengan mudah dengan melawati tapak web di https://app.permit.io. Setelah akaun percuma anda dibuat, anda akan mempunyai akses kepada papan pemuka Permit, tempat anda boleh menyediakan dasar kebenaran anda, mengurus pengguna dan peranan serta menyepadukan Permit ke dalam aplikasi anda. Peringkat percuma menawarkan semua ciri yang diperlukan untuk mencipta contoh penjagaan kesihatan digital dengan kawalan akses berasaskan perhubungan (ReBAC).
Kedua-dua LangFlow dan Permit menawarkan akaun percuma untuk mula bekerja, jadi anda tidak perlu membayar apa-apa untuk membina sistem sedemikian dan melihat sendiri cara ia berfungsi.
Sebelum kita menyelami butiran pelaksanaan, adalah penting untuk memahami alat yang akan kita gunakan - Langflow. Dibina di atas LangChain, Langflow ialah rangka kerja sumber terbuka yang memudahkan penciptaan aplikasi LLM yang kompleks melalui antara muka visual. LangChain menyediakan asas yang teguh dengan menawarkan komponen piawai untuk operasi LLM biasa seperti pemisahan teks, penjanaan benam dan dorongan rantaian pemikiran. Komponen ini boleh dipasang menjadi saluran paip berkuasa yang mengendalikan segala-galanya daripada pengingesan data kepada penjanaan tindak balas.
Apa yang menjadikan Langflow amat berharga untuk kes penggunaan kami ialah antara muka pembina visualnya, yang membolehkan kami membina saluran paip ini dengan menyambungkan komponen secara grafik - sama seperti cara anda melukis carta alir. Pendekatan visual ini menjadikannya lebih mudah untuk memahami dan mengubah suai aliran data melalui aplikasi kami, daripada input pengguna awal kepada respons akhir yang dibenarkan. Selain itu, sifat sumber terbuka Langflow bermakna ia percuma untuk digunakan dan boleh dilanjutkan dengan komponen tersuai, yang penting untuk melaksanakan semakan kebenaran kami.
Penyelesaian Langflow kami memanfaatkan dua aliran berbeza namun saling berkaitan untuk menyediakan akses selamat kepada maklumat perubatan:
Aliran pengingesan bertanggungjawab untuk memuatkan diagnosis ke dalam AstraDB bersama-sama dengan pembenaman masing-masing. Kami menggunakan MistralAI untuk menjana benam bagi setiap diagnosis, membolehkan anda melakukan carian semantik pada data diagnosis kemudian. Komponen utama yang terlibat dalam aliran ini ialah:
Aliran sembang bertanggungjawab untuk berinteraksi dengan pengguna dan memberikan mereka data diagnosis yang diperlukan. Imej di bawah sepatutnya dibaca dari kiri ke kanan (sebelah kanan yang pertama diteruskan sebagai sebelah kiri yang kedua):
? Nota: Terdapat tambahan “_ Pemasangan Pip” _ komponen yang dilaksanakan sekali sahaja untuk memasang modul permit. Ini kerana kami melaksanakan LangFlow pada platform kod rendah DataStax. Langkah ini bersamaan dengan melaksanakan permit pemasangan pip secara tempatan.
Jujukan operasi dalam Aliran Sembang adalah seperti berikut:
Seasonal Migraine Flu virus with high fever --- You are a doctor's assistant and help to retrieve information about patients' diagnoses. Given the patients' diagnoses above, answer the question as best as possible. The retrieved diagnoses may belong to multiple patients. Question: list all the recent diagnoses Answer:
Untuk menjalankan komponen PermitFilter, yang memainkan peranan penting dalam pelaksanaan kami, kami memerlukan contoh larian Titik Keputusan Dasar (PDP) Permit. PDP bertanggungjawab untuk menilai dasar dan membuat keputusan sama ada tindakan tertentu dibenarkan untuk pengguna dan sumber tertentu. Dengan menguatkuasakan semakan kebenaran ini sebelum konteks mencapai model bahasa, kami menghalang kebocoran maklumat sensitif dan memastikan penguatkuasaan dasar kawalan akses.
Pelaksanaan lengkap tersedia dalam Repositori GitHub kami, di mana anda akan dapati:
Untuk mula berinteraksi dengan pembantu AI kami dengan semakan kebenaran dilaksanakan, kami hanya boleh memulakan taman permainan LangFlow. Dalam contoh di bawah, saya disahkan sebagai bartosz@health.app yang bermaksud saya hanya mempunyai akses kepada Lawatan-Lawatan Petang dan Petang tanpa Lawatan-Pagi dengan Diabetes. Ini bermakna LLM tidak mempunyai maklumat tentang diabetes dalam konteksnya.
Menjamin akses kepada data penjagaan kesihatan yang sensitif sambil memanfaatkan keupayaan LLM adalah keutamaan dan cabaran. Dengan menggabungkan RAG dan kebenaran terperinci, kami boleh membina aplikasi AI yang pintar dan selamat. Manfaat utama ialah:
Menggunakan alatan seperti LangFlow dan Permit.io, penyedia penjagaan kesihatan boleh melaksanakan sistem kawalan akses berasaskan perhubungan yang bertindak balas secara dinamik kepada perubahan peranan dan perhubungan, memastikan data hanya boleh diakses oleh individu yang diberi kuasa. Dengan menyepadukan penyelesaian ini, organisasi penjagaan kesihatan boleh memanfaatkan AI secara berkesan untuk meningkatkan penjagaan pesakit tanpa menjejaskan keselamatan.
Atas ialah kandungan terperinci Membina Aplikasi AI dengan Keselamatan Gred Perusahaan Menggunakan RAG dan FGA. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!