Innovation Lab

KI mit Oracle – Wir implementieren einen RAG-basierten Chat in Oracle

In dieser Serie behandeln wir das Thema der Benutzung von GenAI in Oracle am Beispiel eines Chats unter Verwendung von ChatGPT.
Es geht primär um die Nutzung der API-Schnittstelle auf Basis von REST-Requests. Es werden die Konzepte und deren Implementationen behandelt, um letztendlich ein Framework zu erhalten, das (auch) einen RAG-basierten Chat implementiert, also einen Chat, der auf eine Firmeneigene Wissensbasis zurückgreifen kann (RAG=Retrieval Augmented Generation).

Dieses Framework ist im Kern in Oracle PL/SQL implementiert. Das bietet eine optimale Integrierbarkeit in bestehende datenbankgestützte Applikationen. Neben OCI (Oracle Cloud Infrastructure) setzen wir bewusst auf On-Premises-Lösungen, um eine flexible, plattformunabhängige Architektur für KI in Oracle zu gewährleisten.

 

 

X

Intro:

In diesem Teil geht es um

  • Motivationen
  • Funktionalitäten
  • Mehrwerte

Download Präsentation als PDF

X

Teil 1: Basics – Oracle & KI im Chat

  • Konzept: Warum eine eigene Lösung? Vorteile der PL/SQL-Implementierung für Generative AI mit Oracle.
  • Zwei Wege zur Oracle ChatGPT-Anbindung: Oracle 23ai-Bordmittel vs. REST-API mit UTL_HTTP & JSON.

Im Video erläutern wir, warum eine eigene RAG-Chat-Implementierung mit Oracle PL/SQL sinnvoll ist.
Um den wichtigsten Kernbaustein, die Schnittstelle zum LLM, zu implementieren stehen zwei Wege zur Auswahl:

  • Oracle 23ai-Bordmittel (dbms_vector_chain.utl_to_generate_text)
  • UTL_HTTP für eine REST-API-Anbindung (etwas aufwendiger)

Beide Wege beschreiben und präsentieren wir kurz, die Vor- und Nachteile werden ebenso benannt.

Download Präsentation als PDF

X

Teil 2 – Oracle KI Chat als PL/SQL

Erweiterung von einer einfachen Abfrage zu einem vollständigen Chat-Dialog

Nachdem in Teil 1 die REST-API-Schnittstelle implementiert wurde, erfolgt nun die Integration in einen datenbankgestützten Chat (PL/SQL) . Wir erläutern die notwendigen Konzepte und Grundlagen und führen die fertige Implementation vor.

Download Präsentation als PDF

X

Teil 3.0 – Einführung in RAG & Chat mit KI

Was ist RAG? Grundlagen, Funktionsweise & Anforderungen

Konzepte:

  1. Was ist RAG? – Datenfluss
  2. Dokumentenverarbeitung (Konvertierung zu Text, Chunking)
  3. Semantische Suche via Vektoren
  4. Integration in den Chat

Dieser Teil ist eher theoretisch. Wir gehen kurz auf die Motivation eines RAG-Chats ein und erläutern, was das überhaupt ist. Daraus folgen die nächsten drei Implementationsschritte zur Umsetzung eines Oracle LLM-basierten RAG-Chats.:

  1. Dokumentenvorbereitung (Formatumwandlung, Clustering)
  2. Semantische Suche mit Vektoren
  3. Integration in den Oracle ChatGPT-basierten Dialog aus Teil 2

Wir beschreiben die Implementationsschritte kurz im Zusammenhang, als Ausblick auf die nachfolgenden drei Teile der Serie.

Download Präsentation als PDF

X

Teil 3.1- Dokumentenvorbereitung

  • Formatumwandlung von Word, Excel, PDF zu TXT
  • Chunking – Zerlegung der Texte in Blöcke

In diesem Teil wird die Notwendigkeit des Chunkings von Texten in verschiedenen Varianten erläutert und vorgeführt.

Download Präsentation als PDF

X

Teil 3.2 – RAG & Chat mit KI: Vektorsuche

  • Grundlagen: Vector Distance als semantische Suche
  • Vektorisierung von Texten mit
    • ChatGPT (Oracle-23ai Bordmittel)
    • PL/SQL als Client eines Eigenen REST-Services mit Python & Docker
    • ONNX-Modelle in Oracle

In diesem Teil wird zunächst die Vektorsuche und deren Funktionsweise veranschaulicht und auch die Negativfolgen dieses Verfahrens angesprochen. Dann werden die Anforderungen an die Vektorsuche für den Chat benannt. Für die Vektorisierung an sich bietet Oracle 23ai kein fertig integriertes Verfahren an, daher werden zusätzliche Lösungen benötigt. Es werden drei Ansätze beschrieben und gezeigt und deren Leistungsfähigkeit miteinander verglichen. Auch die Grenzen des Verfahrens werden benannt.
Download Präsentation als PDF