

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengembangkan dan mengatur solusi AI generatif untuk perawatan kesehatan
<a name="development"></a>

Untuk membangun solusi dalam panduan ini, Anda harus membangun arsitektur RAG yang menggunakan LLM yang disetel dengan baik untuk memberikan data pasien yang ditambah, wawasan klinis dan diagnostik, dan hasil pasien yang diprediksi kepada penyedia layanan kesehatan. Ini membutuhkan integrasi beberapa Layanan AWS dan alat untuk menciptakan alur kerja yang kohesif dan efisien. Bagian ini membahas hal-hal berikut:
+ [Amazon Q Developer](#development-amazon-q)— Gunakan Pengembang Amazon Q untuk menjawab pertanyaan teknik dan kesalahan kode selama proses pengembangan.
+ [Multi-retriever Desain RAG](#development-multi-retriever-rag)— Merancang dan menerapkan solusi RAG yang menggunakan beberapa retriever untuk mengambil konteks medis yang benar untuk pertanyaan pengguna.
+ [ReAct agen](#development-react-agents)— Menerapkan agen yang menggabungkan penalaran dengan tindakan dinamis.

## Amazon Q Developer
<a name="development-amazon-q"></a>

Saat membangun solusi AI generatif, mungkin sulit untuk membuat agen AI dan layanan kunci penghubung. Namun, [Amazon Q Developer](https://aws.amazon.com/q/developer/) membantu ilmuwan data dan insinyur AI dengan menyediakan akses ke asisten AI generatif tingkat lanjut. Amazon Q dapat dengan cepat dan akurat menjawab pertanyaan pengguna dan kesalahan kode, yang dapat membantu Anda mengoptimalkan proses pengembangan LLM. Amazon Q menawarkan keuntungan signifikan bagi pengembang yang membuat aplikasi yang menggunakan model dasar Amazon Bedrock. Ini dapat merampingkan alur kerja dan meningkatkan kualitas kode. Ini mengotomatiskan pembuatan skrip Python dan infrastruktur sebagai konfigurasi kode (IAc), secara signifikan mengurangi waktu dan upaya pengembangan. Melalui kemampuan refactoring tingkat lanjut, Amazon Q dapat meningkatkan kinerja kode, mengidentifikasi kerentanan keamanan, dan memastikan pengembang mematuhi praktik terbaik. Selain itu, ini memfasilitasi pembelajaran dan adopsi untuk pemula dengan memberikan saran dan penjelasan yang sadar konteks, membuat tugas pengkodean yang kompleks lebih mudah diakses dan efisien.

## Multi-retriever Desain RAG
<a name="development-multi-retriever-rag"></a>

Dalam aplikasi AI generatif, pipa RAG multi-retriever dapat secara efisien mengambil informasi dari berbagai sumber data untuk membantu penyedia layanan kesehatan dan dokter menjawab pertanyaan medis. Pipeline ini menggunakan berbagai jenis retriever untuk menarik data yang relevan dari basis pengetahuan yang berbeda. Setiap retriever mengkhususkan diri dalam mengambil jenis informasi tertentu, seperti riwayat pasien, wawasan diagnostik, catatan klinis, atau konten dari penelitian medis dan teks akademik.

Gunakan sifat data dan persyaratan aplikasi khusus untuk menentukan basis pengetahuan backend yang benar yang benar untuk kasus penggunaan Anda. Basis data vektor OpenSearch Layanan Amazon sangat cocok untuk volume besar data perawatan kesehatan tidak terstruktur atau semi-terstruktur, termasuk ringkasan penilaian diagnosis gambar, ringkasan pelepasan, laporan klinis, penelitian medis, dan konten teks akademik. Di sisi lain, layanan database grafik, seperti Amazon Neptunus, dapat ideal untuk kasus penggunaan perawatan kesehatan yang memerlukan eksplorasi mendalam tentang hubungan temporal antara entitas, seperti pasien, riwayat pasien, penyedia layanan kesehatan, obat-obatan, gejala, dan perawatan.

Komponen penting dari pipeline ini adalah *prediksi maksud kueri pengguna*. Ini memastikan bahwa sistem merutekan kueri ke rantai retriever yang benar. Misalnya, jika seorang dokter bertanya tentang riwayat perawatan pasien, gejala, interaksi dengan rumah sakit, kemungkinan masuk kembali ke rumah sakit, atau hasil pasien potensial, maka modul prediksi maksud kueri mengidentifikasi maksud ini. Ini mengarahkan permintaan ke rantai retriever yang dapat mengambil catatan pasien atau data perawatan kronologis dari grafik pengetahuan medis. Atau, jika pertanyaannya adalah tentang penemuan penyakit, penilaian diagnostik spesifik, atau detail prosedur klinis spesifik dari buku teks akademik, maka kueri diarahkan ke rantai retriever yang dapat mengambil informasi ini dari database vektor Layanan. OpenSearch Anda dapat menggunakan fungsionalitas [pemanggilan alat](https://python.langchain.com/docs/concepts/tool_calling/) LangChain untuk mengikat alat kustom ke Amazon Bedrock LLM yang dapat mengklasifikasikan pertanyaan pengguna ke dalam maksud yang telah ditentukan.

Sistem RAG multi-retriever ini mencakup LangChain agen yang dirancang untuk mengelola akses ke basis pengetahuan tertentu. Anda dapat menggunakan LangChain untuk mengatur interaksi antara Amazon Bedrock LLM, retriever yang berbeda, dan alat. LangChainmenyertakan kelas pemanggilan alat yang membantu Anda membuat alat kustom, seperti pengklasifikasi maksud, retriever untuk Neptunus, retriever untuk OpenSearch Layanan, atau alat lain apa pun yang dapat dikembangkan untuk mengklasifikasikan maksud pengguna dan mengakses data dari basis pengetahuan tertentu dalam format terstruktur. Anda kemudian memasukkan alat-alat ini ke kelas untuk membuat agen Penalaran dan Akting (ReAct). ReAct Agen memproses pertanyaan pengguna, merencanakan langkah-langkah berurutan untuk menjawab pertanyaan, dan kemudian secara berulang mengeksekusi alat yang tersedia dan memproses respons alat untuk akhirnya menjawab kueri pengguna.

Gambar berikut menunjukkan bagaimana sistem RAG multi-retriever yang dirancang untuk pengambilan pengetahuan yang efisien dan resolusi kueri cerdas bekerja. LangChain ReAct Agen menganalisis maksud pengguna, merumuskan rencana terstruktur untuk eksekusi, dan memilih alat pengambilan yang paling relevan. Sistem menanyakan cache pertanyaan sebelumnya dan memeriksa kueri serupa berdasarkan atribut utama, seperti ID pasien, kondisi medis, dan tanggal kunjungan. Jika pertanyaan yang sangat mirip ditemukan, jawaban yang sesuai diambil secara langsung. Jika tidak, agen mengeksekusi retriever yang sesuai. Untuk mengambil informasi yang berpusat pada pasien, seperti riwayat pengobatan, gejala, interaksi rumah sakit, atau kemungkinan masuk kembali, sistem menggunakan grafik retriever. Untuk penilaian diagnostik, prosedur klinis, dan temuan medis terstruktur, agen menggunakan retriever database vektor. Dalam skenario yang membutuhkan kombinasi pengetahuan kontekstual dari kedua penyimpanan data, untuk menghasilkan respons yang komprehensif, sistem menggunakan strategi pengambilan hibrida yang mengintegrasikan hasil dari grafik pengetahuan dan database vektor.

![Arsitektur yang menggunakan beberapa LangChain retriever untuk melakukan Retrieval Augmented Generation.](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/rag-healthcare-use-cases/images/multi-retriever-rag.png)


## ReAct agen
<a name="development-react-agents"></a>

Agen Reasoning and Acting (ReAct) dirancang untuk aplikasi RAG multi-segi. Agen ini memberikan kombinasi yang kuat antara penalaran dan tindakan dinamis, terutama untuk aplikasi kompleks yang melibatkan alur kerja pengambilan informasi logis langkah demi langkah. Untuk informasi lebih lanjut, lihat [ReAct: Mensinergikan Penalaran dan Akting](https://react-lm.github.io/) dalam Model Bahasa.

Dalam konteks medis dan perawatan kesehatan, pertanyaan dari dokter atau dokter seringkali beragam. Misalnya, seorang dokter mungkin bertanya “Perawatan apa yang diberikan kepada pasien serupa dengan hipertensi dan diabetes tipe 2?” Setelah mengidentifikasi maksud pengguna, yaitu untuk mengambil perawatan untuk hipertensi dan diabetes tipe 2, agen AI perlu membagi kueri ini menjadi subtugas dan kemudian memilih strategi pengambilan yang paling efisien. Dalam hal ini, agen AI harus mengidentifikasi node yang paling relevan (seperti usia pasien, jenis kelamin, kondisi, perawatan, dan obat-obatan) dan kemudian menanyakan grafik untuk entitas ini dan atribut serta hubungannya. ReAct agen sangat membantu karena mereka menggabungkan kemampuan penalaran (inferensi logis) LLM dengan tindakan (query atau berinteraksi dengan sumber daya eksternal atau basis pengetahuan).

Untuk menjawab pertanyaan pengguna “Perawatan apa yang diberikan kepada pasien serupa dengan hipertensi dan diabetes tipe 2?” , contoh berikut menggambarkan bagaimana ReAct agen bekerja:

1. **Penalaran agen** — ReAct Agen menyimpulkan bahwa pertanyaan tersebut melibatkan pengambilan informasi tentang kondisi (diabetes dan hipertensi). Ini mempertimbangkan usia pasien, perawatan, obat-obatan, dan periode untuk menganalisis.

1. **Tindakan agen** — Agen menggunakan OpenCypher untuk menanyakan grafik pengetahuan untuk perawatan yang khusus untuk diabetes tipe 2 dan hipertensi. Ini juga mengambil obat yang diberikan, tanggal kunjungan rumah sakit, efek samping obat, hasil pasien yang diketahui, dan data referensi silang untuk pasien serupa (seperti pasien dengan jenis kelamin dan usia yang sama).

1. **Observasi agen** — Dari grafik pengetahuan, agen mengambil enam bulan terakhir data tabular tentang perawatan yang diberikan kepada pasien yang memiliki hipertensi dan diabetes tipe 2.

1. **Penalaran agen** — Untuk menentukan peringkat hasil dari catatan yang diambil, agen mengidentifikasi atribut penting, seperti kebaruan, efek samping obat, atau hasil pasien yang diketahui.

1. **Tindakan agen** — Agen memberi peringkat ulang catatan berdasarkan atribut yang diidentifikasi dan logika yang telah ditentukan sebelumnya yang diberikan melalui prompt sistem.

1. **Generasi respons** - LLM di Amazon Bedrock menghasilkan respons berdasarkan konteks yang disiapkan ReAct agen.