全部产品
Search
文档中心

:Bangun asisten AI tanya jawab dengan cepat menggunakan Dify

更新时间:Jan 14, 2026

Dify adalah platform pengembangan aplikasi Large Language Model (LLM) open-source yang menggabungkan Backend-as-a-Service (BaaS) dengan LLMOps. Dengan menerapkan Dify pada Alibaba Cloud Container Service for Kubernetes (ACK), Anda dapat mengintegrasikan basis pengetahuan propietari dengan LLM untuk membuat solusi AI yang sangat dikustomisasi. ACK menyediakan infrastruktur yang dapat diskalakan sesuai kebutuhan bisnis Anda, memastikan ketersediaan tinggi dan ekspansi yang mulus.

Ikhtisar solusi

Contoh aplikasi AI kustom Dify

2024-08-21_16-01-26 (1)

Contoh aplikasi AI terintegrasi web

2024-08-23_14-14-02 (1)

Membangun asisten AI Anda melibatkan tiga fase utama:

  1. Terapkan infrastruktur: Buat kluster ACK dan instal ack-dify.

  2. Konfigurasikan model AI: Hubungkan Dify ke penyedia model (seperti Qwen) menggunakan kunci API.

  3. Kustomisasi dengan Retrieval-Augmented Generation (RAG): Unggah dokumen Anda sendiri untuk membuat basis pengetahuan, sehingga AI dapat menjawab pertanyaan profesional yang spesifik pada domain tertentu.

image

Gambar berikut menunjukkan detail interaksi antara layanan Dify dan kluster ACK.

image

Pengenalan Dify

Dify menyediakan tumpukan teknologi komprehensif yang dirancang untuk menyederhanakan pengembangan aplikasi LLM. Dengan menyediakan infrastruktur siap pakai dan kemampuan LLMOps terintegrasi, Dify menghilangkan kebutuhan bagi pengembang untuk "menciptakan roda baru", memungkinkan mereka fokus pada inovasi inti dan logika bisnis spesifik.

Gambar berikut menunjukkan arsitektur teknisnya:

image

Komponen utama arsitektur Dify:

  • Komponen inti tingkat enterprise: Dify mengintegrasikan blok bangunan esensial untuk pengembangan aplikasi LLM, termasuk:

    • Kompatibilitas multi-model: Integrasi mulus dengan berbagai LLM utama.

    • Rekayasa prompt intuitif: Antarmuka ramah pengguna untuk merancang, menguji, dan mengoptimalkan prompt.

    • RAG berkinerja tinggi: Sistem RAG kuat untuk menghubungkan LLM ke basis pengetahuan pribadi.

    • Kerangka kerja agen yang dapat diperluas: Dukungan untuk membangun agen otonom dengan perangkat alat yang dapat dikustomisasi.

  • Orkestrasi visual dan LLMOps: Dify menyederhanakan siklus hidup aplikasi melalui:

    • Alur kerja visual: Kanvas low-code untuk mengatur logika AI kompleks dan rantai prompt.

    • Operasi yang disederhanakan: Manajemen terpusat untuk pemantauan aplikasi, pelacakan kinerja, dan pemeliharaan dataset.

    • Peningkatan berkelanjutan: Alat bawaan untuk optimasi iteratif, memastikan output model berkualitas tinggi di lingkungan produksi.

  • Templat siap pakai dan skalabilitas: Untuk mempercepat waktu ke pasar, Dify menyediakan:

    • Templat out-of-the-box: Kerangka kerja siap pakai untuk kasus penggunaan AI umum (seperti chatbot layanan pelanggan dan analisis dokumen).

    • Skalasi elastis: Arsitektur cloud-native yang mendukung penskalaan sesuai permintaan untuk memenuhi kebutuhan bisnis yang terus berkembang.

Dengan menggabungkan fleksibilitas dan kemudahan penggunaan, Dify memberdayakan pengembang untuk dengan cepat membangun, menerapkan, dan memelihara aplikasi AI generatif yang canggih.

Tabel berikut merangkum fitur inti Dify. Anda dapat menggunakannya sesuai kebutuhan pribadi atau perusahaan.

Fitur

Deskripsi

LLMOps komprehensif

Untuk aplikasi AI yang telah diterapkan, Dify menyediakan dukungan O&M lengkap, termasuk pemantauan waktu nyata terhadap log aplikasi dan metrik kinerja, serta optimasi berkelanjutan terhadap prompt, dataset, dan model berdasarkan data produksi dan umpan balik pengguna.

Mesin RAG

Dify menyediakan pipeline RAG end-to-end yang mendukung seluruh proses dari ingestion dokumen hingga pengambilan informasi. Engine ini dapat memproses format dokumen umum seperti PDF dan PPT, menyederhanakan persiapan data.

Agen

Dify memungkinkan pengembang mendefinisikan Agen berdasarkan pemanggilan fungsi LLM atau paradigma ReAct dan menambahkan alat bawaan atau kustom ke dalamnya. Platform ini memiliki lebih dari 50 alat bawaan.

Orkestrasi alur kerja

Dify menyediakan kanvas visual yang memungkinkan pengembang dengan cepat membangun alur kerja AI kompleks dengan menyeret dan menghubungkan berbagai komponen tanpa perlu menulis kode rumit, sehingga secara signifikan menurunkan ambang pengembangan.

Observabilitas

Menyediakan kemampuan untuk melacak dan mengevaluasi kualitas serta biaya aplikasi LLM. Melalui dasbor pemantauannya, Anda dapat dengan mudah mengonfigurasi dan mengaktifkan fitur-fitur ini untuk meningkatkan observabilitas aplikasi LLM.

Fitur enterprise (SSO/kontrol akses)

Organisasi enterprise dapat mengurangi risiko kebocoran informasi dan kerusakan data, memastikan keamanan informasi dan kelangsungan bisnis.

Fase 1: Instal ack-dify

Penerapan satu klik (direkomendasikan untuk pemula)

Jika Anda baru mengenal ACK, gunakan Resource Orchestration Service (ROS) untuk mengotomatiskan penyiapan lingkungan.

Penting

Pastikan bahwa layanan ACK telah diaktifkan dan diberi otorisasi. Untuk informasi lebih lanjut, lihat Buat kluster ACK yang dikelola dengan cepat.

Solusi ini mencakup infrastruktur dan layanan Alibaba Cloud berikut:

Infrastruktur dan layanan Alibaba Cloud

Deskripsi

1 virtual private cloud (VPC)

Membangun jaringan pribadi di cloud untuk sumber daya cloud seperti instans Elastic Compute Service (ECS) dan kluster ACK yang dikelola.

2 vSwitch

Menghubungkan sumber daya seperti instans ECS dan kluster ACK ke jaringan yang sama untuk memungkinkan komunikasi di antara mereka serta menyediakan segmentasi dan isolasi jaringan dasar.

1 security group

Digunakan untuk membatasi aturan jaringan inbound dan outbound untuk instans ECS di VPC.

1 instans Classic Load Balancer (CLB)

Digunakan untuk mengakses platform Dify menggunakan Alamat IP publik.

1 sistem file NAS

Digunakan oleh layanan internal platform Dify (api dan worker) untuk menyimpan data.

1 kluster ACK yang dikelola

Digunakan untuk menerapkan platform Dify. Platform Dify menjalankan banyak kontainer. Kami merekomendasikan Anda memilih setidaknya satu node dengan spesifikasi 8 vCPU dan 16 GiB, seperti ecs.u1-c1m2.2xlarge. Jika tidak, Anda mungkin menghadapi kekurangan sumber daya.

Prosedur

  1. Gunakan templat satu klik di konsol ROS. Pertama, pilih wilayah, misalnya, China (Hangzhou). Kemudian, ikuti templat ROS untuk mengatur informasi penting, seperti ID zona ketersediaan vSwitch primer dan sekunder, tipe instans node ACK, kata sandi instans ACK, dan konfirmasi keamanan. Biarkan pengaturan lainnya pada nilai default. Setelah penyiapan selesai, klik Next: Check and Confirm.

  2. Tunggu sekitar 10 menit hingga kluster dibuat. Setelah pembuatan selesai, login ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters, lalu klik nama kluster yang dibuat untuk membuka halaman detailnya. Di panel navigasi sebelah kiri, pilih Workloads > Pods. Atur namespace ke dify-system untuk memverifikasi bahwa sumber daya ack-dify telah dibuat di kluster.

Setelah ack-dify diinstal, lanjutkan ke langkah berikutnya.

Catatan

Jika Anda menginstal ack-dify menggunakan penerapan satu klik ROS, akses publik untuk ack-dify telah diaktifkan. Lewati langkah-langkah di Aktifkan akses publik untuk layanan ack-dify.

Penerapan manual (untuk pengguna berpengalaman)

Prasyarat

  1. Anda memiliki kluster ACK Pro yang menjalankan Kubernetes versi 1.22 atau lebih baru dengan setidaknya 2 vCPU dan 4 GiB memori yang tersedia. Untuk petunjuknya, lihat Buat kluster ACK yang dikelola dan Tingkatkan kluster.

  2. Pastikan plugin penyimpanan Container Storage Interface (CSI) dikonfigurasi dengan provisioning dinamis NAS.

    Konfigurasikan plugin penyimpanan CSI

    Saat membuat kluster, pilih opsi berikut.

    image

  3. Anda telah mengonfigurasi kubectl untuk terhubung ke kluster Anda. Untuk petunjuknya, lihat Dapatkan kubeconfig kluster dan hubungkan ke kluster menggunakan kubectl.

Prosedur

  1. Login ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters, lalu klik nama kluster target untuk membuka halaman detailnya. Seperti yang ditunjukkan pada gambar berikut, klik item bernomor secara berurutan untuk menginstal ack-dify pada kluster target.

    Anda dapat menggunakan Application Name dan Namespace default. Setelah Anda mengklik ⑥ Next, kotak dialog konfirmasi akan muncul. Klik Yes untuk menggunakan nama aplikasi default ack-dify dan namespace dify-system. Kemudian, pilih Chart Version terbaru dan klik OK untuk menyelesaikan instalasi.

    image

  2. Tunggu sekitar 1 menit, lalu jalankan perintah berikut secara lokal. Jika semua pod di namespace dify-system berada dalam status Running, berarti ack-dify telah berhasil diinstal.

    kubectl get pod -n dify-system

Fase 2: Siapkan asisten AI

Akses layanan Dify

  1. Aktifkan akses publik untuk layanan ack-dify.

    Catatan

    Akses publik memudahkan untuk tujuan demonstrasi. Jika Anda menerapkan layanan di lingkungan produksi, kami merekomendasikan agar Anda mengaktifkan Access Control demi keamanan data.

    image

  2. Pilih Network > Services dari panel navigasi kiri. Di halaman Services, atur namespace ke dify-system dan temukan ack-dify. Kemudian, dapatkan External IP layanan tersebut.

    image

  3. Daftarkan akun.

    Masukkan External IP ke browser Anda dan ikuti petunjuk untuk membuat akun administrator.

    image

Konfigurasikan model AI

Tambahkan dan konfigurasikan model AI yang diperlukan (menggunakan Qwen sebagai contoh).

  1. Dapatkan Kunci API: Login ke Alibaba Cloud Model Studio untuk mendapatkan kunci API untuk Qwen.

  2. Integrasikan dengan Dify: Login ke platform Dify. Buka Settings > Model Provider, instal dan atur plugin Tongyi, tempel kunci API Anda, lalu simpan.

    Gambar berikut menunjukkan prosesnya.

    Catatan

    Setelah kuota gratis dari Qwen habis, Anda akan ditagih per token. Metode ini menawarkan biaya investasi awal yang jauh lebih rendah dibandingkan menerapkan model besar Anda sendiri.

    image

  3. Buat aplikasi: Buka Studio > Create from Blank, masukkan Name dan Description untuk asisten Anda, dan pertahankan nilai default untuk parameter lainnya.

    image

2.3. Verifikasi asisten AI

Masukkan pertanyaan di halaman untuk melihat efek konfigurasi asisten AI tanya jawab Anda. Karena model dalam contoh ini adalah chatbot tujuan umum, ia hanya dapat melakukan percakapan sederhana dan belum dapat menjawab pertanyaan profesional terkait Dify.

image

Fase 3: Kustomisasi basis pengetahuan (RAG)

Buat basis pengetahuan

LLM standar mungkin tidak mengetahui data bisnis spesifik Anda. Gunakan fitur RAG untuk mengatasi hal ini.

  1. Persiapkan data: Konsolidasikan dokumen Anda ke dalam format yang didukung (PDF, TXT, Markdown). Untuk menyederhanakan langkah-langkahnya, contoh ini menyediakan file korpus dify_doc.md. Anda hanya perlu mengikuti langkah-langkah di bawah ini untuk membuat dan mengunggah basis pengetahuan khusus.

  2. Unggah: Di Dify, buka Knowledge > Create Knowledge > Import from file, unggah file tersebut lalu klik Next.

    image

  3. Proses: Gunakan pengaturan pembersihan dan segmentasi otomatis default. Dify akan mengindeks konten untuk pencarian vektor.

Untuk memahami bagaimana file korpus di atas diorganisasi menjadi file .md, perluas untuk melihat detailnya.

Cara menyiapkan basis pengetahuan korpus Dify

Dify mendukung pengunggahan satu file dengan format yang didukung termasuk TXT, HTML, Markdown, dan PDF.

Sebelum memulai pelatihan, Anda perlu menyiapkan korpus. Contoh ini menggunakan dokumentasi Dify, yang dikelola dalam repositori Git dengan format Markdown. Cukup tarik dokumen tersebut secara lokal dan gabungkan serangkaian file .md di repositori menjadi satu file. Berikut ini contoh umumnya:

  1. Klon repositori kode. Jalankan perintah Git untuk mengklon repositori kode Dify yang sesuai.

    git clone https://github.com/langgenius/dify-docs.git
  2. Atur korpus. Untuk memudahkan vektorisasi korpus selanjutnya, gunakan skrip Python berikut untuk menggabungkan dan mengatur file .md di repositori kode Dify yang diperoleh.

    from langchain_text_splitters import MarkdownHeaderTextSplitter, RecursiveCharacterTextSplitter
    import os
    
    
    def merge_markdown_files_from_directory(root_dir, output_file):
        """
        Fungsi merge_markdown_files_from_directory
          1. Fungsi: Menggabungkan konten semua file .md dalam direktori tertentu ke dalam satu file output.
          2. Parameter:
            root_dir: Path ke direktori root yang ditentukan.
            output_file: Path ke file output.
          3. Implementasi:
            Menggunakan os.walk untuk menelusuri direktori root_dir beserta subdirektorinya.
            Memeriksa apakah setiap file berakhiran .md. Jika ya, path-nya ditambahkan ke daftar markdown_files.
            Membuka output_file dan menulis konten setiap file dari markdown_files ke dalamnya.
        """
        markdown_files = []
        for root, dirs, files in os.walk(root_dir):
            for file in files:
                if file.endswith('.md'):
                    markdown_files.append(os.path.join(root, file))
    
        with open(output_file, 'w', encoding='utf-8') as outfile:
            for file_path in markdown_files:
                with open(file_path, 'r', encoding='utf-8') as infile:
                    outfile.write(infile.read())
                    # outfile.write('\n\n')
    
                   
    def process_and_write_markdown(file_path: str, headers_to_split_on: list, chunk_size: int, chunk_overlap: int, output_file: str):
        """
        Fungsi process_and_write_markdown
          1. Fungsi:
            Memproses konten satu file Markdown, membagi teks berdasarkan header dan aturan chunking yang ditentukan, lalu menulis hasilnya ke file baru.
          2. Parameter:
            file_path: Path file Markdown input.
            headers_to_split_on: Daftar yang berisi tupel level header, seperti [("#", "Header 1"), ("##", "Header 2")].
            chunk_size: Panjang maksimum setiap chunk teks.
            chunk_overlap: Panjang overlap antar chunk teks.
            output_file: Path file output.
          3. Langkah implementasi:
            Membaca konten file Markdown dari file_path.
            Membuat objek MarkdownHeaderTextSplitter untuk membagi konten Markdown berdasarkan headers_to_split_on.
            Membuat objek RecursiveCharacterTextSplitter untuk membagi teks lebih lanjut berdasarkan chunk_size dan chunk_overlap.
            Membuka output_file dan menulis metadata serta konten setiap chunk teks yang terbagi ke dalam file tersebut.
        """
        try:
            # Membaca konten file Markdown dari file_path.
            with open(file_path, "r", encoding="utf-8") as doc:
                markdown_content = doc.read()
    
            # Membuat objek MarkdownHeaderTextSplitter untuk membagi konten Markdown berdasarkan headers_to_split_on.
            splitter = MarkdownHeaderTextSplitter(headers_to_split_on=headers_to_split_on, strip_headers=True)
            md_splits = splitter.split_text(markdown_content)
    
            # Membuat objek RecursiveCharacterTextSplitter untuk membagi teks lebih lanjut berdasarkan chunk_size dan chunk_overlap.
            text_splitter = RecursiveCharacterTextSplitter(chunk_size=chunk_size, chunk_overlap=chunk_overlap)
            splits = text_splitter.split_documents(md_splits)
    
            # Membuka output_file dan menulis metadata serta konten setiap chunk teks yang terbagi ke dalam file tersebut.
            with open(output_file, "w") as f:
                for line in splits:
                    f.write(str(line.metadata))
                    f.write("\n")
                    f.write(line.page_content)
                    f.write("\n\n\n\n")
    
        except FileNotFoundError:
            raise FileNotFoundError(f"File {file_path} tidak ditemukan.")
    
    
    # Contoh
    if __name__ == "__main__":
        """
         1. Atur parameter:
          root_directory: Path ke direktori root yang ditentukan.
          merged_file_path: Path untuk file Markdown yang digabungkan.
          output_file: Path untuk file output yang telah diproses.
          headers_to_split_on: Daftar level header.
          chunk_size dan chunk_overlap: Ukuran dan panjang overlap untuk chunk teks.
        2. Langkah eksekusi:
          Panggil merge_markdown_files_from_directory untuk menggabungkan semua file .md ke merged_file_path.
          Panggil process_and_write_markdown untuk memproses file yang digabungkan dan menulis hasilnya ke output_file.
          Langkah-langkah ini menyelesaikan proses skrip, dari penggabungan beberapa file Markdown hingga pemrosesan akhir dan output.
        """
        
        # Path ke folder yang akan diproses
        root_directory = 'path/to/dify-docs/en'
        # Path untuk file yang digabungkan
        merged_file_path = './merged_markdown.md'
        # Path untuk file yang telah dibersihkan
        output_file = './dify_doc.md'
        
        merge_markdown_files_from_directory(root_directory, merged_file_path)
        headers_to_split_on = [
            ("#", "Header 1"),
            ("##", "Header 2"),
            ("###", "Header 3"),
        ]
        chunk_size = 500
        chunk_overlap = 50
        process_and_write_markdown(merged_file_path, headers_to_split_on, chunk_size, chunk_overlap, output_file)
    
  3. Unggah file korpus yang telah disiapkan dify_doc.md ke basis pengetahuan.

Orkestrasi dan publikasi

Konfigurasikan prompt dan tambahkan basis pengetahuan kontekstual untuk asisten AI yang telah Anda buat.

  1. Rekayasa prompt: Di halaman Orchestrate, tambahkan Instructions untuk mendefinisikan persona AI, memberikan instruksi dan batasan kepada AI guna meningkatkan kinerja dan akurasi respons.
    Contoh:

    You will act as Dify's AI assistant, dedicated to answering customers' questions about Dify products and their features. Your responses should be based on the existing knowledge base to ensure accuracy. If a question is beyond your knowledge, please honestly inform them that you do not know the answer, to maintain the integrity of the information. Please communicate in a friendly and warm tone, and feel free to use emoticons appropriately to enhance the interactive experience.
  2. Tambahkan konteks: Klik Add di area Context dan ikuti petunjuk di layar untuk mengonfigurasi basis pengetahuan khusus untuk asisten AI tanya jawab. Hal ini memungkinkan asisten memberikan jawaban yang akurat dan profesional.

  3. Publikasikan: Di pojok kanan atas halaman, klik Publish > Update untuk menyimpan konfigurasi dan menerapkan perubahan ke layanan Dify.

Gambar berikut menunjukkan prosedurnya:

image

Verifikasi hasil

Dibandingkan dengan chatbot tujuan umum, asisten AI yang dikonfigurasi dengan basis pengetahuan khusus dapat memberikan informasi yang lebih profesional dan akurat menggunakan pengetahuan dari bidang terkait.image

(Opsional) Fase 4: Integrasi produksi

Setelah asisten AI Anda siap, Anda dapat menerapkannya ke lingkungan bisnis Anda menggunakan salah satu metode berikut:

Contoh: Sematkan aplikasi AI ke situs web

Contoh berikut hanya untuk tujuan demonstrasi. Untuk keamanan data aplikasi Anda, kami merekomendasikan agar Anda juga mengaktifkan Access Control di lingkungan produksi.

  1. Aktifkan akses publik untuk layanan ack-dify. Masukkan alamat IP eksternal ke bilah alamat browser Anda untuk mengakses layanan Dify. Untuk petunjuknya, lihat Akses layanan Dify.

    image

  2. Bangun aplikasi web sederhana dengan cepat di kluster ACK Anda untuk menguji asisten AI tanya jawab Anda.

    Contoh berikut menunjukkan cara menerapkan aplikasi web contoh di kluster ACK Anda, ke dalamnya Anda dapat menyematkan aplikasi LLM dari Dify.

    1. Dapatkan kode layanan Dify.

      Seperti yang ditunjukkan pada gambar berikut, pilih metode untuk menyematkan kode yang sesuai untuk aplikasi chat ke situs web Anda.image

    2. Di kluster, buat Deployment untuk menjalankan aplikasi web Anda dan buat Service untuk mengekspos aplikasi tersebut.

      Manifes YAML berikut menerapkan server NGINX dengan HTML statis.

      1. Login ke Konsol ACK. Di panel navigasi kiri, pilih Configurations > ConfigMaps, atur namespace ke default, lalu klik Create from YAML. Salin konten YAML berikut ke templat, dan perbarui window.difyChatbotConfigsrc, dan id dengan kode layanan Dify yang telah Anda peroleh.

        Perluas untuk melihat konten YAML

        apiVersion: apps/v1
        kind: Deployment
        metadata:
          name: web-deployment
        spec:
          replicas: 2
          selector:
            matchLabels:
              app: web
          template:
            metadata:
              labels:
                app: web
            spec:
              containers:
              - name: web
                image: registry.openanolis.cn/openanolis/nginx:1.14.1-8.6
                ports:
                - containerPort: 80
                volumeMounts:
                - name: web-content
                  mountPath: /usr/share/nginx/html
              volumes:
              - name: web-content
                configMap:
                  name: web-config
          
        
        ---
        apiVersion: v1
        kind: Service
        metadata:
          name: web-service
        spec:
          selector:
            app: web
          ports:
            - protocol: TCP
              port: 80
              targetPort: 80
          type: LoadBalancer
        
        
        ---
        apiVersion: v1
        kind: ConfigMap
        metadata:
          name: web-config
        data:
          index.html: |
            <!DOCTYPE html>
            <html lang="en">
            <head>
                <meta charset="UTF-8">
                <meta name="viewport" content="width=device-width, initial-scale=1.0">
                <title>The simplest website service</title>
                <style>
                    #dify-chatbot-bubble-button {
                        background-color: #1C64F2 !important;
                    }
                </style>
            </head>
            <body>
                <h1>Welcome to my website!</h1>
            
            
                <script>
                 window.difyChatbotConfig = {
                  token: 'W1b8mRL******yiD6',
                  baseUrl: 'http://8.154.XX.XX'
                 }
                </script>
                <script
                 src="http://8.154.XX.XX/embed.min.js"
                 id="W1b8mRL******yiD6"
                 defer>
                </script>
                <style>
                  #dify-chatbot-bubble-button {
                    background-color: #1C64F2 !important;
                  }
                </style>
        
        
        
            </body>
            </html>
      2. Gambar berikut menunjukkan penerapan yang berhasil.

        image

      3. Aktifkan akses publik untuk layanan yang telah diterapkan.

        Untuk keamanan data aplikasi Anda, kami merekomendasikan agar Anda juga mengaktifkan Access Control di lingkungan produksi.

        image

        Setelah selesai, Anda dapat melihat External IP layanan web-service. Masukkan IP eksternal ini ke bilah alamat browser Anda untuk mengakses layanan web tersebut.

        image

        Penting
        • Jika Anda ingin perangkat lain mengakses layanan ini, pastikan firewall atau security group kluster Anda diatur untuk mengizinkan traffic melalui port 80. Untuk petunjuknya, lihat Tambahkan aturan security group.

        • Pastikan kode Anda dan kode pihak ketiga aman untuk menghindari potensi skrip lintas situs (XSS) atau penyematan kode berbahaya. Topik ini menyediakan contoh dasar untuk demonstrasi. Anda dapat memperluas dan memodifikasinya sesuai kebutuhan.

      4. Demonstrasi hasil.

        2024-08-23_14-14-02 (1)

Pemecahan masalah

  • Masalah: Pod berada dalam status Pending.

    Solusi: Biasanya disebabkan oleh kurangnya kelas penyimpanan atau sumber daya yang tidak mencukupi. Periksa apakah kluster kekurangan dependensi Persistent Volume Claim (PVC) untuk ack-dify. Buat Container Network File System (CNFS) default dan StorageClass NAS yang sesuai untuk kluster tersebut. Untuk petunjuk spesifik, lihat Kelola sistem file NAS menggunakan CNFS (direkomendasikan). Untuk memecahkan masalah pengecualian pod, lihat Pecahkan masalah pengecualian pod.

  • Masalah: Resolusi DNS gagal.

    Solusi: Pastikan pod dapat mengakses CoreDNS di dalam kluster, terutama jika menggunakan pengaturan hostNetwork kustom.

  • Masalah: Respons asisten AI tidak akurat.

    Solusi: Perbaiki prompt sistem Anda atau tingkatkan kualitas segmen basis pengetahuan Anda (chunking).

Biaya dan pemeliharaan

  • Penagihan: Anda akan dikenai biaya untuk biaya manajemen ACK dan sumber daya dasar, termasuk ECS, NAS, CLB, dan elastic IP addresses (EIPs). Penggunaan model ditagih berdasarkan token oleh penyedia model. Untuk biaya manajemen kluster dan biaya sumber daya, lihat Ikhtisar penagihan.

  • Keamanan: Putar secara berkala kata sandi admin Dify dan kunci API Anda. Gunakan peran RAM untuk kontrol akses detail halus di Alibaba Cloud.

Penafian

Dify di ACK adalah solusi penerapan Helm yang menyesuaikan proyek Dify open-source untuk lingkungan Alibaba Cloud ACK guna memungkinkan penerapan cepat. ACK tidak menjamin kinerja aplikasi Dify atau kompatibilitasnya dengan komponen ekosistem lainnya, seperti plugin dan database. ACK tidak menyediakan layanan komersial, seperti kompensasi atau ganti rugi, untuk kerugian bisnis apa pun yang disebabkan oleh cacat dalam Dify atau komponen ekosistemnya. Kami merekomendasikan agar Anda mengikuti pembaruan dari komunitas open-source dan secara proaktif memperbaiki masalah dalam perangkat lunak open-source untuk memastikan stabilitas dan keamanan Dify.