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 Funktionen reichen von der Aufnahme bis zum Abruf von Dokumenten und unterstützen 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 https://github.com/langgenius/dify.git klonen.
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 komponieren up-d
Geben Sie den ollama-Container ein und starten Sie denqwen2:7b
Modelle.
Wurzel@ip-172-31-30-167:~/dify/docker# docker pull ollama/ollama
Wurzel@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
Wurzel@ip-172-31-83-158:~/dify/docker# docker exec -it ollama bash
Wurzel@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 den normalen Gebrauch und die normale 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
Es wurde ein Dialogtest durchgeführt, hier mit dem großen Modell selbst, ohne Einführung einer externen Wissensbasis, die später eingeführt wird, um die Ergebnisse der Antworten zu vergleichen.
IV. wissensbasiertes Quiz von Dify
erhöhen.Xorbit-Schlussfolgerung
Bereitgestellte Modelle.
erhöhen.Text einbetten
d. h. das Modell zur Texteinbettung, der Name des Modells lautetbge-m3
Die Server-URL lautethttp://172.31.30.167:9997
(hier die IP des lokalen Rechners, es kann auch auf anderen Rechnern installiert werden, Netzwerk und Port erreichbar genügt), hat vorher XInference auf dem lokalen Rechner gestartet, und hat 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 die IP des lokalen Rechners, es kann auch auf anderen Rechnern installiert werden, Netzwerk und Port erreichbar genügt), hat vorher XInference auf dem lokalen Rechner gestartet, und hat 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 StandardErgebnis
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 derMitte.
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 ".