Retrieval-augmented generation (RAG) meningkatkan kemampuan model bahasa besar (LLM) untuk menjawab pertanyaan terkait domain privat. Teknik ini mengambil informasi dari basis pengetahuan eksternal dan menggabungkannya dengan masukan pengguna. Data gabungan ini kemudian dikirim ke LLM. Elastic Algorithm Service (EAS) menawarkan metode penyebaran berbasis skenario yang memungkinkan Anda dengan cepat membangun dan menyebarkan chatbot RAG. Anda dapat secara fleksibel memilih LLM dan database vektor. Topik ini menjelaskan cara menyebarkan layanan chatbot RAG dan menguji inferensi modelnya.
Langkah 1: Menyebarkan layanan RAG
Masuk ke Konsol PAI. Pilih wilayah di bagian atas halaman, lalu pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).
Pada tab Inference Service, klik Deploy Service. Kemudian, di bagian Scenario-based Model Deployment, klik RAG-based LLM Chatbot Deployment.
Pada halaman RAG-based LLM Chatbot Deployment, konfigurasikan parameter dan klik Deploy. Parameter utama adalah sebagai berikut:
Version Selection: Layanan RAG menawarkan dua mode penyebaran yang dapat dipilih berdasarkan skenario aplikasi dan perencanaan sumber daya.
Penyebaran LLM Terintegrasi: Menyebarkan layanan RAG dan model bahasa besar, seperti Qwen, dalam instance layanan EAS yang sama. Mode ini mudah dikonfigurasi dan cocok untuk validasi cepat serta pengembangan prototipe.
Penyebaran LLM Terpisah: Hanya menyebarkan layanan RAG. Model bahasa besar ada sebagai layanan terpisah. Mode ini memungkinkan layanan RAG terhubung ke layanan LLM lain, seperti layanan model Alibaba Cloud Model Studio. Pendekatan ini mendukung penggunaan kembali sumber daya dan penskalaan independen, cocok untuk lingkungan produksi atau skenario di mana layanan LLM sudah ada.
Deployment Resources: Menentukan sumber daya komputasi yang dialokasikan untuk layanan.
Penyebaran LLM Terintegrasi: Sistem secara otomatis merekomendasikan spesifikasi sumber daya berdasarkan Kategori Model yang dipilih. Memilih spesifikasi yang lebih rendah dapat menyebabkan layanan gagal dimulai.
Penyebaran LLM Terpisah: Layanan RAG itu sendiri mengonsumsi sumber daya minimal. Kami merekomendasikan Anda memilih spesifikasi dengan setidaknya CPU 8-core dan memori 16 GB, seperti
ecs.g6.2xlargeatauecs.g6.4xlarge.
Pengaturan Database Vektor:
Anda dapat membangun perpustakaan pencarian vektor menggunakan Faiss (Facebook AI Similarity Search), Elasticsearch, Hologres, OpenSearch, atau RDS PostgreSQL.
FAISS
Anda dapat menggunakan Faiss untuk membangun database vektor lokal. Metode ini ringan, mudah digunakan, dan menghilangkan kompleksitas terkait aktivasi produk database vektor online.
Untuk Version Type, pilih FAISS.
Elasticsearch
Pastikan Anda telah membuat instance Elasticsearch Alibaba Cloud.
PentingAnda harus mengonfigurasi instance Elasticsearch Anda untuk mengizinkan pembuatan indeks otomatis. Pada halaman instance Elasticsearch Anda, klik Modify Configuration dan atur Automatic Index Creation ke Allow Automatic Index Creation. Untuk informasi lebih lanjut, lihat Konfigurasikan Parameter YML.
Untuk Version Type, pilih Elasticsearch.
Private IP Address/Port: Anda dapat memperoleh alamat IP pribadi dan port dari bagian Informasi Dasar halaman detail instance Elasticsearch. Formatnya adalah
http://<Private IP address>:<Private port>.Index Name: Menentukan operasi mana yang dijalankan oleh sistem.
Masukkan nama baru: EAS secara otomatis membuat indeks yang memenuhi persyaratan PAI-RAG selama penyebaran.
Masukkan nama yang sudah ada: EAS menggunakan indeks yang sudah ada. Pastikan indeks tersebut dibuat oleh layanan PAI-RAG untuk menjaga kompatibilitas struktural.
Username, Password: Nama pengguna dan kata sandi yang Anda tetapkan saat membuat instance Elasticsearch. Nama pengguna default adalah elastic. Jika Anda lupa kata sandinya, Anda dapat mereset kata sandi akses instance.
OSS Path: Pilih direktori penyimpanan OSS yang ada di wilayah saat ini. Path-nya dipasang untuk manajemen basis pengetahuan.
Hologres
Pastikan Anda telah membeli instance Hologres.
Untuk Version Type, pilih Hologres.
Invocation Information: Host instance di VPC tertentu. Untuk mendapatkan host, buka halaman detail instance di Konsol Manajemen Hologres dan klik Salin di sebelah VPC Tertentu di bagian Network Information. Host adalah bagian nama domain sebelum
:80.Database Name: Nama database di instance Hologres. Untuk membuat database, lihat Buat database.
Account: Atur ke akun pengguna kustom yang ada. Untuk informasi lebih lanjut, lihat Buat Pengguna Kustom. Pastikan Anda memilih Instance Super Administrator (SuperUser) untuk Select Member Role.
Password: Kata sandi saat ini dari pengguna kustom.
Table Name: Operasi yang dilakukan oleh sistem tergantung pada nama yang Anda masukkan.
Masukkan nama baru: EAS secara otomatis membuat tabel yang memenuhi persyaratan PAI-RAG selama penyebaran.
Masukkan nama yang sudah ada: EAS menggunakan tabel yang sudah ada. Pastikan tabel tersebut dibuat oleh layanan PAI-RAG untuk menjaga kompatibilitas struktural.
OSS Path: Pilih direktori OSS yang ada di wilayah saat ini. Path yang dipilih dipasang untuk mengelola basis pengetahuan.
OpenSearch
Pastikan Anda telah membeli instance OpenSearch Vector Search Edition.
Untuk Version Type, pilih OpenSearch.
Endpoint: Endpoint publik untuk instance OpenSearch Vector Search Edition.
CatatanAnda harus mengaktifkan fitur akses jaringan publik untuk instance OpenSearch Vector Search Edition dan menambahkan alamat IP publik EAS ke daftar putih.
Instance ID: Anda dapat memperoleh ID dari daftar instance di konsol OpenSearch Vector Search Edition.
Username, Password: Nama pengguna dan kata sandi yang Anda tentukan saat membuat instance OpenSearch (Vector Search Edition).
Table Name: Anda harus membuat tabel indeks yang memenuhi persyaratan. Untuk informasi lebih lanjut, lihat Konfigurasikan instance. Parameter utama adalah sebagai berikut:
Untuk template skenario, pilih template serbaguna. Untuk konfigurasi bidang, impor file konfigurasi berikut.
Untuk Index Schema, dimensi vektor harus sesuai dengan dimensi model vektor untuk basis pengetahuan. Untuk Distance Type, pilih InnerProduct.
RDS PostgreSQL
Pastikan Anda telah membuat instance RDS PostgreSQL.
Untuk Version Type, pilih RDS PostgreSQL.
Host: Endpoint internal instance RDS PostgreSQL. Anda dapat melihat endpoint di halaman Database Connection untuk instance Anda di Konsol ApsaraDB RDS untuk PostgreSQL.
Port: Nilai default-nya adalah 5432. Anda dapat mengubah nilai ini sesuai kebutuhan.
Database: Authorized Account harus merupakan Privileged Account. Untuk informasi lebih lanjut, lihat Buat akun dan database. Anda juga harus menginstal plugin vector dan jieba.
Table Name: Masukkan nama untuk tabel database.
Username dan Password: Nama pengguna dan kata sandi akun istimewa yang digunakan untuk membuat database. Untuk membuat akun istimewa, lihat Buat akun dan database. Dalam topik terkait, Anda harus memilih Privileged Account untuk Account Type.
OSS Path: Pilih direktori penyimpanan OSS yang ada di wilayah saat ini untuk dipasang guna mengelola basis pengetahuan.
OSS Path: Pilih folder OSS di wilayah saat ini untuk menyimpan file basis pengetahuan. Jika tidak ada folder yang tersedia, lihat Console Quick Start untuk membuat satu.
CatatanJika Anda menerapkan layanan menggunakan model fine-tuned yang di-host sendiri, pastikan jalur penyimpanan OSS yang dipilih berbeda dari jalur tempat model tersebut berada untuk menghindari konflik.
VPC: Lakukan konfigurasi jaringan berikut untuk memastikan bahwa layanan RAG dapat berkomunikasi dengan layanan LLM, pustaka pencarian vektor, dan layanan Alibaba Cloud lainnya.
Akses layanan publik: Untuk mengakses database vektor atau layanan LLM (seperti layanan model dari Alibaba Cloud Model Studio) melalui Internet, atau untuk menggunakan pencarian web, Anda harus mengonfigurasi akses jaringan publik untuk layanan EAS.
Akses layanan privat:
Untuk mengakses database vektor menggunakan titik akhir privat, layanan RAG dan database vektor harus berada dalam VPC yang sama.
Untuk mengakses layanan LLM menggunakan titik akhir privat, layanan RAG dan layanan LLM harus berada dalam VPC yang sama.
CatatanHologres, Elasticsearch, , dan RDS PostgreSQL dapat diakses melalui jaringan internal atau jaringan publik. Kami menyarankan Anda menggunakan akses jaringan internal.
Database vektor Faiss tidak memerlukan akses jaringan. OpenSearch hanya mendukung akses melalui Internet.
Ketika Service Status berubah menjadi Running, layanan berhasil disebarkan. (Penyebaran layanan biasanya memakan waktu sekitar 5 menit, tetapi durasi sebenarnya dapat bervariasi tergantung pada faktor-faktor seperti jumlah parameter model.)
Langkah2: Panggilan API
Layanan RAG menyediakan operasi API, seperti manajemen basis pengetahuan dan dialog, untuk memfasilitasi integrasi ke aplikasi. Untuk informasi lebih lanjut, lihat Operasi API RAG.
Biaya dan risiko
Komponen biaya
Biaya untuk menyebarkan dan menggunakan solusi ini meliputi hal-hal berikut:
Biaya Sumber Daya EAS: Sumber daya komputasi (seperti vCPU, memori, dan GPU) yang dikonsumsi oleh layanan RAG dibebankan per jam. Penagihan untuk sumber daya ini berhenti setelah Anda menghentikan layanan.
Biaya Perpustakaan Pencarian Vektor: Jika Anda menggunakan Elasticsearch, , Hologres, OpenSearch, atau RDS PostgreSQL, Anda harus membayar biaya instance untuk produk terkait.
Biaya Object Storage Service (OSS): Biaya ini dikeluarkan untuk menyimpan file basis pengetahuan asli.
Biaya Panggilan Model Bahasa Besar: Jika Anda menggunakan layanan model komersial seperti Alibaba Cloud Model Studio, biaya panggilan API dikeluarkan.
Biaya Gateway NAT Internet: Jika layanan EAS perlu mengakses Internet, biaya gateway NAT dikeluarkan.
Biaya Layanan Pencarian Web: Jika Anda mengaktifkan fitur pencarian web (seperti Bing), Anda akan dikenakan biaya untuk layanan pencarian terkait.
Setelah Anda menghentikan layanan EAS, hanya penagihan untuk sumber daya EAS yang berhenti. Untuk menghentikan penagihan untuk produk lainnya, lihat dokumentasi untuk produk-produk tersebut dan ikuti petunjuk untuk menghentikan atau menghapus instance terkait.
Risiko dan keterbatasan utama
Batasan Panjang Percakapan: Panjang teks yang dapat diproses dalam satu percakapan dibatasi oleh ukuran jendela konteks (batas token) dari layanan LLM yang dipilih.
Menimpa File: Saat Anda menggunakan database vektor selain FAISS, mengunggah file dengan nama yang sama secara langsung menimpa data yang ada. Berhati-hatilah saat melakukan operasi ini.
Keterbatasan Parameter API: Hanya beberapa parameter fitur yang dapat dikonfigurasi melalui operasi API. Konfigurasi lanjutan lainnya, seperti sebagian besar parameter penyetelan pengambilan, harus dikonfigurasi menggunakan WebUI.
Catatan
Solusi ini dibatasi oleh ukuran sumber daya server dan batas token default layanan LLM, yang membatasi panjang percakapan yang didukung. Panduan ini membantu Anda menguji fitur pengambilan dasar dari chatbot RAG.
FAQ
Mengapa parameter yang saya atur menggunakan API tidak berpengaruh?
Saat ini, layanan PAI-RAG memungkinkan Anda mengonfigurasi hanya parameter yang tercantum dalam dokumen Referensi API menggunakan API. Anda harus mengonfigurasi semua parameter lainnya menggunakan WebUI.