Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

▪ Was Sie ▪ Hintergrundwissen und Theorie zu RAG ▪ Überblick über ▪ die auftreten können ▪ Pragmatische Methoden für die Verwendung im RAG ▪ Demos ( ) ▪ Was Sie erwartet ▪ ChatGPT, CoPilot(s) ▪ Grundlagen von ML ▪ Deep Dives in LLMs, Vektor-Datenbanken, LangChain Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 2

Slide 3

Slide 3 text

▪ Generative AI in business settings ▪ Flexible and scalable backends ▪ All things .NET ▪ Pragmatic end-to-end architectures ▪ Developer productivity ▪ Software quality [email protected] @phoenixhawk https://www.thinktecture.com Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Developer Consultant @ Thinktecture AG 3

Slide 4

Slide 4 text

4 ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 4

Slide 5

Slide 5 text

5 ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 5

Slide 6

Slide 6 text

6 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 6

Slide 7

Slide 7 text

7 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 7

Slide 8

Slide 8 text

Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Indexing & (Semantic) search Cleanup & Split Text Embedding Question Text Embedding Save Query Relevant Text Question LLM 8 Vector DB Embedding model Embedding model Indexing / Embedding QA

Slide 9

Slide 9 text

9 ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 9

Slide 10

Slide 10 text

10 ▪ ▪ ▪ ▪ ▪ ➔ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 10

Slide 11

Slide 11 text

11 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 11

Slide 12

Slide 12 text

12 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! ▪ ▪ ▪ ▪ ▪ 12

Slide 13

Slide 13 text

13 ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 13

Slide 14

Slide 14 text

14 ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 14

Slide 15

Slide 15 text

15 ▪ ▪ Ԧ 𝑎 = 𝑎𝑥 𝑎𝑦 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 15

Slide 16

Slide 16 text

16 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Ԧ 𝑎 = 𝑎𝑥 𝑎𝑦 16

Slide 17

Slide 17 text

17 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Ԧ 𝑎 = 𝑎𝑥 𝑎𝑦 𝑎𝑧 17

Slide 18

Slide 18 text

18 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Ԧ 𝑎 = 𝑎𝑢 𝑎𝑣 𝑎𝑤 𝑎𝑥 𝑎𝑦 𝑎𝑧 18

Slide 19

Slide 19 text

19 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 19

Slide 20

Slide 20 text

20 𝐵𝑟𝑜𝑡ℎ𝑒𝑟 − 𝑀𝑎𝑛 + 𝑊𝑜𝑚𝑎𝑛 ≈ 𝑆𝑖𝑠𝑡𝑒𝑟 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Man Woman Brother Sister https://arxiv.org/abs/1301.3781 20

Slide 21

Slide 21 text

21 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! ▪ ▪ ▪ ▪ ▪ ▪ ▪ 21

Slide 22

Slide 22 text

22 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 0 22

Slide 23

Slide 23 text

23 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! [ 0.50451 , 0.68607 , -0.59517 , -0.022801, 0.60046 , -0.13498 , -0.08813 , 0.47377 , -0.61798 , -0.31012 , -0.076666, 1.493 , -0.034189, -0.98173 , 0.68229 , 0.81722 , -0.51874 , -0.31503 , -0.55809 , 0.66421 , 0.1961 , -0.13495 , -0.11476 , -0.30344 , 0.41177 , -2.223 , -1.0756 , -1.0783 , -0.34354 , 0.33505 , 1.9927 , -0.04234 , -0.64319 , 0.71125 , 0.49159 , 0.16754 , 0.34344 , -0.25663 , -0.8523 , 0.1661 , 0.40102 , 1.1685 , -1.0137 , -0.21585 , -0.15155 , 0.78321 , -0.91241 , -1.6106 , -0.64426 , -0.51042 ] 23 http://jalammar.github.io/illustrated-word2vec/

Slide 24

Slide 24 text

25 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! http://jalammar.github.io/illustrated-word2vec/ 25

Slide 25

Slide 25 text

26 ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 26

Slide 26

Slide 26 text

27 ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 27

Slide 27

Slide 27 text

Sentence Transformers, local embedding model Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 28

Slide 28

Slide 28 text

29 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 29

Slide 29

Slide 29 text

30 ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 30

Slide 30

Slide 30 text

▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Vector-Databases ▪ 31

Slide 31

Slide 31 text

32 ▪ ▪ 𝑆𝐶(a,b) = a ∙𝑏 𝑎 × 𝑏 ▪ ▪ ▪ ~ ▪ ∞ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 32

Slide 32

Slide 32 text

LangChain, Chroma, local embedding model Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 33

Slide 33

Slide 33 text

34 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 34

Slide 34

Slide 34 text

35 ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 35

Slide 35

Slide 35 text

36 ▪ Import documents from different sources, in different formats ▪ LangChain has very strong support for loading data ▪ Support for cleanup ▪ Support for splitting Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 36 https://python.langchain.com/docs/integrations/document_loaders

Slide 36

Slide 36 text

37 ▪ HTML Tags ▪ Formatting information ▪ Normalization ▪ lowercasing ▪ stemming, lemmatization ▪ remove punctuation & stop words ▪ Enrichment ▪ tagging ▪ keywords, categories ▪ metadata Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 37

Slide 37

Slide 37 text

38 ▪ Document is too large / too much content / not concise enough Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! ▪ by size (text length) ▪ by character (\n\n) ▪ by paragraph, sentence, words (until small enough) ▪ by size (tokens) ▪ overlapping chunks (token-wise) ▪ by semantics (semantic chunker) 38

Slide 38

Slide 38 text

39 ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 𝑎 𝑏 𝑐 … 39

Slide 39

Slide 39 text

40 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 40

Slide 40

Slide 40 text

41 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 𝑎 𝑏 𝑐 … “What is the name of the teacher?” Doc. 1: 0.86 Doc. 2: 0.84 Doc. 3: 0.79 … (Answer generation) 41

Slide 41

Slide 41 text

LangChain, Chroma, local embedding model, OpenAI GPT Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 42

Slide 42

Slide 42 text

43 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 43

Slide 43

Slide 43 text

44 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! ? 44

Slide 44

Slide 44 text

45 ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 45

Slide 45

Slide 45 text

46 ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! LLM, e.g. GPT-3.5-turbo Embedding 𝑎 𝑏 𝑐 … Vector- Database Doc. 3: 0.86 Doc. 2: 0.81 Doc. 1: 0.81 Weighted result Hypothetical Document Embedding- Model Write a company policy that contains all information which will answer the given question: {QUERY} “What should I do, if I missed the last train?” https://arxiv.org/abs/2212.10496 46

Slide 46

Slide 46 text

47 ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 47

Slide 47

Slide 47 text

48 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Write 3 questions, which are answered by the following document. 𝑎 𝑏 𝑐 … 48

Slide 48

Slide 48 text

49 ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 𝑎 𝑏 𝑐 … Doc. 3: 0.89 Doc. 1: 0.86 Doc. 2: 0.76 “What should I do, if I missed the last train?” 49

Slide 49

Slide 49 text

LangChain, Qdrant, OpenAI GPT Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 50

Slide 50

Slide 50 text

51 ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 51

Slide 51

Slide 51 text

52 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Introduction Embeddings Vector-DBs Indexing Retrieval Indexing II RAG 52

Slide 52

Slide 52 text

53 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 𝑎 𝑏 𝑐 … “You can get a hotel room or take a cab. € 200 to € 300 might still be okay to get you to your destination. Please make sure to ask the cab driver for a fixed fee upfront.” Answer the user’s question. Relevant document: {SearchResult} Question: {Query} “What should I do, if I missed the last train?” 53

Slide 53

Slide 53 text

Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! Indexing & (Semantic) search Cleanup & Split Text Embedding Question Text Embedding Save Query Relevant Text Question LLM 54 Vector DB Embedding model Embedding model Indexing / Embedding QA

Slide 54

Slide 54 text

55 Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 55

Slide 55

Slide 55 text

57 ▪ ▪ ▪ Real-World Chat mit Unternehmensdaten: Advanced RAG jenseits von "Hallo Welt"! 57

Slide 56

Slide 56 text

https://github.com/thinktecture-labs/dwx-2024-advanced-rag 58

Slide 57

Slide 57 text

No content