Skip to content

vm248/ProzessPilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProzessPilot mit LLM

Überblick

ProzessPilot ist ein Tool, mit dem Benutzer interaktive Prozessgraphen erstellen, bearbeiten und speichern können. Es kombiniert die Benutzerfreundlichkeit eines grafischen Tools mit der Intelligenz eines Large Language Models (LLM), um die Bearbeitung von Graphen einfach und effizient zu gestalten.

Features

  • Erstellung von Graphen in Mermaid.js-Format.
  • Unterstützung für benutzerdefinierte Knoten, Kanten und Entscheidungen.
  • Speicherung und Verwaltung mehrerer Graphen.
  • Export von Graph-Code als .txt.
  • Rückgängig-Funktion und Reset-Option.
  • Umfangreiche Testabdeckung für Kernfunktionen.

Technologie-Stack

  • Backend: Flask
  • Frontend: HTML, CSS, JavaScript
  • Graphdarstellung: Mermaid.js
  • LLM-Integration: Ollama

Voraussetzungen

  • Python 3.8 oder höher
  • Pip zur Paketinstallation
  • Ollama zur Verwaltung und Nutzung des LLM

Installation

1. Repository klonen

Klonen Sie das Repository:

git clone <repository-url>
cd <repository-name>

2. Virtuelle Umgebung erstellen (optional)

Es wird empfohlen, eine virtuelle Umgebung zu verwenden:

python -m venv venv
source venv/bin/activate   # Linux/Mac
venv\Scripts\activate      # Windows

3. Abhängigkeiten installieren

Installieren Sie die erforderlichen Pakete:

pip install -r requirements.txt

4. Ollama installieren

Laden Sie Ollama herunter und installieren Sie es entsprechend der Anleitung auf der offiziellen Website.

5. Ollama starten

Starten Sie Ollama als Dienst. Dies ist erforderlich, um das Modell zu verwenden:

ollama serve

6. Modell erstellen

Vor der ersten Nutzung müssen Sie das Modell mit folgendem Befehl erstellen:

ollama create prozessllama -f src\data\prozess.modelfile

7. Anwendung starten

Starten Sie die Flask-Anwendung:

python run.py

Öffnen Sie die Anwendung im Browser unter http://127.0.0.1:5000.

Projektstruktur

src/
├── app/
│   ├── static/
│   │   ├── css/
│   │   │   └── style.css   # Styling
│   │   └── js/
│   │       └── chat.js     # JavaScript-Logik
│   ├── templates/
│   │   └── chat.html       # Frontend-HTML
│   ├── flask_app.py        # Hauptlogik für Flask
│   ├── functions.py        # Funktionen für Graph-Operationen
│   ├── globals.py          # Globale Variablen und Konfigurationen
├── data/
│   ├── graphs.json         # Dynamische Speicherung von Graphen
│   ├── prozess.modelfile   # Zusätzliche Modellspezifikationen
│   └── welcome.txt         # Begrüßungstext für die Anwendung
├── tests/
│   ├── data/               # Testdaten in JSON
│   │   ├── testcases_*.json
│   ├── functions/          # Unit-Test-Funktionen
│   │   ├── test_add.py
│   │   ├── test_code.py
│   │   ├── test_delete.py
│   │   ├── test_edit.py
│   │   └── test_handleaction.py
│   └── llm/                # Tests für LLM
│       └── test_llm.py
├── venv/                   # Virtuelle Umgebung (nicht im Repository)
├── run.py                  # Flask-Server-Start
README.md                   # Diese Datei
requirements.txt            # Abhängigkeiten
.gitignore                  # Ignorierte Dateien

Nutzung

  1. Öffnen Sie die Anwendung im Browser.
  2. Verwenden Sie das Chatfenster, um Befehle einzugeben oder Vorlagen auszuwählen.
  3. Speichern Sie Graphen und laden Sie diese bei Bedarf wieder.
  4. Laden Sie den aktuellen Graph-Code als .txt herunter.

Beispiele

Mermaid-Graph

Ein einfacher Prozessgraph könnte so aussehen:

flowchart TD
    A[Start] -->|Entscheidung| B{Überprüfen}
    B -->|Ja| C[(Verarbeitung)]
    B -->|Nein| D[(Fehlerbehandlung)]
    C --> E[Fertig]
Loading

Tests

Die Funktions-Tests können mit pytest ausgeführt werden:

pytest

Der LLM-Test kann mit dem Ausführen der entsprechenden Datei durchgeführt werden:

python tests/llm/test_llm.py

Lizenz

Dieses Projekt ist unter der MIT-Lizenz verfügbar. Details finden Sie in der Datei LICENSE.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published