All Products
Search
Document Center

Tablestore:Gunakan EAS dan Tablestore untuk Menerapkan Chatbot LLM Berbasis RAG

Last Updated:Jul 02, 2025

Saat menerapkan chatbot model bahasa besar (LLM) berbasis Retrieval-Augmented Generation (RAG) di Platform for AI (PAI), Anda dapat menggunakan Tablestore sebagai database vektor. Topik ini menjelaskan cara menggunakan Tablestore sebagai database vektor dalam penerapan chatbot LLM berbasis RAG dengan konfigurasi JSON.

Informasi latar belakang

EAS

PAI menyediakan platform terpadu untuk pengembangan dan penerapan model. Modul Elastic Algorithm Service (EAS) dari PAI memungkinkan Anda menerapkan model sebagai layanan inferensi online menggunakan grup sumber daya publik atau khusus. Model dimuat pada perangkat keras heterogen (CPU dan GPU) untuk menghasilkan respons secara real-time.

Tablestore

Tablestore adalah sistem penyimpanan dan pengambilan data masif yang hemat biaya dan berperforma tinggi. Sistem ini mendukung fitur pengambilan vektor dengan laju tinggi (pengambilan multimodal serta pengambilan skalar dan vektor campuran) dan performa tinggi (pengindeksan real-time, kueri dalam milidetik, dan mendukung hingga 10 miliar vektor per tabel) untuk memastikan stabilitas dan keamanan layanan (VPC khusus, ketersediaan 99,99%, dan reliabilitas data sebesar 12 sembilan).

RAG

RAG mengambil informasi relevan dari basis pengetahuan eksternal, menggabungkannya dengan input pengguna, lalu melewatkan input gabungan ke LLM. Hal ini meningkatkan kemampuan tanya-jawab berbasis pengetahuan LLM di domain tertentu. Gambar berikut menunjukkan cara mengunggah, menyimpan, dan mengambil file basis pengetahuan saat Tablestore digunakan sebagai database vektor aplikasi RAG.

image

Catatan penggunaan

Dalam contoh ini, model LLM DeepSeek-R1-Distill-Qwen-1.5B diterapkan pada instance tipe ecs.gn7i-c16g1.4xlarge. Untuk informasi tentang metode penagihan EAS, lihat Penagihan EAS.

Penting

Jika hanya ingin menguji proses penerapan, segera hapus layanan setelah penerapan untuk mencegah biaya tak terduga dari sumber daya.

Prosedur

Langkah 1: Siapkan database vektor Tablestore

Aktifkan Tablestore

Jika Tablestore sudah diaktifkan, lewati langkah ini.

  1. Masuk ke halaman halaman detail produk.

  2. Klik Get it Free.

  3. Di halaman Table Store (Pay-As-You-Go), klik Buy Now.

  4. Di halaman Confirm Order, baca perjanjian dengan cermat, pilih I have read and agree to Table Store (Pay-As-You-Go) Agreement of Service, lalu klik Activate Now.

  5. Setelah mengaktifkan Tablestore, klik Console untuk masuk ke konsol Tablestore.

Buat instance Tablestore

Anda juga dapat memilih instance yang ada sebagai database vektor. Dalam hal ini, Anda harus menyiapkan informasi seperti nama instance, titik akhir virtual private cloud (VPC), dan pasangan AccessKey dengan izin akses pada instance.

  1. Masuk ke konsol Tablestore.

  2. Di bilah navigasi atas, pilih grup sumber daya dan wilayah, lalu klik Create Instance.

  3. Di kotak dialog Billing Method, tentukan Instance Name dan Instance Type, lalu klik OK.

Peroleh informasi koneksi

  1. Klik nama instance atau Kelola Instance untuk masuk ke tab Detail Instance. Di tab Detail Instance, Anda dapat melihat URL akses instance dan nama instance.

    Catatan

    Gunakan titik akhir VPC sebagai URL akses instance.

  2. Buat pasangan AccessKey untuk akun Alibaba Cloud atau pengguna RAM yang memiliki izin akses ke Tablestore.

Langkah 2: Gunakan EAS untuk menerapkan chatbot LLM berbasis RAG

  1. Aktifkan PAI dan buat ruang kerja default.

    Penting

    Aktifkan PAI di wilayah yang sama dengan instance Tablestore.

  2. Di panel navigasi sisi kiri konsol PAI, pilih Model Deployment > Elastic Algorithm Service (EAS).

  3. Di halaman Elastic Algorithm Service (EAS), klik Deploy Service. Di halaman yang muncul, klik JSON Deployment.

  4. Di halaman Penerapan JSON, masukkan konfigurasi penerapan dan klik Deploy. Di pesan yang muncul, klik OK.

Setelah menyelesaikan langkah-langkah di atas, sistem segera mulai menerapkan chatbot LLM berbasis RAG. Proses penerapan memakan waktu sekitar 5 menit. Setelah penerapan selesai, status layanan berubah menjadi Berjalan.

Jika tabel data vektor yang ditentukan tidak ada, sistem secara otomatis membuat tabel data dan mengonfigurasi indeks pencarian untuk instance Tablestore selama penerapan.

Contoh File Konfigurasi dan Deskripsi Parameter

Contoh file konfigurasi

{
  "SupportedInstanceTypes": [
      "ecs.gn7i-c16g1.4xlarge",
      "ecs.gn7i-c32g1.16xlarge",
      "ecs.gn7i-c32g1.32xlarge",
      "ecs.gn7i-c32g1.8xlarge",
      "ecs.gn7i-c8g1.2xlarge",
      "ecs.gn7i-c8g1.2xlarge.limit",
      "ecs.gn8is-2x.8xlarge",
      "ecs.gn8is-4x.16xlarge",
      "ecs.gn8is-8x.32xlarge",
      "ecs.gn8is.2xlarge",
      "ecs.gn8is.4xlarge",
      "ecs.gn8v.6xlarge",
      "ecs.gn8v-2x.12xlarge",
      "ecs.gn8v-4x.24xlarge",
      "ecs.gn8v-8x.48xlarge",
      "ml.gu7i.c128m752.4-gu30",
      "ml.gu7i.c16m60.1-gu30",
      "ml.gu7i.c32m188.1-gu30",
      "ml.gu7i.c64m376.2-gu30",
      "ml.gu7i.c8m30.1-gu30",
      "ml.gu8is.c128m1024.8-gu60",
      "ml.gu8is.c16m128.1-gu60",
      "ml.gu8is.c32m256.2-gu60",
      "ml.gu8is.c64m512.4-gu60",
      "ml.gu8v.c192m1024.8-gu120",
      "ml.gu8v.c24m128.1-gu120",
      "ml.gu8v.c48m256.2-gu120",
      "ml.gu8v.c96m512.4-gu120"
  ],
  "cloud": {
      "computing": {
          "instances": [
              {
                  "type": "ecs.gn7i-c16g1.4xlarge"
              }
          ]
      },
      "networking": {
          "security_group_id": "sg-bp****************dj",
          "vpc_id": "vpc-bp*****************po",
          "vswitch_id": "vsw-bp*****************eu"
      }
  },
  "containers": [
      {
          "image": "eas-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai-eas/pai-rag:0.2.0-nginx",
          "port": 8680,
          "script": "/docker-entrypoint.sh nginx"
      },
      {
          "env": [
              {
                  "name": "PAIRAG_RAG__SETTING__interactive",
                  "value": "false"
              }
          ],
          "image": "eas-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai-eas/pai-rag:0.2.0-ui",
          "port": 8002,
          "script": "pai_rag ui"
      },
      {
          "env": [
              {
                  "name": "PAIRAG_RAG__INDEX__VECTOR_STORE__type",
                  "value": "tablestore"
              },
              {
                  "name": "PAIRAG_RAG__INDEX__VECTOR_STORE__endpoint",
                  "value": "https://d0********9c.cn-hangzhou.vpc.tablestore.aliyuncs.com"
              },
              {
                  "name": "PAIRAG_RAG__INDEX__VECTOR_STORE__instance_name",
                  "value": "d0********9c"
              },
              {
                  "name": "PAIRAG_RAG__INDEX__VECTOR_STORE__access_key_id",
                  "value": "LT********************u7"
              },
              {
                  "name": "PAIRAG_RAG__INDEX__VECTOR_STORE__access_key_secret",
                  "value": "nI**************************GF"
              },
              {
                  "name": "PAIRAG_RAG__INDEX__VECTOR_STORE__table_name",
                  "value": "pai_rag"
              },
              {
                  "name": "PAIRAG_RAG__DATA_READER__enable_image_ocr",
                  "value": "false"
              },
              {
                  "name": "PAIRAG_RAG__LLM__source",
                  "value": "PaiEas"
              },
              {
                  "name": "PAIRAG_RAG__LLM__endpoint",
                  "value": "http://127.0.0.1:8000"
              },
              {
                  "name": "PAIRAG_RAG__LLM__token",
                  "value": "abc"
              },
              {
                  "name": "PAIRAG_RAG__EMBEDDING__source",
                  "value": "HuggingFace"
              },
              {
                  "name": "PAIRAG_RAG__EMBEDDING__model_name",
                  "value": "bge-small-zh-v1.5"
              }
          ],
          "image": "eas-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai-eas/pai-rag:0.2.0",
          "port": 8001,
          "script": "pai_rag serve"
      },
      {
          "image": "eas-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai-eas/sglang:v0.4.1.post6-cu124_netcat_accelerated",
          "port": 8000,
          "script": "gpu_count=$(nvidia-smi --query-gpu=count --format=csv,noheader | wc -l); python3 -m sglang.launch_server --model-path /model_dir --host 0.0.0.0 --port 8000 --tp $gpu_count --trust-remote-code --enable-metrics --served-model-name DeepSeek-R1-Distill-Qwen-1.5B"
      }
  ],
  "labels": {
      "PAI_RAG_VERSION": "0.1_custom",
      "system_eas_deployment_type": "rag",
      "system_eas_rag_open_source_model_acc_type": "SGLang-Accelerate:Single-Node-Standard",
      "system_eas_rag_open_source_model_name": "DeepSeek-R1-Distill-Qwen-1.5B"
  },
  "metadata": {
      "cpu": 16,
      "enable_webservice": true,
      "gpu": 1,
      "instance": 1,
      "memory": 60000,
      "name": "rag_tablestore",
      "rpc": {
          "keepalive": 900000000
      },
      "shm_size": 100
  },
  "storage": [
      {
          "mount_path": "/model_dir/",
          "oss": {
              "endpoint": "cn-hangzhou-internal.oss-data-acc.aliyuncs.com",
              "path": "oss://pai-quickstart-cn-hangzhou/modelscope/models/DeepSeek-R1-Distill-Qwen-1.5B/"
          },
          "properties": {
              "resource_type": "model",
              "resource_use": "base"
          }
      }
  ]
}

Deskripsi Parameter

  • Pengaturan Database Vektor

    Gunakan variabel lingkungan untuk menambahkan pengaturan database vektor. Tabel berikut mencantumkan variabel lingkungan yang diperlukan.

    Variabel Lingkungan

    Deskripsi

    PAIRAG_RAG__INDEX__VECTOR_STORE__type

    Tipe database vektor, yang tetap pada tablestore.

    PAIRAG_RAG__INDEX__VECTOR_STORE__endpoint

    Titik akhir instance Tablestore.

    PAIRAG_RAG__INDEX__VECTOR_STORE__instance_name

    Nama instance Tablestore.

    PAIRAG_RAG__INDEX__VECTOR_STORE__access_key_id

    ID AccessKey akun Alibaba Cloud atau pengguna RAM Anda.

    PAIRAG_RAG__INDEX__VECTOR_STORE__access_key_secret

    Rahasia AccessKey akun Alibaba Cloud atau pengguna RAM Anda.

    PAIRAG_RAG__INDEX__VECTOR_STORE__table_name

    Nama tabel sumber yang menyimpan vektor.

  • Pengaturan VPC

    Gunakan cloud.networking untuk menambahkan pengaturan VPC. Jika VPC tertentu tidak diperlukan, hapus pengaturan terkait dari file konfigurasi sampel.

    Parameter

    Deskripsi

    vpc_id

    ID VPC.

    vswitch_id

    ID vSwitch.

    security_group_id

    ID grup keamanan.

Untuk informasi lebih lanjut tentang parameter lainnya dari penerapan EAS, lihat Parameter untuk Penerapan JSON.

Langkah 3: Gunakan chatbot LLM berbasis RAG

  1. Di daftar layanan, temukan layanan yang telah diterapkan dan klik View Web App di kolom Service Type. Di kotak dialog yang muncul, klik Web App.

  2. Di tab Upload dari PAI-RAG Dashboard, unggah file basis pengetahuan.

    image

    Setelah file basis pengetahuan diurai dan diunggah, Anda dapat melihat data vektor yang ditulis ke file di konsol Tablestore.

  3. Di tab Chat dari PAI-RAG Dashboard, masukkan pertanyaan dan klik Submit untuk memulai percakapan.

Untuk informasi lebih lanjut tentang debugging antarmuka web, seperti mengubah database vektor, LLM, dan tipe file yang didukung oleh basis pengetahuan, lihat Chatbot LLM Berbasis RAG.