Technology Deep Dive

Fragen stellen.
Antworten berechnen.

Wie Parlance natürliche Sprache in präzise SQL-Abfragen übersetzt —
Schritt für Schritt, nachvollziehbar und datensouverän.

Beispiel-Anfrage:
|
Ausgangslage

Warum klassische Ansätze scheitern

Bestehende Lösungen umgehen das Problem — sie lösen es nicht.

Strukturverlust durch Chunking

Klassische RAG-Systeme linearisieren Tabellen in Fließtext. JOINs, Aggregationen und Fremdschlüssel gehen dabei verloren. Das System sieht nie die komplette Datenbasis.

Ergebnis: SUM über 500 Zeilen → falsch, weil nur Chunk 3 von 10 geladen

Zahlen werden generiert, nicht berechnet

LLMs sind probabilistische Textgeneratoren. Finanzkennzahlen, Summen und Ratios erfordern exakte symbolische Berechnung — keine approximative Textgenerierung.

Ergebnis: "Umsatz ca. 2,3 Mio. EUR" statt exakt berechneter 2.317.842 EUR

Datensouveränität nicht gewährleistet

Cloud-basierte Text-to-SQL-Dienste senden Datenbankmetadaten an externe Server. Für regulierte Branchen ist das kein Graubereich — es ist verboten.

Ergebnis: Banken, Versicherungen und Behörden sind strukturell ausgeschlossen
4-Stufen-Agent

Die Architektur im Detail

Jede Anfrage durchläuft vier präzise definierte Stufen.
Klicken Sie auf eine Stufe für Details — oder animieren Sie die Pipeline.

01
Query Decomposition
Zerlegung der natürlichsprachlichen Frage
Context-Sensitive
02
Text Retrieval
Semantische Suche über Dokumente
RAG + Reranking
03
SQL Execution
Generierung und Ausführung von SQL
Read-Only
04
Answer Synthesis
Kreuzvalidierung und Antwortgenerierung
Cited & Audited
Beispiel-Datenbank

GlobalMach AG — Datenbankstruktur

Der Demo-Prototype zeigt eine fiktive Maschinenbau-Gruppe: 4 Tochtergesellschaften, 6 Märkte, 25 Produkte, 3 Jahre Transaktionsdaten. Klicken Sie auf eine Tabelle für Details.

4 Legal Entities
·
6 Märkte
·
25 Produkte
·
~11.000 Datensätze
·
3 Geschäftsjahre
Stammdaten
companies
4 Zeilen
countries
6 Zeilen
product_categories
3 Zeilen
products
25 Zeilen
customers
80 Zeilen
Transaktionen
sales_orders
~3.000 Zeilen
sales_order_items
~8.000 Zeilen · Kern
sales_budget
Plan-Daten
Analyse & Governance
gross_margin_summary
Pre-aggregiert
audit_log
Governed SQL
product_costs
COGS je Jahr
Tabelle anklicken für Spalten-Details
💡
DB-Design ist kritisch für die SQL-Qualität. Sprechende Spaltennamen, konsistente Namenskonventionen und aussagekräftige Kommentare (wie in diesem Schema) sind Voraussetzung für präzise SQL-Generierung. Schlechtes Datenbankdesign ist die häufigste Ursache für schlechte Text-to-SQL-Ergebnisse — unabhängig vom verwendeten Modell.
Semantic Layer

Vom Geschäftsbegriff zur SQL-Expression

Der Semantic Layer ist die Brücke zwischen Geschäftssprache und Datenbankschema. Er definiert, was "Umsatz" bedeutet, welche Tabellen gejoint werden — und kennt alle Synonyme.

Geschäftsbegriffe anklicken:
Semantic Layer
Übersetzungsschicht
Live-Beispiel: Vollständige Anfrage-Übersetzung
Natürliche Sprache
"Wie hoch war der Umsatz und die Bruttomarge von GlobalMach DE in Q4 2024 im Vergleich zum Vorjahr?"
Generiertes SQL
SELECT
  so.fiscal_year,
  SUM(soi.net_amount_eur)            -- Umsatz
    AS revenue_eur,
  ROUND(
    SUM(soi.gross_profit_eur)
    / NULLIF(SUM(soi.net_amount_eur), 0)
    * 100, 2
  )                                  -- Bruttomarge %
    AS gross_margin_pct
FROM parlance.sales_orders so
JOIN parlance.sales_order_items soi
  ON so.id = soi.order_id
JOIN parlance.companies c
  ON so.company_id = c.id
WHERE c.code = 'GMDE'
  AND so.fiscal_quarter = 4
  AND so.fiscal_year IN (2023, 2024)
GROUP BY so.fiscal_year
ORDER BY so.fiscal_year;
Vektordatenbank & Feedback-Loop

Das System, das mit jeder Anfrage besser wird

Erfolgreiche SQL-Abfragen werden als Vektor gespeichert. Ähnliche Anfragen finden den gespeicherten SQL-Code — ohne ihn neu generieren zu müssen.

1

Anfrage wird zum Vektor

Das Embedding-Modell kodiert die Anfrage als numerischen Vektor. Semantisch ähnliche Anfragen landen im Vektorraum nah beieinander.

embedding("Umsatz Q4 2024")
[0.234, −0.712, 0.445, 0.089, −0.321, …]
2

k-Nearest-Neighbor-Suche

Im Vektorraum werden die k ähnlichsten gespeicherten Q&A-Paare gesucht. Diese werden als Few-Shot-Beispiele dem LLM mitgegeben — für bessere SQL-Qualität.

3

Erfolg wird gespeichert

Liefert der generierte SQL ein valides Ergebnis, wird das Paar (Anfrage → SQL) in der Vektordatenbank gespeichert. Es steht ab sofort künftigen Anfragen zur Verfügung.

4

Kontinuierliches Lernen

Mit jeder Nutzung wächst die Wissensbasis. Die Plattform wird schneller, präziser und auf das spezifische Schema des Kunden zugeschnitten — proprietäres IP-Asset.

Vektorraum-Simulation
Umsatz-Anfragen
Margen-Anfragen
Budget-Anfragen
Neue Anfrage
Governed SQL

Sicherheit und Nachvollziehbarkeit by Design

Parlance kontrolliert den gesamten Prozess von der Anfrage bis zum Ergebnis — Read-Only-Enforcement ist kein Feature, sondern Architekturprinzip.

Read-Only-Enforcement

Ausschließlich SELECT-Statements werden zugelassen. DML und DDL sind systemseitig blockiert — nicht konfigurierbar.

Retry-Logik

Schlägt ein generiertes SQL syntaktisch fehl, versucht das System bis zu 3× mit angepasster Formulierung. Erst bei validem Ergebnis wird in die Vektordatenbank gespeichert.

Vollständiges Audit-Log

Jede Anfrage wird mit Zeitstempel, User-ID, generiertem SQL, Retry-Count und Ergebnis-Zeilenanzahl in audit_log protokolliert und ist durchsuchbar.

On-Premises-Deployment

Weder Metadaten noch Nutzdaten verlassen die Kundeninfrastruktur. Der LLM-Server läuft lokal via Ollama oder LM-Studio — kein Cloud-API-Call mit Kundendaten.

audit_log — Echtzeit-Protokoll ● LIVE
Bereit zum Testen?

Erleben Sie Parlance
in Aktion.

Die Demo-Applikation zeigt alle 4 Stufen live — mit echten SQL-Queries, dem Semantic Layer und dem selbstlernenden Feedback-Loop. Alle Daten bleiben lokal.

Demo starten →