Dieser Artikel beschreibt die Installation von Dify über Docker und die anschließende Integration der Ollama und XInference sowie die Verwendung der Dify Bauen Sie schnell eine wissensbasierte Quiz-Anwendung auf.
- I. Einführung in Dify
- Dify Installation
- III. dify fügt Ollama Model Q&A hinzu
- IV. wissensbasiertes Quiz von Dify
- V. Links zur Dokumentation
I. Einführung in Dify
Dify ist eine Open-Source-Plattform zur Entwicklung von Large Language Modelling (LLM)-Anwendungen, die Entwicklern helfen soll, generative KI-Anwendungen schnell zu erstellen und einzusetzen. Hier sind die wichtigsten Merkmale und Funktionen von Dify [1]:
- Fusion von Backend as Service und LLMOps-Konzepten Dify kombiniert die Konzepte von Backend as Service und LLMOps, um Entwicklern die schnelle Erstellung von generativen KI-Anwendungen in Produktionsqualität zu ermöglichen.
- Unterstützung für mehrere Modelle Dify unterstützt Hunderte von proprietären und Open-Source-LLM-Modellen, darunter GPT, Mistral, Llama3 und andere, und integriert nahtlos Modelle von verschiedenen Inferenzanbietern und selbst gehosteten Lösungen.
- Intuitive Prompt-Orchestrierungsschnittstelle Dify bietet eine intuitive Prompt-IDE für das Schreiben von Prompts, den Vergleich der Modellleistung und das Hinzufügen zusätzlicher Funktionen wie die Sprachkonvertierung für Chat-basierte Anwendungen.
- Hochwertiger RAG-Motor Dify hat eine breite Palette von RAG Die Funktionalität deckt alles von der Dokumentenerfassung bis zum Abruf ab und unterstützt die Textextraktion aus gängigen Dokumentenformaten wie PDF, PPT und anderen.
- Integration des Agentenrahmens : Der Benutzer kann den LLM-Funktionsaufruf oder die ReAct Definieren Sie Agenten und fügen Sie ihnen vorgefertigte oder benutzerdefinierte Tools hinzu: Dify bietet mehr als 50 integrierte Tools wie Google Search, DELL-E, Stable Diffusion und WolframAlpha.
- Flexible Ablauforganisation Dify bietet eine leistungsstarke visuelle Oberfläche zum Erstellen und Testen robuster KI-Workflows, mit der Entwickler ihre KI-Prozesse intuitiv gestalten und optimieren können.
- Umfassende Überwachungs- und Analysetools Dify bietet Tools zur Überwachung und Analyse von Anwendungsprotokollen und -leistung, und Entwickler können Hinweise, Datensätze und Modelle auf der Grundlage von Produktionsdaten und Kommentaren kontinuierlich verbessern.
- Backend als Dienstleistung Alle Funktionen von Dify sind mit einer API ausgestattet, so dass es einfach ist, Dify in Ihre eigene Geschäftslogik zu integrieren.
Dify Installation
Kopieren Sie den Dify-Github-Code lokal [2].
git clone https://github.com/langgenius/dify.git
Wechseln Sie in das Docker-Verzeichnis des Dify-Quellcodes und kopieren Sie die Umgebungsvariablen.
cd dify/docker
cp .env.example .env
Installieren Sie die Anwendung über docker compose.
docker compose up -d
Geben Sie den ollama-Container ein und starten Sie dasqwen2:7b
Modelle.
root@ip-172-31-30-167:~/dify/docker# docker pull ollama/ollama
root@ip-172-31-83-158:~/dify/docker# docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always -e OLLAMA_KEEP_ALIVE=-1 ollama/ollama
root@ip-172-31-83-158:~/dify/docker# docker exec -it ollama bash
root@b094349fc98c:/# ollama run qwen2:7b
III. dify fügt Ollama Model Q&A hinzu
Melden Sie sich über die öffentliche IP-Adresse von EC2 und Port 80 auf der Dify-Homepage an und erstellen Sie ein Administratorkonto.
Melden Sie sich über das Administratorkonto an.
Klicken Sie auf Benutzer - Einstellungen.
Fügen Sie das Modell Ollama hinzu.
erhöhen.qwen2:7b
Modell, da Ollama lokal gestartet wird, setzen Sie die URL auf die lokale IP-Adresse und den Port auf die114341
(math.) Gattung
"qwen2-7b-instruct unterstützt 131.072 Token von Kontexten unter Verwendung von YARN, einer Technik für die Extrapolation von Modelllängen, und um die normale Verwendung und die korrekte Ausgabe zu gewährleisten, wird empfohlen, dass die API die Benutzereingabe auf 128.000 und die Ausgabe auf ein Maximum von 6.144 begrenzt.
"
Klicken Sie auf Studio - Erstellen einer leeren Anwendung
Erstellen Sie eine Anwendung des Typs "Chat-Assistent" und legen Sie den Namen der Anwendung aufQwen2-7B
und klicken Sie auf Erstellen.
Die Einstellung der Aufforderung "Du bist ein KI-Assistent" für die App kann in Verbindung mit demQwen2:7B
Führen Sie einen Dialogtest durch, hier mit dem großen Modell selbst, ohne eine externe Wissensbasis einzuführen, die später eingeführt wird, um die Ergebnisse der Antworten zu vergleichen.
IV. wissensbasiertes Quiz von Dify
erhöhen.Xorbits Inference
Bereitgestellte Modelle.
erhöhen.Text Embedding
d. h. das Modell zur Texteinbettung, der Name des Modells lautetbge-m3
Die Server-URL lautethttp://172.31.30.167:9997
(hier ist die IP des lokalen Rechners angegeben, es kann auch auf anderen Rechnern installiert werden, Netzwerk und Port erreichbar genügt), hat XInference auf dem lokalen Rechner vorher gestartet, und diebge-m3
Modell (siehe vorherigen Beitrag).
erhöhen.Rerank
d. h. das Umlagerungsmodell, der Name des Modells lautetbge-reraker-v2-m3
Die Server-URL lautethttp://172.31.30.167:9997
(hier ist die IP des lokalen Rechners angegeben, es kann auch auf anderen Rechnern installiert werden, Netzwerk und Port erreichbar genügt), hat XInference auf dem lokalen Rechner vorher gestartet, und diebge-reraker-v2-m3
Modell (siehe vorherigen Beitrag).
Zeigen Sie die Standardeinstellungen des Systems an.
Klicken Sie auf "Knowledge Base" - "Import Existing Text" - "Upload Text File" - wählen Sie das Dokument "Provisions on the Facilitation and Regulation of Transborder Flow of Data".
Nach erfolgreichem Import legen Sie die Textabrufmethode fest und schalten dieRerank
Modell, wählen Siebge-reranker-v2-m3
Modell, schalten Sie den StandardScore
Der Schwellenwert liegt bei 0,5 (d. h. Textübereinstimmungen unter einem Wert von 0,5 werden nicht abgerufen und nicht in den Kontext des größeren Modells eingefügt).
Fügen Sie in der vorherigen Chat-Anwendung die oben erstellte Wissensdatenbank hinzu und stellen Sie die gleiche Frage erneut an das größere Modell, und Sie können sehen, dass das Modell in Verbindung mit der Wissensdatenbank geantwortet hat.
Sie können auf "Prompt Log" klicken, um die Protokolldatei einzusehen, und Sie können die Systemaufforderungen einsehen, die den passenden Inhalt der Wissensdatenbank in der<context></context>
Mitte.
Klicken Sie auf die erstellte Wissensdatenbank - klicken Sie auf den "Recall-Test", können Sie einen Textabsatz eingeben, um den Text in der Wissensdatenbank mit dem übereinstimmenden Text abzugleichen, der übereinstimmende Text hat eine Gewichtungspunktzahl, die oben eingestellte Schwelle ist 0,5, das heißt, größer als diese Punktzahl wird als "Recall-Absatz" angezeigt ".