Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Zero to Production: Entwicklung einer eige...

From Zero to Production: Entwicklung einer eigenen GenAI Lösung

Dank leistungsstarker Frameworks und Bibliotheken können die ersten Generative AI-Anwendungen auf Hello-World-Niveau mit nur wenigen Codezeilen realisiert werden. Diese ersten Versuche stoßen jedoch genauso schnell an ihre Grenzen. Warum? Weil die Realität Herausforderungen mit sich bringt, die sich nicht so einfach mit diesem trivialen Ansatz lösen lassen. Aber was wird für eine Generative AI-Anwendung auf Unternehmensebene benötigt? Eine gut durchdachte Generative AI-Architektur! In diesem ganztägigen Hands-on-Workshop werden wir schrittweise eine komplexe Generative AI-Anwendung zur chatbasierten Abfrage des hauseigenen, verteilten Domänenwissens aufbauen. Beispiele für dieses verteilte Wissen könnte das gesamte Fachwissen einer IT-Abteilung, Produktinformationen und -spezifikationen eines internationalen Retailers oder das interne Mitarbeiter-Portal eines Großunternehmens sein. Beginnend mit einem minimalistischen RAG-System (Retrieval Augmented Generation) betrachten wir verschiedene Herausforderungen und diskutieren geeignete Lösungen. Am Ende werden wir eine Architektur haben, die den Herausforderungen der Realität standhält.

Avatar for Lars Roewekamp

Lars Roewekamp PRO

November 22, 2024
Tweet

More Decks by Lars Roewekamp

Other Decks in Technology

Transcript

  1. Generative AI Vom Prototypen zum produktiven Einsatz … und was

    das alles mit Architektur zu tun hat. #WISSENTEILEN powered by Lars Röwekamp | Tim Wüllner | open knowledge GmbH Hands-on Workshop
  2. Die Idee: Frage und Antwort liegen SEMANTISCH dicht beieinander. Die

    semantische Nähe wird MATHEMATISCH mit Hilfe von Vektoren abgebildet. Wie generiert ein LLM-Modell eine Antwort?
  3. Hund Katze Tiger Maus Hamburg Berlin Madrid Amazonas Embedding Model

    0.6 0.3 0.1 … 0.8 0.5 0.3 … 0.4 0.2 0.9 … Embeddings (semantische Vektoren)
  4. Hund Katze Tiger Maus Hamburg Berlin Madrid Amazonas Embedding Model

    0.6 0.3 0.1 … 0.8 0.5 0.3 … 0.4 0.2 0.9 … Embeddings (semantische Vektoren) Berlin: Stadt, Europa, Hauptstadt von Deutschland, …
  5. Hund Katze Maus Tiger Hamburg Berlin Madrid Amazonas Embedding Model

    0.6 0.3 0.1 … 0.8 0.5 0.3 … 0.4 0.2 0.9 … Hund Katze Tiger Maus Hamburg Berlin Madrid Amazonas Berlin: Stadt, Europa, Hauptstadt von Deutschland, …
  6. Hund Katze Maus Tiger Hamburg Berlin Madrid Amazonas Embedding Model

    0.6 0.3 0.1 … 0.8 0.5 0.3 … 0.4 0.2 0.9 … Hund Katze Tiger Maus Hamburg Berlin Madrid Amazonas
  7. Hund Katze Maus Tiger Hamburg Berlin Madrid Amazonas „Kannst du

    mir ein paar europäische Hauptstädte nennen?“ Embedding Model 0.8 0.5 0.4 … „Kannst du mir …“: Stadt, Europa, Hauptstadt, … FRAGE:
  8. Hund Katze Maus Tiger Hamburg Berlin Madrid Amazonas Embedding Model

    0.8 0.5 0.4 … „Kannst du mir …“: Stadt, Europa, Hauptstadt, … „Kannst du mir ein paar europäische Hauptstädte nennen?“ FRAGE:
  9. Hund Katze Maus Tiger Hamburg Berlin Madrid Amazonas Embedding Model

    0.8 0.5 0.4 … „Kannst du mir …“: Stadt, Europa, Hauptstadt, … Unser Ziel? „Kannst du mir ein paar europäische Hauptstädte nennen?“ FRAGE:
  10. Hamburg Berlin Madrid Amazonas Unser Ziel? Alles dafür tun, dass

    „Frage“ und „Antwort“ möglichst dicht beieinander liegen!
  11. man woman king queen queen – woman + man =

    king Ok, aber was ist jetzt das Tolle daran? Wir können damit rechnen und „verstehen“.
  12. man woman king queen Ok, aber was ist jetzt das

    Tolle daran? Wir können damit rechnen und „verstehen“. doctor – man + woman = ?
  13. man woman king queen Ok, aber was ist jetzt das

    Tolle daran? Wir können damit rechnen und „verstehen“. doctor – man + woman = nurse
  14. Generative AI unter der Haube Transformer (LLM Layer) John wants

    his bank to cash the … ? word2vec style vectors
  15. Generative AI unter der Haube Transformer (LLM Layer) John wants

    his bank to cash the … ? John wants his bank to cash the … ? (verb) (verb) context aka hidden state
  16. Generative AI unter der Haube Transformer (LLM Layer) John wants

    his bank to cash the … ? John wants his bank to cash the … ? (verb) (verb) context aka hidden state Key-Vector: btw I‘am a noun describing a male person. Query-Vector: btw I‘am seeking for a noun describing a male person.
  17. Generative AI unter der Haube Transformer (LLM Layer) John wants

    his bank to cash the … ? Transformer (LLM Layer) context aka hidden state John wants his bank to cash the … ? (verb) (verb) (John‘s) (finance) John wants his bank to cash the … ? (verb) (verb) (male) ( ... )
  18. Generative AI unter der Haube Transformer (LLM Layer) John wants

    his bank to cash the … ? John (main character, male, married to Cheryl, cousin of Donald, from Minnesota, currently in Boise, … ) wants his bank to cash the … ?
  19. Generative AI unter der Haube Transformer (LLM Layer) John wants

    his bank to cash the … ? Transformer (LLM Layer) John wants his bank to cash the … (verb) (verb) (John‘s) (finance) John wants his bank to cash the … ? (verb) (verb) (male) Enough context information to be able to „guess“ the next word. cheque ( ... )
  20. Generative AI under the Hood Large Language Model John wants

    his bank to … Large Language Model Next Token increase cash close … Probability 0.2 0.4 0.1 … Next Token account cheque money order … Probability 0.15 0.75 0.05 … John wants his bank to cash the …
  21. Health Care & Pharmaceuticals Advertisment & Marketing Media & Entertainment

    Production & Manufactoring Financial Services Software Development Generative AI am Beispiel
  22. Model A-small Model Provider model-name model-parameter provider-parameter prompt Model A-big

    Model B e.g. openAI, Google, … Provider Client API GenAI Basics Model Integration „Was ist das schönste Reiseziel auf der Welt?“ Reminder: 00-hello-genai.ipynb
  23. Hands-On Erstellen eines Jupyter Notebooks in der Google Colab Umgebung.

    Aufrufen eines GenAI Models mit Prompt via Provider-spezifischer API. Hello IPYNB*, hello GenAI *Python Notebook aka Jupyter Notebook
  24. GenAI- Model Prompt GenAI Basics Model Selection Prompt Engineering 2

    1 „Was ist das schönste Reiseziel auf der Welt?“
  25. GenAI- Model Prompt GenAI Basics Model Selection Prompt Engineering 2

    Model Selection „Was ist das schönste Reiseziel auf der Welt?“ Welches Model? Welche Parameter? Welche Infrastruktur? Welche Lizenz? Welches Preismodell? Welche Governance? 1
  26. GenAI Basics Model Selection „In the world of GenAI, model

    selection is part of the product design. It affects user experience, cost, scalability, and reliability.“ „While we might not pick the perfect model on the first try, starting with clear priorities like speed, cost, accuracy helps guide the process.“
  27. GenAI Basics Model Selection aka „Wie finde* ich das passende

    Model?“ Konkreten GenAI Use Case definieren Den Zweck und die Anwendung von GenAl klar umreißen. 1. Use Case Step 2 Step 3 Step 4
  28. GenAI Basics Model Selection aka „Wie finde* ich das passende

    Model?“ Konkreten GenAI Use Case definieren Short-List von Foundation Models erstellen Den Zweck und die Anwendung von GenAl klar umreißen. Modelle, die den fachlichen und technischen Anforderungen entsprechen. 1. Use Case 2. Short-List Step 3 Step 4
  29. GenAI Basics Model Selection aka „Wie finde* ich das passende

    Model?“ Konkreten GenAI Use Case definieren Short-List von Foundation Models erstellen Ausgewählte Modelle evaluieren und Testen Den Zweck und die Anwendung von GenAl klar umreißen. Modelle, die den fachlichen und technischen Anforderungen entsprechen. Gründliche Tests durchführen, um die Modellleistung im eigenen Kontext zu bewerten. 1. Use Case 2. Short-List 3. Evaluation Step 4
  30. GenAI Basics Model Selection aka „Wie finde* ich das passende

    Model?“ Konkreten GenAI Use Case definieren Short-List von Foundation Models erstellen Ausgewählte Modelle evaluieren und Testen Beste Modelle integrieren und fortlaufend evaluieren Den Zweck und die Anwendung von GenAl klar umreißen. Modelle, die den fachlichen und technischen Anforderungen entsprechen. Gründliche Tests durchführen, um die Modellleistung im eigenen Kontext zu bewerten. Integrieren, regelmäßig bewerten und ggf. optimieren der Leistung des Modells. 1. Use Case 2. Short-List 3. Evaluation 4. Integration
  31. GenAI Basics Model Selection aka „Wie finde* ich das passende

    Model?“ „Know Your Use-Case!“ *wenn du am Ende erfolgreich sein möchtest.
  32. GenAI- Model Prompt GenAI Basics Model Integration Prompt Engineering 2

    Model Selection 1 „Was ist das schönste Reiseziel auf der Welt?“ Passendes Model gefunden. Aber wie spreche ich es aus meiner Anwendung heraus an?
  33. Model A-small Model Provider model-name model-parameter provider-parameter prompt Model A-big

    Model B e.g. openAI, Google, … Provider Client API GenAI Basics Model Integration „Was ist das schönste Reiseziel auf der Welt?“ Reminder: 00-hello-genai.ipynb
  34. Model X mini Model Provider II model-name model-parameter provider-parameter prompt

    Model Y Model Y ++ e.g. openAI, Google, … Provider Client API GenAI Basics Model Integration „Was ist das schönste Reiseziel auf der Welt?“
  35. Model X mini Model Provider II Provider II Client API

    model-name model-parameter provider-parameter prompt Model Y Model Y ++ e.g. openAI, Google, … GenAI Basics Model Integration „Was ist das schönste Reiseziel auf der Welt?“ Die openAI API ist aktuell der de-facto Standard.
  36. Hub-Provider Client API model-name model-parameter hub-provider-parameter prompt e.g. Hugging-Face Provider-II

    hosted Models Provider-I hosted Models Hub-hosted Models* Hub-Provider Dispatcher *Provider X, fine-tuned or adapted, own GenAI Basics Model Integration Cloud based Resources „Was ist das schönste Reiseziel auf der Welt?“
  37. Hub-Provider Client API model-name model-parameter hub-provider-parameter prompt e.g. Hugging-Face Provider-II

    hosted Models Provider-I hosted Models Hub-hosted Models* Hub-Provider Dispatcher *Provider X, fine-tuned or adapted, own GenAI Basics Model Integration cloud-not-allowed exception „Was ist das schönste Reiseziel auf der Welt?“
  38. Local-Hub Provider Client API model-name model-parameter hub-provider-parameter prompt e.g. GPT4all,

    ollama Local hosted Models (Provider III) Local hosted Models (Provider II) Local hosted Models (own or adaptedI) Local-Hub Provider Dispatcher Local Machine GenAI Basics Model Integration „Was ist das schönste Reiseziel auf der Welt?“
  39. GenAI Basics Model Adaption „Welche zusätzlichen Stellschrauben habe ich?“ •

    Temperature Grad der „Fantasie“ • Max Tokens Länge der Antwort • Top K Auswahl der Treffer aus den top K Treffern • Top P Auswahl der Treffer aus den top P Prozent • Presence Penalty Wiederholungen werden vermieden • Frequence Penalty Wiederholungen werden gewichtet vermieden
  40. GenAI- Model Prompt Model Selection Prompt Engineering 2 1 GenAI

    Basics Prompt Engineering „„Was ist das schönste Reiseziel auf der Welt?“
  41. GenAI- Model Prompt Model Selection Prompt Engineering 1 Parts of

    a Prompt System vs User Prompt Principles of Prompting Patterns for Prompting Context Window Query vs Chat GenAI Basics Prompt Engineering „„Was ist das schönste Reiseziel auf der Welt?“ 2
  42. Role Instruction Example 1 Context Example n Question Wie sollte

    ein guter Prompt aufgebaut sein? Who am I (or the assistant)? What is my intention? What are helpful examples? Are there any additional information? BTW: what is the task I ask for? GenAI Basics Good Prompt vs. Bad Prompt
  43. GenAI Basics Good Prompt vs. Bad Prompt You I want

    to go on holiday. Where should I go? LR Topic: Holiyday Planning
  44. GenAI Basics Good Prompt vs. Bad Prompt You I want

    to go on holiday. Where should I go? LR You Acting as a travel planner, for a 3-day family trip to Paris with a focus on child-friendly activities, can you create an itinerary including daily schedules and accommodation suggestions? LR Output Example Context Question Role Acting as travel planer, for a 3-day family trip to Paris with a focus on child-friendly activities, can you create an itinerary including daily schedules and accommodation suggestions? Show it holiday sites for hotels you like, describe places you’ve been before and what you loved about them. Topic: Holiyday Planning
  45. GenAI Basics Good Prompt vs. Bad Prompt You I want

    to cook something. LR Topic: Recipe Recommendations
  46. GenAI Basics Good Prompt vs. Bad Prompt You I want

    to cook something. LR You Acting as an expert home cook, for someone who enjoys vegetarian Italian food and has only 30 minutes to prepare dinner, could you recommend a recipe including a list of ingredients and step-by- step instructions? LR Output Example Context Question Role Acting as an expert home cook, for someone who enjoys vegetarian Italian food and has only 30 minutes to prepare dinner, could you recommend a recipe including a list of ingredients and step-by-step instructions? You could point at recipes you like from the BBC’s Good Food guide, providing URL’s to recipes you love. Topic: Recipe Recommendations
  47. GenAI Basics System Prompt vs. User Prompt System Assistant User

    ‘You're a friendly assistant.’ „Du“ Chat-Model Verhalten des Assistenten
  48. GenAI Basics System Prompt vs. User Prompt System Assistant User

    ‘You're a friendly assistant and always keep things brief.’ ‚Which is the most beautiful city in the world?‘ ‚Which is the most beautiful city in the world?‘ ‘You are a philosopher and have a tendency to be verbose.’ ??? ??? „Du“ Chat-Model Verhalten des Assistenten
  49. GenAI Basics System Prompt vs. User Prompt System-Prompt: ‘You're a

    friendly assistant and always keep things brief.’ Assistant: 65 Tokens
  50. GenAI Basics System Prompt vs. User Prompt System-Prompt: ‘You are

    a philosopher and have a tendency to be verbose.’ Assistant: 434 Tokens
  51. GenAI Basics Patterns for Prompting Pros & Cons Consideration Stepwise

    Interaction Flipped Interaction Discussion of Experts I‘am planing to travel to China. I‘am planing a trip to China. I‘am planing a trip to China. I‘am planing a trip to China.
  52. GenAI Basics Patterns for Prompting I‘am planing to travel to

    China. Please analyze the pros and cons of traveling by bike, ship or plane. Pros & Cons Consideration Stepwise Interaction Flipped Interaction Discussion of Experts I‘am planing a trip to China. I‘am planing a trip to China. I‘am planing a trip to China.
  53. GenAI Basics Patterns for Prompting I‘am planing to travel to

    China. Please analyze the pros and cons of traveling by bike, ship or plane. Pros & Cons Consideration Stepwise Interaction Flipped Interaction Discussion of Experts I‘am planing a trip to China. Walk me through the planing process step by step, explaining your reasoning at each stage. Wait for my con- firmation before moving to the next step. I‘am planing a trip to China. I‘am planing a trip to China.
  54. GenAI Basics Patterns for Prompting I‘am planing to travel to

    China. Please analyze the pros and cons of traveling by bike, ship or plane. Pros & Cons Consideration Stepwise Interaction Flipped Interaction Discussion of Experts I‘am planing a trip to China. Walk me through the planing process step by step, explaining your reasoning at each stage. Wait for my con- firmation before moving to the next step. I‘am planing a trip to China. Before providing a solution, please ask me relevant questions about the trip, so that you can give me the most appropriate planing advice.“ I‘am planing a trip to China.
  55. GenAI Basics Patterns for Prompting I‘am planing to travel to

    China. Please analyze the pros and cons of traveling by bike, ship or plane. Pros & Cons Consideration Stepwise Interaction Flipped Interaction Discussion of Experts I‘am planing a trip to China. Walk me through the planing process step by step, explaining your reasoning at each stage. Wait for my con- firmation before moving to the next step. I‘am planing a trip to China. Before providing a solution, please ask me relevant questions about the trip, so that you can give me the most appropriate planing advice.“ I‘am planing a trip to China. I am torn between sustainable and cheap travelling. Can you provide two schools or trends within the travel community that can represent the two approaches.
  56. Hands-On Prompten mit System Prompt unter Verwendung verschiedener Prompting Pattern

    und Best Practices. Extended Prompting via „Chat-Bot“ unter Verwendung eines Storybooks und der Chat Historie. Prompting & Models
  57. GenAI- Model Prompt GenAI Basics myDomain + „Wie beantrage ich

    Urlaub bei open knowledge?“ „Urlaubsregelung bei open knowledge“
  58. GenAI- Model Prompt GenAI Basics myDomain + „Wie aktiviere ich

    die Alarmanlage bei open knowledge?“ „Urlaubsregelung bei open knowledge“
  59. GenAI- Model Prompt GenAI Basics myDomain + + „Wie aktiviere

    ich die Alarmanlage bei open knowledge?“ „Urlaubsregelung + Alarmanlage bei open knowledge“
  60. GenAI- Model Prompt GenAI Basics myDomain + „Alles interne Wissen

    (Wiki, DB, …) bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  61. GenAI- Model Prompt GenAI Basics myDomain + ERROR: Token Limit

    exceeded Output Size Context Window Size „Wie mache ich XYZ bei open knowledge?“ „Alles interne Wissen (Wiki, DB, …) bei open knowledge“
  62. GenAI- Model Prompt GenAI Basics myDomain + ERROR: Out-of-Budget Exception

    Context Window Size „Alles interne Wissen (Wiki, DB, …) bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  63. GenAI- Model Prompt GenAI Basics myDomain + ERROR: Lost-in-the-Middle Context

    Window Size „Wie mache ich XYZ bei open knowledge?“ „Alles interne Wissen (Wiki, DB, …) bei open knowledge“
  64. GenAI- Model Prompt GenAI Basics myDomain + ERROR: Self-fullfilling Prophecy

    Context Window Size Context Window Size Context Window Size Context Window Size „Alles interne Wissen (Wiki, DB, …) bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  65. GenAI- Model Prompt GenAI Advanced myDomain + ERROR: Token Limit

    exceeded! Output Size Context Window Size „Alles interne Wissen bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  66. myGenAI Model Prompt GenAI Advanced myDomain „Wie mache ich XYZ

    bei open knowledge?“ „Alles interne Wissen bei open knowledge“
  67. myGenAI Model Prompt GenAI Advanced myDomain Option 1: Build own

    Model Option 2: Fine-tune existing Model ERROR: Way to expensive ERROR: Way to complex WARNING: Out-of-Sync „Wie mache ich XYZ bei open knowledge?“ „Alles interne Wissen bei open knowledge“
  68. Prompt GenAI- Model GenAI Advanced myDomain „Alles interne Wissen bei

    open knowledge“ SOME MAGIC „Wie mache ich XYZ bei open knowledge?“
  69. Prompt Retrieve Augment Ingesting- Pipeline Knowledge Database Retriever GenAI- Model

    GenAI Advanced myDomain „Alles interne Wissen bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  70. Prompt Ingesting- Pipeline Knowledge Database Retriever GenAI Advanced myDomain R

    etrieval Augmented Generation „Alles interne Wissen bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  71. Prompt Ingesting- Pipeline Knowledge Database Retriever GenAI Advanced RAG Systems

    R etrieval Augmented Generation „Alles interne Wissen bei open knowledge“ „Wie mache ich XYZ bei open knowledge?“
  72. Prompt Ingesting- Pipeline Knowledge Database GenAI Advanced RAG Systems „Alles

    interne Wissen bei open knowledge“ R etrieval Augmented Generation Retriever
  73. GenAI Advanced RAG Systems GenAI Model INGESTING Pipeline (Async.) Chunking

    Embedding RETRIEVAL Pipeline (Sync.) Top-k Fetching Augmenting UI/UX (Prompt) Query- Embedding „Wie funktioniert XYZ bei open knowledge? Retriever
  74. GenAI Advanced RAG Systems GenAI Model INGESTING Pipeline (Async.) Chunking

    Embedding RETRIEVAL Pipeline (Sync.) Top-k Fetching Augmenting UI/UX Query- Embedding Sieht kompliziert(er) aus, ist es auch! Außer in „Hello World“ Beispielen aus dem Internet Retriever
  75. „Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten

    Mal. Ein Ende des Hypes ist noch lange nicht abzusehen. Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats. Für das Jahr 2024 wurde erwartet, dass der Sprung vom explorativen Herumspielen mit Large Language Models […].“ Document (Doc. Id:1) Chunking Embedding Ingesting Pipeline by Example
  76. „Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten

    Mal. Ein Ende des Hypes ist noch lange nicht abzusehen. Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats. Für das Jahr 2024 wurde erwartet, dass der Sprung vom explorativen Herumspielen mit Large Language Models […].“ [„Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten Mal. Ein Ende des Hypes ist noch lange nicht abzusehen.“] [„Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats.“] […] Document (Doc. Id:1) Chunking Embedding Ingesting Pipeline by Example
  77. „Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten

    Mal. Ein Ende des Hypes ist noch lange nicht abzusehen. Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats. Für das Jahr 2024 wurde erwartet, dass der Sprung vom explorativen Herumspielen mit Large Language Models […].“ [„Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten Mal. Ein Ende des Hypes ist noch lange nicht abzusehen.“] [„Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats.“] […] Document (Doc. Id:1) Chunking Embedding [-0.24, 0.15, …, 0.52] [-0.13, 0.95, …, 0.31] […] Ingesting Pipeline by Example
  78. „Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten

    Mal. Ein Ende des Hypes ist noch lange nicht abzusehen. Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats. Für das Jahr 2024 wurde erwartet, dass der Sprung vom explorativen Herumspielen mit Large Language Models […].“ [„Die Veröffentlichung von ChatGPT jährt sich nun bald zum zweiten Mal. Ein Ende des Hypes ist noch lange nicht abzusehen.“] [„Zu groß sind die Mehrwerte dieser Technologie, zu intuitiv ist der Umgang in Form eines Chats.“] […] Document (Doc. Id:1) Id Doc. Id Embedding 1 1 [-0.24, 0.15, …, 0.52] 2 1 [-0.13, 0.95, …, 0.31] […] […] […] Chunking Embedding [-0.24, 0.15, …, 0.52] [-0.13, 0.95, …, 0.31] […] Ingesting Pipeline by Example
  79. Retrieval Pipeline by Example Embedding Top-k Fetching Augmenting „Wovon handelt

    der Vortrag „Die Architektur für Sprachmodelle in der Praxis - Retrieval Augmented Generation“?“
  80. Retrieval Pipeline by Example Embedding Top-k Fetching Augmenting „Wovon handelt

    der Vortrag „Die Architektur für Sprachmodelle in der Praxis - Retrieval Augmented Generation“?“ [0.35, 0.25, …, 0.62]
  81. Retrieval Pipeline by Example Embedding Top-k Fetching Augmenting Embeddings aus

    Knowledge Base Embeddings Dimension 1 Embed. Dim. 2 Top-k=1 Dokument „Wovon handelt der Vortrag „Die Architektur für Sprachmodelle in der Praxis - Retrieval Augmented Generation“?“ [0.35, 0.25, …, 0.62]
  82. Retrieval Pipeline by Example Embedding Top-k Fetching Augmenting Embeddings aus

    Knowledge Base Embeddings Dimension 1 Embed. Dim. 2 Top-k=1 Dokument „Wovon handelt der Vortrag „Die Architektur für Sprachmodelle in der Praxis - Retrieval Augmented Generation“?“ [0.35, 0.25, …, 0.62] & „Wovon handelt der Vortrag […] basierend auf folgendem Kontext: „Durch ein vorgeschaltetes Retrieval, um relevante Informationen aus einer eigenen dynamischen Datenbasis hinzuziehen, können fundierte Antworten geliefert werden.“
  83. Hands-On Implementieren eines einfachen RAG-Systems unter der Verwendung von Ingestion-

    und Retrieval-Pipelines. Anwenden des RAG-Systems für Fragen aus der eigenen Domäne. RAG System Simple Version
  84. Retrieval Augmented Knowledge Database Retriever Generation Ingesting- Pipeline GenAI Advanced

    RAG Systems „Wie beantrage ich Urlaub bei open knowledge?“
  85. Retrieval Augmented Knowledge Database Retriever Generation Ingesting- Pipeline GenAI Advanced

    RAG Systems „Urlaub? So wie du arbeitest? Du faules Stück!“ „Wie beantrage ich Urlaub bei open knowledge?“
  86. Retrieval Augmented Knowledge Database Retriever Generation Ingesting- Pipeline „Wie beantrage

    ich Urlaub bei open knowledge?“ GenAI Professional Guardrails „Urlaub? So wie du arbeitest? Du faules Stück!“
  87. Retrieval Augmented Knowledge Database Retriever Generation Guarding Output Ingesting- Pipeline

    GenAI Professional Guardrails Output Profanity Check „Wie beantrage ich Urlaub bei open knowledge?“ „Urlaub? So wie du arbeitest? Du faules Stück!“
  88. Retrieval Augmented Knowledge Database Retriever Generation Guarding Output Ingesting- Pipeline

    GenAI Professional Guardrails „Das kann ich leider nicht beantworten.“ Output Profanity Check „Wie beantrage ich Urlaub bei open knowledge?“ „Urlaub? So wie du arbeitest? Du faules Stück!“ „…. Faules Stück …“
  89. Retrieval Augmented Knowledge Database Retriever Generation Input Output Ingesting- Pipeline

    GenAI Professional Guardrails Guarding „Was soll ich heute Abend kochen?“ Topic Check
  90. Retrieval Augmented Knowledge Database Retriever Generation Input Output Ingesting- Pipeline

    GenAI Professional Guardrails Guarding „Was soll ich heute Abend kochen?“ „Sorry, aber das fällt nicht in meinen Aufgabenbereich.“ Topic Check
  91. Retrieval Augmented Knowledge Database Retriever Generation Input Output Ingesting- Pipeline

    GenAI Professional Guardrails Output-Governance: Toxic Speech, Fact-Checking, Ethical-Guidelines, Cross-Validation, … Input-Evaluation: Prompt-Injection, Jailbreak-Versuche, Topic-Filter, PII-Cleansing, Rate-Limiting,… Guarding
  92. Hands-On Erstellen eigener Guardrails für die Ein- und Ausgabe zum

    Verhindern toxischer Sprache. Implementieren eines einfachen Output Guardrail als Fact-Checker. RAG System Guardrails
  93. Retrieval Augmented Knowledge Database Retriever Generation Input Output Ingesting- Pipeline

    GenAI Professional Guarding Was fehlt noch für ein professionelles und produktives System?
  94. Retrieval Augmented Knowledge Database Retriever Generation Input Output Ingesting- Pipeline

    RAG-Monitoring Cost- Monitoring Model- Monitoring Response-Quality- Monitoring GenAI Professional Monitoring Guarding Ragas: https://docs.ragas.io/en/stable/concepts/metrics
  95. Generated Answer Retrieved Context User Input „Ist die Antwort durch

    den Kontext belegt?“ „Ist der gefundene Kontext relevant für die Frage?“ „Ist die Antwort relevant für die Frage?“ GenAI Professional Monitoring: die RAG-Triade
  96. Generated Answer Retrieved Context User Input „Ist die gegebene Antwort

    ähnlich zur richtigen Antwort?“ „Ist der gesamte zu findende Kontext gefunden worden? Ground Truth Answer Ground Truth Context „Ist die Antwort durch den Kontext belegt?“ „Ist der gefundene Kontext relevant für die Frage?“ „Ist die Antwort relevant für die Frage?“ GenAI Professional Monitoring: die RAG-Triade+
  97. Retrieval Augmented Generation GenAI Professional Response Quality Monitoring https://docs.confident-ai.com/docs/metrics-llm-evals G-Eval

    Deep Acyclic Graph Answer Relevancy Faithfulness Summerization Hallucination Contextual Recall Contextual Relevancy Contextual Precision relevanter Kontext generierte Antwort User Input
  98. Retrieval Augmented Generation GenAI Professional Response Quality Monitoring Faithfulness relevanter

    Kontext generierte Antwort User Input Wird die durch unterstützt?
  99. Retrieval Augmented Generation relevanter Kontext generierte Antwort User Input GenAI

    Professional Response Quality Monitoring Answer Relevancy Passt die zum ?
  100. GenAI Professional Response Quality Monitoring Step 1: Generiere mögliche Antworten

    ( ) aus Embeddings Dimension 1 Embed. Dim. 2 Answer Relevancy Passt die zum ?
  101. GenAI Professional Response Quality Monitoring Step 1: Generiere mögliche Antworten

    ( ) aus Step 2: Berechne die mittlere Distanz von Embeddings Dimension 1 Embed. Dim. 2 Answer Relevancy Passt die zum ?
  102. Retrieval Augmented Knowledge Database Retriever Generation Guarding Input Output Ingesting-

    Pipeline RAG-Monitoring Cost- Monitoring Model- Monitoring Response-Quality- Monitoring GenAI Best Practices Real Life Survival Guide
  103. GenAI Model UI/UX Guardrails Output Ingesting-Pipeline (Async.) Chunking Embedding Retrieval-Pipeline

    (Sync.) Query- Embedding Top-k Fetching Augmenting Input GenAI Best Practices Real Life Survival Guide Hallucination (via Faithfulness / Answer Relevancy)
  104. GenAI Model UI/UX Guardrails Output Ingesting-Pipeline (Async.) Chunking Embedding Retrieval-Pipeline

    (Sync.) Query- Embedding Top-k Fetching Augmenting Input Missing Data GenAI Best Practices Real Life Survival Guide
  105. GenAI Model UI/UX Guardrails Output Ingesting-Pipeline (Async.) Chunking Embedding Retrieval-Pipeline

    (Sync.) Query- Embedding Top-k Fetching Augmenting Input Missing Data GenAI Best Practices Real Life Survival Guide Chunk not found
  106. GenAI Model UI/UX Guardrails Output Ingesting-Pipeline (Async.) Chunking Embedding Retrieval-Pipeline

    (Sync.) Query- Embedding Top-k Fetching Augmenting Input Missing Data GenAI Best Practices Real Life Survival Guide Chunk not found Chunk not relevant
  107. Ingesting-Pipeline (Async.) Chunking Embedding Real Life RAG #1 Missing-Data Challenge

    Missing Data Problem: RAG kennt die benötigten Daten nicht.
  108. Ingesting-Pipeline (Async.) Chunking Embedding Real Life RAG #1 Missing-Data Challenge

    Missing Data Problem: RAG kennt die benötigten Daten nicht. Lösung: Passenden Ingestor implementieren.
  109. Ingesting-Pipeline (Async.) Chunking Embedding Real Life RAG #1 Missing-Data Challenge

    Missing Data Problem: Snapshot der Daten ist nicht aktuell genug.
  110. Ingesting-Pipeline (Async.) Chunking Embedding Real Life RAG #1 Missing-Data Challenge

    Missing Data Problem: Snapshot der Daten ist nicht aktuell genug. Lösung: Schnittstelle zum „kontinuierlichen“ Data-Sync.
  111. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Query- Embedding
  112. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Problem: Vorhandene Chunks werden nicht gefunden. Query- Embedding
  113. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Problem: Vorhandene Chunks werden nicht gefunden. Lösung #1: Chunk-Sizes und Overlapping adaptieren. Query- Embedding
  114. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Problem: Vorhandene Chunks werden nicht gefunden. Lösung #2: Andere Splitter verwenden (e.g. Semantic-Splitter). Query- Embedding
  115. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Problem: Vorhandene Chunks werden nicht gefunden. Lösung#3: Optimierung des Distanz-Thresholds bzw. k aus Top-k Query- Embedding
  116. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Problem: Vorhandene Chunks werden nicht gefunden. Lösung #4: Auswahl eines besser geeigneten Embedding-Models. Query- Embedding
  117. Top-k Fetching Ingesting-Pipeline (Async.) Chunking Embedding Augmenting Retrieval-Pipeline (Sync.) Real

    Life RAG #2 Chunk-not-found Challenge Chunk not found Problem: Vorhandene Chunks werden nicht gefunden. Lösung #5: Hypothetical Document Embeddings (HyDE) Input HyDE Query- Embedding
  118. Guardrails Input Output Gao et al. (2023) HyDE = Hypothetical

    Document Embeddings Real Life RAG #2 Chunk-not-found Challenge HyDE
  119. Real Life RAG #3 Chunk-not-relevant Challenge Chunk not relevant GenAI

    Model Top-k Fetching Augmenting Retrieval-Pipeline (Sync.) Query- Embedding
  120. Real Life RAG #3 Chunk-not-relevant Challenge Problem: Chunk wird vom

    Model nicht als relevant erachtet. Chunk not relevant GenAI Model Top-k Fetching Augmenting Retrieval-Pipeline (Sync.) Query- Embedding
  121. Real Life RAG #3 Chunk-not-relevant Challenge Chunk not relevant Top-k

    Fetching Augmenting Retrieval-Pipeline (Sync.) Problem: Chunk wird vom Model nicht als relevant erachtet. Lösung #1: Für den Use-Case besser geeignetes Modell wählen. GenAI Model Query- Embedding
  122. Real Life RAG #3 Chunk-not-relevant Challenge Chunk not relevant Top-k

    Fetching Augmenting Retrieval-Pipeline (Sync.) GenAI Model Problem: Chunk wird vom Model nicht als relevant erachtet. Lösung #2: Chunk um zusätzlichen Context erweitern (small-to-big). Chunk Query- Embedding
  123. GenAI Model UI/UX Guardrails Input Output Ingesting-Pipeline (Async.) Chunking Embedding

    Retrieval-Pipeline (Sync.) Top-k Fetching Augmenting Query- Embedding
  124. Hands-On Überleben im RAG-Dschungel: Verwenden von LLM- und RAG-Metriken zur

    Optimierung des Retrieval-Vorgangs. RAG System klassische Pitfalls
  125. Generated Answer Retrieved Context User Input „Ist die gegebene Antwort

    ähnlich zur richtigen Antwort?“ „Ist der gesamte zu findende Kontext gefunden worden? Ground Truth Answer Ground Truth Context „Ist die Antwort durch den Kontext belegt?“ „Ist der gefundene Kontext relevant für die Frage?“ „Ist die Antwort relevant für die Frage?“ Real Life RAG Metriken - die RAG-Triade+
  126. 1 Stelle Evaluationsdaten zur Verfügung, welche den Ground Truth Kontext

    beinhalten 2 Generiere Antworten zu Evaluations-Input und sammle den Kontext Real Life RAG Metriken im Information Retrieval
  127. 1 Stelle Evaluationsdaten zur Verfügung, welche den Ground Truth Kontext

    beinhalten 2 Generiere Antworten zu Evaluations-Input und sammle den Kontext 3 Bestimme, ob Kontext in Ground Truth enthalten ist 1 0 Hit Rate Real Life RAG Metriken im Information Retrieval – Hit Rate
  128. 1 Stelle Evaluationsdaten zur Verfügung, welche den Ground Truth Kontext

    beinhalten 2 Generiere Antworten zu Evaluations-Input und sammle den Kontext basierend auf Relevanz 3 Bestimme den Anteil der relevanten Dokumente in Relation zu allen Dokumenten 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 𝑟𝑒𝑙𝑒𝑣𝑎𝑛𝑡 𝑅𝑒𝑠𝑢𝑙𝑡𝑠 𝑡𝑜𝑡𝑎𝑙 𝑅𝑒𝑠𝑢𝑙𝑡𝑠 0.00 0.33 Real Life RAG Metriken im Information Retrieval – Precision
  129. 1 2 Stelle Evaluationsdaten zur Verfügung, welche den Ground Truth

    Kontext beinhalten Generiere Antworten zu Evaluations-Input und sammle den Kontext basierend auf Relevanz … 3 Bestimme, auf welchem Rang das erste relevante Dokument liegt. Berechne und mittlere den Reciprocal Rank (RR): 𝑅𝑅 = 1 𝑅𝑎𝑛𝑔 1 2 3 1 2 3 1 2 0 𝑀𝑅𝑅 = 1 𝑛 σ𝑖=1 𝑛 𝑅𝑅𝑖 𝑀𝑅𝑅 = 0.25 1 2 3 1 2 3 Real Life RAG Metriken im Information Retrieval – Mean Reciprocal Rank (MRR)
  130. Prompt Retrieve Augment Ingesting- Pipeline Knowledge Database Retriever GenAI- Model

    GenAI Outlook Was gibt es noch zu bedenken? „How to apply for vacation at open knowledge?“ „Alles interne Wissen bei open knowledge“
  131. UI/UX Enterprise Integration „Comment demander des vacances chez ok?“ Retrieve

    Augment Ingesting- Pipeline Retriever GenAI- Model Knowledge Database „Wie beantrage ich Urlaub bei open knowledge?“ GenAI Outlook Multi-Language RAG „Alles interne Wissen bei open knowledge“
  132. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Retriever GenAI- Model

    Language- Detection Translation Translation Translation GenAI Outlook Multi-Language RAG Knowledge Database „Comment demander des vacances chez ok?“ „Alles interne Wissen bei open knowledge“
  133. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Knowledge Database Retriever

    GenAI- Model Translation Translation Translation Translation FR_fr language not supported domain specific wording GenAI Outlook Multi-Language RAG Language- Detection „Comment demander des vacances chez ok?“ „Alles interne Wissen bei open knowledge in mehreren Sprachen.“
  134. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Retriever GenAI- Model

    Knowledge Database GenAI Outlook Access Control „Wie beantrage ich Urlaub bei open knowledge?“ „Alles interne Wissen bei open knowledge“
  135. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Retriever GenAI- Model

    Knowledge Database GenAI Outlook Access Control „Was sind die geheimen KPIs von open knowledge?“ „Alles interne Wissen bei open knowledge“ incl C-Level Informationen.“
  136. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Retriever GenAI- Model

    Token Knowledge Database Input Guardrail Eine Art von Attacke? Prompt-Injection? Prompt-Abuse? Rate-Limit? GenAI Outlook Access Control „Was sind die geheimen KPIs von open knowledge?“ „Alles interne Wissen bei open knowledge“ incl C-Level Informationen.“
  137. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Knowledge Database incl.

    AC Meta Data Retriever GenAI- Model RBAC via PBF Token Token Input Guardrail GenAI Outlook Access Control RBAC = Role based Access Control PBF = Permission based Filtering „Was sind die geheimen KPIs von open knowledge?“ „Alles interne Wissen bei open knowledge“ incl C-Level Informationen.“
  138. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Knowledge Database with

    AC Meta Data Retriever GenAI- Model RBAC via PBF Token Token Input Guardrail Output Guardrail PII: Personally identifiable information? GenAI Outlook Access Control „Wie sehen die persönlchen Daten von X aus bei ok?“ „Alles interne Wissen bei open knowledge“ incl C-Level Informationen.“
  139. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Retriever GenAI- Model

    Knowledge Database GenAI Outlook Integration „Wie beantrage ich Urlaub bei open knowledge?“ „Alles interne Wissen bei open knowledge“
  140. GenAI Outlook Integration GenAI based Service A P I ML

    as a Service Input Output UI/UX Enterprise Integration „Wie beantrage ich Urlaub bei open knowledge?“ „Alles interne Wissen bei open knowledge“
  141. Hands-On Bereitstellung eines GenAI basierten RAG-Systems als Service. Integration des

    Service in eine eigene Web-basierte Oberfläche. RAG System GenAI as a Service
  142. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Knowledge Database Retriever

    GenAI- Model „Wie beantrage ich Urlaub bei open knowledge?“ „Alles interne Wissen bei open knowledge“ Agenten-Systeme
  143. UI/UX Enterprise Integration Retrieve Augment Ingesting- Pipeline Knowledge Database Retriever

    GenAI- Model „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ „Alles interne Wissen bei open knowledge“ Agenten-Systeme
  144. Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call UI/UX

    „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ Agenten-Systeme
  145. Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call UI/UX

    „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ „Du bist ein Assistent für Mitarbeitende. Führe folgende Schritte durch, um die Aufgaben zu erfüllen: […]“ Agenten-Systeme
  146. Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call UI/UX

    „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ Ich sollte mir zuerst vergangene Interaktionen mit dem User und User- Informationen holen. „Du bist ein Assistent für Mitarbeitende. Führe folgende Schritte durch, um die Aufgaben zu erfüllen: […]“ Agenten-Systeme
  147. Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call UI/UX

    „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ User : {Name: „Tim Wüllner“, ID: „123“} […] Agenten-Systeme
  148. Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call UI/UX

    „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ User : {Name: „Tim Wüllner“, ID: „123“} […] Ich sollte mir nun Informationen zur Beantragung von Urlaub bei ok holen. Agenten-Systeme
  149. Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call UI/UX

    „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ „Urlaub beantragst du bei ok über das System BCS. Der Urlaub wird wie folgt beantragt […].“ Agenten-Systeme
  150. Agenten-Systeme Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call

    UI/UX „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ „Urlaub beantragst du bei ok über das System BCS. Der Urlaub wird wie folgt beantragt […].“ Ich sollte nun Werkzeuge nutzen, um den Urlaub wie beschrieben für den User zu beantragen.
  151. Agenten-Systeme Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call

    UI/UX „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ requestVacation(userId=„123“,from=„x“,to=„y“)
  152. Agenten-Systeme Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call

    UI/UX „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“ requestVacation(userId=„123“,from=„x“,to=„y“) Ich sollte nun den User über die Beantragung des Urlaubs informieren.
  153. Agenten-Systeme Retriever Memory Tools Planning Database Prompting GenAI- Model API-Call

    UI/UX „Ich habe deinen Urlaub beantragt.“ „Beantrage meinen Urlaub von […] bis [… ] bei ok, bitte.“
  154. Multi-Agenten Systeme UI/UX Spezialist für Urlaub Spezialist für User- Interaktion

    Spezialist für Coding Spezialist für Social Media „Erstelle einen Vorschlag für einen Beitrag zum Thema „AI-Agents““ „Warum führt dieser Code zu eine NullPointerException ?“
  155. GenAI Model UI/UX Guardrails Input Output Ingesting-Pipeline (Async.) Chunking Embedding

    Retrieval-Pipeline (Sync.) Top-k Fetching Augmenting Query- Embedding
  156. GenAI vom Prototypen zum produktiven Einsatz Was du heute mitnehmen

    solltest: • GenAI ist mächtig. Mächtig teuer. • Der Prompt ist dein Freund. • Jedes Modell ist anders. • RAG für eigenes Domänenwissen. • GenAI ist auch nur Software. Dein Use Case bestimmt den richtigen Weg!
  157. #WISSENTEILEN #WISSENTEILEN BILDNACHWEISE Folie 21: © photoplotnikov - istockphoto.com Folie

    23: © Mix und Match Studios - shutterstock.com Folie 23: © Mix und Match Studios - shutterstock.com Alle anderen Bilder, , Zeichnungen und icons stammen aus den folgenden freien Quellen • pexels.com, • pixabay.com, • unsplash.com, • flaticon.com oder wurden von mir selbst erstellt.