Halaman ini memperkenalkan cara membangun aplikasi yang didukung LLM menggunakan LangChain. Ringkasan di halaman ini menautkan ke panduan prosedur di GitHub.
Apa itu LangChain?
LangChain adalah framework orkestrasi LLM yang membantu developer membangun aplikasi AI generatif atau alur kerja retrieval-augmented technology (RAG). Layanan ini menyediakan struktur, alat, dan komponen untuk menyederhanakan alur kerja LLM yang kompleks.
Untuk mengetahui informasi selengkapnya tentang LangChain, lihat halaman Google LangChain. Untuk mengetahui informasi selengkapnya tentang framework LangChain, lihat dokumentasi produk LangChain.
Komponen LangChain untuk Spanner
Spanner menawarkan antarmuka LangChain berikut:
Pelajari cara menggunakan komponen tersebut dalam aplikasi dengan Panduan Memulai LangChain untuk Spanner.
Penyimpanan vektor untuk Spanner
Penyimpanan vektor mengambil dan menyimpan dokumen serta metadata dari database vektor. Penyimpanan vektor memungkinkan aplikasi melakukan penelusuran semantik yang menafsirkan arti kueri pengguna. Jenis penelusuran ini disebut penelusuran vektor, dan dapat menemukan topik yang cocok dengan kueri secara konseptual. Pada waktu kueri, penyimpanan vektor mengambil vektor embedding yang paling mirip dengan embedding dari permintaan penelusuran. Di LangChain, penyimpanan vektor menangani penyimpanan data tersemat dan melakukan penelusuran vektor untuk Anda.
Untuk menggunakan penyimpanan vektor di Spanner, gunakan
class SpannerVectorStore
.
Untuk informasi selengkapnya, lihat dokumentasi produk Penyimpanan Vektor LangChain.
Panduan prosedur penyimpanan vektor
Panduan Spanner untuk penyimpanan vektor menunjukkan cara melakukan hal berikut:
- Menginstal paket integrasi dan LangChain
- Menginisialisasi tabel untuk penyimpanan vektor
- Menyiapkan layanan penyematan menggunakan
VertexAIEmbeddings
- Melakukan inisialisasi
SpannerVectorStore
- Menambahkan dan menghapus dokumen
- Telusuri dokumen serupa
- Membuat penyimpanan vektor kustom untuk terhubung ke database Spanner yang sudah ada dan memiliki tabel dengan embedding vektor
Loader dokumen untuk Spanner
Loader dokumen menyimpan, memuat, dan menghapus objek Document
LangChain. Misalnya, Anda dapat memuat data untuk diproses menjadi embedding dan
menyimpannya di penyimpanan vektor atau menggunakannya sebagai alat untuk memberikan konteks tertentu
ke rantai.
Untuk memuat dokumen dari Spanner, gunakan class SpannerLoader
.
Gunakan class SpannerDocumentSaver
untuk menyimpan dan menghapus dokumen.
Untuk mengetahui informasi selengkapnya, lihat topik loader Dokumen LangChain.
Panduan prosedur loader dokumen
Panduan Spanner untuk loader dokumen menunjukkan cara melakukan hal berikut:
- Menginstal paket integrasi dan LangChain
- Memuat dokumen dari tabel
- Menambahkan filter ke loader
- Menyesuaikan koneksi dan autentikasi
- Menyesuaikan pembuatan dokumen dengan menentukan metadata dan konten pelanggan
- Cara menggunakan dan menyesuaikan
SpannerDocumentSaver
untuk menyimpan dan menghapus dokumen
Histori pesan chat untuk Spanner
Aplikasi tanya jawab memerlukan histori hal-hal yang diucapkan dalam
percakapan agar konteks aplikasi dapat menjawab pertanyaan lebih lanjut
dari pengguna. Class ChatMessageHistory
LangChain memungkinkan aplikasi
menyimpan pesan ke database dan mengambilnya saat diperlukan untuk merumuskan jawaban
lebih lanjut. Pesan dapat berupa pertanyaan, jawaban, pernyataan, salam, atau
teks lainnya yang diberikan oleh pengguna atau aplikasi selama percakapan.
ChatMessageHistory
menyimpan setiap pesan dan menggabungkan pesan untuk setiap
percakapan.
Spanner memperluas class ini dengan SpannerChatMessageHistory
.
Panduan prosedur histori pesan chat
Panduan Spanner untuk histori pesan chat menunjukkan cara melakukan hal berikut:
- Menginstal LangChain dan melakukan autentikasi ke Google Cloud
- Menginisialisasi tabel
- Lakukan inisialisasi class
SpannerChatMessageHistory
untuk menambahkan dan menghapus pesan - Menggunakan klien untuk menyesuaikan koneksi dan autentikasi
- Hapus sesi
SpannerChatMessageHistory