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
| Contoh aplikasi AI terintegrasi web
|
Membangun asisten AI Anda melibatkan tiga fase utama:
Terapkan infrastruktur: Buat kluster ACK dan instal
ack-dify.Konfigurasikan model AI: Hubungkan Dify ke penyedia model (seperti Qwen) menggunakan kunci API.
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.
Gambar berikut menunjukkan detail interaksi antara layanan Dify dan kluster ACK.
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:
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.
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
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.
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.
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
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.
Pastikan plugin penyimpanan Container Storage Interface (CSI) dikonfigurasi dengan provisioning dinamis NAS.
Anda telah mengonfigurasi
kubectluntuk terhubung ke kluster Anda. Untuk petunjuknya, lihat Dapatkan kubeconfig kluster dan hubungkan ke kluster menggunakan kubectl.
Prosedur
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-difypada 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-difydan namespacedify-system. Kemudian, pilih Chart Version terbaru dan klik OK untuk menyelesaikan instalasi.
Tunggu sekitar 1 menit, lalu jalankan perintah berikut secara lokal. Jika semua pod di namespace
dify-systemberada dalam statusRunning, berartiack-difytelah berhasil diinstal.kubectl get pod -n dify-system
Fase 2: Siapkan asisten AI
Akses layanan Dify
Aktifkan akses publik untuk layanan
ack-dify.CatatanAkses publik memudahkan untuk tujuan demonstrasi. Jika Anda menerapkan layanan di lingkungan produksi, kami merekomendasikan agar Anda mengaktifkan Access Control demi keamanan data.

Pilih Network > Services dari panel navigasi kiri. Di halaman Services, atur namespace ke
dify-systemdan temukan ack-dify. Kemudian, dapatkan External IP layanan tersebut.
Daftarkan akun.
Masukkan External IP ke browser Anda dan ikuti petunjuk untuk membuat akun administrator.

Konfigurasikan model AI
Tambahkan dan konfigurasikan model AI yang diperlukan (menggunakan Qwen sebagai contoh).
Dapatkan Kunci API: Login ke Alibaba Cloud Model Studio untuk mendapatkan kunci API untuk Qwen.
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.
CatatanSetelah 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.

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

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.

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.
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.
Unggah: Di Dify, buka Knowledge > Create Knowledge > Import from file, unggah file tersebut lalu klik Next.

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.
Orkestrasi dan publikasi
Konfigurasikan prompt dan tambahkan basis pengetahuan kontekstual untuk asisten AI yang telah Anda buat.
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.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.
Publikasikan: Di pojok kanan atas halaman, klik Publish > Update untuk menyimpan konfigurasi dan menerapkan perubahan ke layanan Dify.
Gambar berikut menunjukkan prosedurnya:

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.
(Opsional) Fase 4: Integrasi produksi
Setelah asisten AI Anda siap, Anda dapat menerapkannya ke lingkungan bisnis Anda menggunakan salah satu metode berikut:
WebApp: Luncurkan portal web mandiri siap pakai.
API: Integrasikan mesin AI ke backend Anda menggunakan API RESTful Dify.
Embedding web: Sematkan widget chat ke situs web Anda yang sudah ada dengan menambahkan cuplikan JavaScript kecil.
Pengembangan ulang: Jika Anda mengembangkan produk baru dari awal atau berada dalam tahap desain prototipe produk, Anda dapat menggunakan Dify untuk dengan cepat menerbitkan situs AI. Untuk informasi lebih lanjut, lihat Kembangkan ulang berdasarkan komponen frontend.
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.
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.
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.
Dapatkan kode layanan Dify.
Seperti yang ditunjukkan pada gambar berikut, pilih metode untuk menyematkan kode yang sesuai untuk aplikasi chat ke situs web Anda.

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.
Login ke Konsol ACK. Di panel navigasi kiri, pilih , atur namespace ke default, lalu klik Create from YAML. Salin konten YAML berikut ke templat, dan perbarui
window.difyChatbotConfig,src, daniddengan kode layanan Dify yang telah Anda peroleh.Gambar berikut menunjukkan penerapan yang berhasil.

Aktifkan akses publik untuk layanan yang telah diterapkan.
Untuk keamanan data aplikasi Anda, kami merekomendasikan agar Anda juga mengaktifkan Access Control di lingkungan produksi.

Setelah selesai, Anda dapat melihat External IP layanan
web-service. Masukkan IP eksternal ini ke bilah alamat browser Anda untuk mengakses layanan web tersebut.
PentingJika 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.
Demonstrasi hasil.

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.

