Membangun aplikasi yang didukung LLM menggunakan LangChain

Halaman ini memperkenalkan cara membangun aplikasi yang didukung LLM menggunakan LangChain. Ringkasan di halaman ini ditautkan 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 generation (RAG). LangChain 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 Cloud SQL untuk PostgreSQL

Cloud SQL untuk PostgreSQL menawarkan antarmuka LangChain berikut:

Pelajari cara menggunakan LangChain dengan Panduan Memulai LangChain untuk Cloud SQL untuk PostgreSQL.

Penyimpanan vektor untuk Cloud SQL untuk PostgreSQL

Penyimpanan vektor mengambil dan menyimpan dokumen serta metadata dari database vektor. Penyimpanan vektor memberi aplikasi kemampuan untuk 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 permintaan penelusuran. Di LangChain, penyimpanan vektor menangani penyimpanan data yang disematkan dan melakukan penelusuran vektor untuk Anda.

Untuk menggunakan penyimpanan vektor di Cloud SQL untuk PostgreSQL, gunakan class PostgresVectorStore.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi produk LangChain Vector Stores.

Panduan prosedur penyimpanan vektor

Panduan Cloud SQL untuk PostgreSQL untuk penyimpanan vektor menunjukkan cara melakukan hal berikut:

  • Menginstal paket integrasi dan LangChain
  • Membuat objek PostgresEngine dan mengonfigurasi kumpulan koneksi ke database Cloud SQL untuk PostgreSQL
  • Menginisialisasi tabel
  • Membuat objek embedding menggunakan VertexAIEmbeddings
  • Menginisialisasi PostgresVectorStore default
  • Menambahkan teks
  • Menghapus teks
  • Menelusuri dokumen
  • Menelusuri dokumen berdasarkan vektor
  • Menambahkan indeks untuk mempercepat kueri penelusuran vektor
  • Mengindeks ulang
  • Menghapus indeks
  • Membuat penyimpanan vektor kustom
  • Menelusuri dokumen dengan filter metadata

Pemuat dokumen untuk Cloud SQL untuk PostgreSQL

Pemuat dokumen menyimpan, memuat, dan menghapus objek Document LangChain. Misalnya, Anda dapat memuat data untuk diproses ke dalam embedding dan menyimpannya di penyimpanan vektor atau menggunakannya sebagai alat untuk memberikan konteks tertentu ke rantai.

Untuk memuat dokumen dari pemuat dokumen di Cloud SQL untuk PostgreSQL, gunakan class PostgresLoader. PostgresLoader menampilkan daftar dokumen dari tabel menggunakan kolom pertama untuk konten halaman dan semua kolom lainnya untuk metadata. Tabel default memiliki kolom pertama sebagai konten halaman dan kolom kedua sebagai metadata JSON. Setiap baris menjadi dokumen. Gunakan class PostgresDocumentSaver untuk menyimpan dan menghapus dokumen.

Untuk mengetahui informasi selengkapnya, lihat topik Pemuat dokumen LangChain.

Panduan prosedur pemuat dokumen

Panduan Cloud SQL untuk PostgreSQL untuk pemuat dokumen menunjukkan cara melakukan hal berikut:

  • Menginstal paket integrasi dan LangChain
  • Memuat dokumen dari tabel
  • Menambahkan filter ke pemuat
  • Menyesuaikan koneksi dan autentikasi
  • Menyesuaikan pembuatan Dokumen dengan menentukan konten dan metadata pelanggan
  • Cara menggunakan dan menyesuaikan PostgresDocumentSaver untuk menyimpan dan menghapus dokumen

Histori pesan chat untuk Cloud SQL untuk PostgreSQL

Aplikasi pertanyaan dan jawaban memerlukan histori hal-hal yang dikatakan dalam percakapan untuk memberikan konteks aplikasi dalam 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, sapaan, atau teks lainnya yang diberikan pengguna atau aplikasi selama percakapan. ChatMessageHistory menyimpan setiap pesan dan merangkai pesan bersama untuk setiap percakapan.

Cloud SQL untuk PostgreSQL memperluas class ini dengan PostgresChatMessageHistory.

Panduan prosedur histori pesan chat

Panduan Cloud SQL untuk PostgreSQL untuk histori pesan chat menunjukkan cara melakukan hal berikut:

  • Menginstal LangChain dan melakukan autentikasi ke Google Cloud
  • Membuat objek PostgresEngine dan mengonfigurasi kumpulan koneksi ke database Cloud SQL untuk PostgreSQL
  • Menginisialisasi tabel
  • Menginisialisasi class PostgresChatMessageHistory untuk menambahkan dan menghapus pesan
  • Membuat rantai untuk histori pesan menggunakan LangChain Expression Language (LCEL) dan model chat Vertex AI Google

Langkah berikutnya