Vector Retrieval Service for Milvus (Milvus) ve Dify platformunu kullanarak geri çağırma destekli üretim (RAG) sistemi oluşturun.
Genel Bilgiler
RAG ilkeleri
Büyük dil modelleri, dahili bilgi sınırlı olduğunda yanlış bilgiler üreterek "halüsinasyon" görebilir. Geri çağırma destekli üretim (RAG), modeli harici bir bilgi tabanına bağlayarak bu sorunu çözer. Verimli bir RAG sistemi güçlü bir vektör veritabanı gerektirir.
Bu konuda, vektör veritabanının yapay zekadaki "son mil" sorununu çözmedeki değerini gösteren kurumsal düzeyde bir RAG uygulaması oluşturmak için Milvus ve Dify'ın nasıl entegre edileceği anlatılmaktadır.
Dify
Dify, düşük kodlu iş akışlarına sahip açık kaynaklı bir yapay zeka uygulama geliştirme platformudur. Arka uç hizmet (BaaS) ve LLMOps'u entegre ederek yapay zeka uygulamaları oluşturma sürecini basitleştirir.
Dify, arka uç altyapısı (API hizmetleri, veri yönetimi) sağlayarak geliştiricilerin sıfırdan inşa etmesine gerek kalmaz. Görsel istem düzenleme arayüzü, istem mühendisliğini kolaylaştırır. Yerleşik RAG motoru, kurumsal belgeler ve veritabanları gibi özel bilgi tabanlarına bağlanarak büyük dil modelinin (LLM) alanına özgü, doğru ve izlenebilir yanıtlar üretmesini sağlar; böylece halüsinasyonlar azaltılır.
Ön Koşullar
Bir Milvus örneği oluşturun. Milvus örneği oluşturun.
Alibaba Cloud Model Studio'yu etkinleştirin ve bir API anahtarı alın. Uygulama Kimliği ve Çalışma Alanı Kimliği alın.
Docker ve Docker Compose'u yükleyin. Docker ve Docker Compose'u yükleyin ve kullanın.
Yordam
1. Adım: Dify'ı yükleyin
-
Açık kaynaklı Dify projesini GitHub'dan yerel makinenize klonlayın.
git clone https://github.com/langgenius/dify.git -
Dağıtım dizinine gidin ve .env yapılandırma dosyasını yedekleyin.
cd dify/docker/ cp .env.example .env -
.env dosyasındaki aşağıdaki ayarları değiştirin.
# Vector storage engine configuration VECTOR_STORE=milvus # Specifies Milvus as the vector storage engine # Milvus connection information MILVUS_URI=http://YOUR_ALIYUN_MILVUS_ENDPOINT:19530 MILVUS_USER=YOUR_ALIYUN_MILVUS_USER MILVUS_PASSWORD=YOUR_ALIYUN_MILVUS_PASSWORDYer tutucu değerleri gerçek bilgilerinizle değiştirin.
Parametre
Açıklama
MILVUS_URIMilvus örneğinin uç noktası. Biçim şöyledir:
http://<public IP address>:<port>.-
<public IP address>: Milvus örneğinizin Details sayfasında bulunur. -
<port>: Milvus örneğinizin Details sayfasında bulunur. Varsayılan değer 19530'dur.
MILVUS_USERMilvus örneğini oluştururken belirlediğiniz kullanıcı adı.
MILVUS_PASSWORDMilvus örneğini oluştururken belirlediğiniz kullanıcı parolası.
-
-
Dify'ı başlatın.
docker compose up -d --build[root@xxx /docker]# docker compose up -d --build [+] Running 15/15 ✔ Network docker_default Created ✔ Network docker_milvus Created ✔ Network docker_ssrf_proxy_network Created ✔ Container docker-db-1 Healthy ✔ Container docker-redis-1 Started ✔ Container docker-sandbox-1 Started ✔ Container milvus-etcd Started ✔ Container milvus-minio Started ✔ Container docker-ssrf_proxy-1 Started ✔ Container docker-web-1 Started ✔ Container docker-plugin_daemon-1 Started ✔ Container docker-worker-1 Started ✔ Container docker-api-1 Started ✔ Container milvus-standalone Started ✔ Container docker-nginx-1 Started -
Tarayıcıda
http://127.0.0.1/adresini açarak Dify'a erişin. Yönetici hesabını ve parolasını ayarlayıp giriş yapın.NotDify uzak bir sunucuda (ECS örneği veya sanal makine) çalışıyorsa,
127.0.0.1yerine sunucunun genel IP adresini veya alan adını kullanın. Sunucunun herkese açık şekilde erişilebilir olduğundan emin olun.Email, Username ve Password (en az 8 karakter, hem harf hem rakam içeren) bilgilerini girin ve Set up seçeneğine tıklayın.
2. Adım: Modelleri yapılandırın
Sağ üst köşedeki profil resminize tıklayın ve Settings seçeneğini seçin.
Sol gezinme bölmesinde Model Provider seçeneğini seçin. Qwen'i bulup Install'a tıklayın.
Model yüklendikten sonra modeli seçin ve Alibaba Cloud Model Studio'dan aldığınız API anahtarını girin.
System Model Settings panelinde System Inference Model, Embedding Model, Rerank Model, speech-to-text model ve text-to-speech model öğelerini yapılandırın, ardından Save seçeneğine tıklayın.
3. Adım: Bir bilgi tabanı oluşturun
Sayfanın üst kısmında Knowledge seçeneğine, ardından Create Knowledge seçeneğine tıklayın.
Veri kaynağı olarak Import Existing Text seçeneğini belirleyin. Örnek veriyi indirin (README.md) ve yükleyin.
-
Parametreleri gerektiği gibi değiştirin ve Save & Process seçeneğine tıklayın.
Anahtar parametreler için varsayılan değerleri kullanın: dizin oluşturma yöntemi High quality, getirme ayarı vector retrieval, Rerank Model gte-rerank etkin, Top K 3, Skor Eşiği 0,5.
Bu örnekte aşağıdaki parametreleri değiştirin:
Maximum chunk length: 1024 olarak ayarlayın.
Embedding Model: text-embedding-v1 seçeneğini belirleyin.
İşlem tamamlandığında bilgi tabanı oluşturulur.
Özet, ayarları doğrular: parçalama modu Custom, metin ön işleme ardışık boşlukları/yeni satırları/sekmeleri değiştirir, dizin oluşturma yöntemi High quality, getirme ayarı vector retrieval. Ayrıntıları görüntülemek için Go to Documentation seçeneğine tıklayın.
4. Adım: Vektör getirmeyi doğrulayın
Vector Retrieval Service for Milvus konsolu üzerinde oturum açın. Milvus örneğinizi seçin ve sağ üst köşedeki Attu Manager'a tıklayın. Attu sayfasında ilgili koleksiyonun oluşturulduğunu doğrulayın. Attu aracı yönetimi.
5. Adım: RAG performansını doğrulayın
Sayfanın üst kısmında Studio seçeneğine, ardından Create from Template seçeneğine tıklayın.
Knowledge Retrieval + Chatbot şablonunu aratıp seçin.
İletişim kutusunda Create seçeneğine tıklayın.
-
Knowledge Retrieval düğümünü seçin ve bilgi tabanını önceki adımda oluşturduğunuz bilgi tabanı olarak ayarlayın.
İş akışı düğümleri şu sırayla bağlar: START → KNOWLEDGE RETRIEVAL → LLM (qwen-max) → ANSWER. Sorgu değişkeni
sys.queryşeklindedir. LLM düğümünü seçin ve modeli qwen-max olarak ayarlayın.
Sağ üst köşede Publish seçeneğine, ardından Publish Update seçeneğine tıklayın.
Test sayfasını açmak için Run seçeneğine tıklayın. Yanıtı doğrulamak için bilgi tabanı içeriğiyle ilgili bir soru girin.