Membangun aplikasi menggunakan LlamaIndex

Anda dapat membuat aplikasi model bahasa besar (LLM) yang menggunakan graph retrieval-augmented generation (GraphRAG) dengan LlamaIndex dan Spanner Graph.

Spanner Graph terintegrasi dengan LlamaIndex melalui kemampuan penyimpanan grafik propertinya untuk memungkinkan Anda menggunakan hal berikut guna membuat alur kerja pengambilan data:

  • Penyimpanan grafik properti: Memungkinkan Anda merepresentasikan data sebagai grafik dengan menyimpan node dan tepi dalam database grafik. Anda dapat menggunakan database grafik untuk membuat kueri hubungan yang kompleks dalam data Anda.

  • Pengambil grafik: Memungkinkan Anda menggunakan LLM untuk menerjemahkan pertanyaan bahasa alami pengguna menjadi kueri untuk penyimpanan grafik. Hal ini memungkinkan aplikasi menjawab pertanyaan menggunakan hubungan terstruktur dalam data grafik.

Apa itu LlamaIndex?

LlamaIndex adalah framework data untuk membangun aplikasi LLM yang membantu Anda menyederhanakan pengembangan retrieval-augmented generation (RAG) dan sistem yang sadar konteks lainnya. Dengan menyediakan alat untuk menghubungkan LLM dengan data Anda, LlamaIndex membantu penyerapan, pengindeksan, dan pembuatan kueri data. Anda dapat menggunakan LlamaIndex dengan LLM untuk membangun aplikasi yang memberikan respons yang akurat dan relevan.

Untuk mengetahui informasi selengkapnya tentang framework LlamaIndex, lihat dokumentasi produk LlamaIndex.

Penyimpanan grafik properti untuk Spanner

Penyimpanan grafik properti dapat digunakan dalam aplikasi untuk melakukan hal berikut:

  • Mengekstrak entity dan hubungan dari dokumen dan menyimpannya sebagai grafik.

  • Lakukan traversal dan analisis yang kompleks pada struktur grafik.

  • Membuat kueri grafik menggunakan Graph Query Language (GQL) untuk memberikan konteks spesifik ke LLM.

Untuk menggunakan penyimpanan grafik properti di Spanner Graph, gunakan class SpannerPropertyGraphStore.

Tutorial penyimpanan grafik properti

Untuk mempelajari cara menggunakan penyimpanan grafik properti dengan Spanner, lihat tutorial penyimpanan grafik properti untuk Spanner. Tutorial ini akan membantu Anda mempelajari cara melakukan hal berikut:

  • Instal paket llama-index-spanner dan LlamaIndex

  • Lakukan inisialisasi class SpannerPropertyGraphStore dan gunakan untuk terhubung ke database Spanner Anda.

  • Tambahkan node dan tepi ke Spanner Graph Anda yang berisi data yang diekstrak dari dokumen menggunakan ekstraktor grafik pengetahuan LlamaIndex.

  • Mengambil informasi terstruktur dengan membuat kueri grafik menggunakan GQL.

  • Visualisasikan hasil kueri grafik Anda.

Pengambil grafik untuk Spanner

Pengambil grafik di LlamaIndex adalah komponen yang menggunakan LLM untuk menerjemahkan pertanyaan bahasa alami pengguna menjadi kueri untuk penyimpanan grafik. Aplikasi menggunakan kueri yang dihasilkan untuk menjawab pertanyaan dengan menggunakan hubungan terstruktur dalam data grafik. Pengambil grafik menggunakan alur kerja berikut untuk membuat jawaban dari kueri bahasa alami:

  1. Minta LLM untuk menerjemahkan pertanyaan bahasa alami menjadi kueri GQL.

  2. Jalankan kueri GQL terhadap penyimpanan grafik menggunakan Spanner Graph dan class SpannerPropertyGraphStore.

  3. Kirim data terstruktur yang ditampilkan oleh kueri ke LLM menggunakan Spanner Graph.

  4. Buat jawaban yang mudah dibaca menggunakan LLM.

Menggunakan class retriever LlamaIndex

Class pengambilan grafik LlamaIndex berikut dapat digunakan dengan Spanner Graph untuk menghasilkan jawaban yang mudah dibaca manusia terhadap perintah LLM:

Class SpannerGraphTextToGQLRetriever

Class SpannerGraphTextToGQLRetriever menerjemahkan bahasa alami menjadi kueri GQL untuk ekstraksi data dari grafik.

Class SpannerGraphCustomRetriever

Class SpannerGraphCustomRetriever mengimplementasikan pendekatan pengambilan hybrid. SpannerGraphCustomRetriever menangani pertanyaan spesifik dan konseptual menggunakan langkah-langkah berikut:

  1. Lakukan penelusuran berikut secara bersamaan:

    • Penelusuran grafik yang menerjemahkan pertanyaan dalam natural language menjadi kueri GQL yang menggunakan grafik untuk menemukan jawaban.

    • Penelusuran Vektor atau penelusuran semantik untuk menemukan informasi yang terkait secara konseptual.

  2. Gabungkan hasil dari penelusuran grafik dan penelusuran vektor.

  3. Mengevaluasi dan memeringkat ulang hasil gabungan menggunakan LLM. LLM memilih informasi yang paling relevan dan kontekstual untuk menjawab pertanyaan asli.

Tutorial pengambilan grafik

Untuk mempelajari cara menggunakan pengambilan grafik dengan Spanner untuk menjawab pertanyaan, lihat tutorial pengambilan grafik untuk Spanner. Tutorial ini menunjukkan kepada Anda cara:

  • Membuat grafik dari blob teks tidak terstruktur.

  • Menyimpan grafik di Spanner menggunakan class SpannerPropertyGraphStore

  • Lakukan inisialisasi class SpannerGraphTextToGQLRetriever dan instance SpannerGraphCustomRetriever menggunakan penyimpanan grafik dan LLM Anda.

  • Buat jawaban atas pertanyaan dalam natural language menggunakan data grafik yang disimpan di Spanner.

Langkah berikutnya