Slide 1

Slide 1 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Christian Weyer Co-Founder & CTO @christianweyer Community Days Softwarearchitektur & Softwareentwicklung

Slide 2

Slide 2 text

§ Technology catalyst § AI-powered solutions § Pragmatic end-to-end architectures § Microsoft Regional Director § Microsoft MVP for Developer Technologies & Azure ASPInsider, AzureInsider § Google GDE for Web Technologies [email protected] @christianweyer https://www.thinktecture.com Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Christian Weyer Co-Founder & CTO @ Thinktecture AG 2

Slide 3

Slide 3 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Our journey today 3 AI all-the- things? LLMs in your Solutions Talk to your Data Exciting Times… Democratizing Generative AI Talk to your Systems

Slide 4

Slide 4 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen AI all-the-things? 4

Slide 5

Slide 5 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen A.I. 5

Slide 6

Slide 6 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen AI all-the-things? 6 Data Science Artificial Intelligence Machine Learning Unsupervised, supervised, reinforcement learning Deep Learning ANN, CNN, RNN etc. NLP Generative AI GAN, VAE, Transformers etc. Image / Video Generation GAN, VAE Large Language Models Transformers

Slide 7

Slide 7 text

§ LLMs generate text based on input § LLMs can understand text – this changes a lot § Without having to train them on data, domains, or use cases § Prompts are the universal interface (“UI”): unstructured text with semantics as input § Human language evolves as a first-class citizen in software architecture 🤯 Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Large Language Models (LLMs) 7 Text… – really, just text?

Slide 8

Slide 8 text

§ LLMs are programs § LLMs are highly specialized neural networks § LLMs use(d) lots of data § LLMs need a lot of resources to be operated § LLMs have an API to be used through Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Large Language Models demystified 8

Slide 9

Slide 9 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen LLMs in your Solutions 9

Slide 10

Slide 10 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Using LLMs: It’s just HTTP APIs Inference, FTW. 10

Slide 11

Slide 11 text

GPT API access Open AI Playground Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen DEMO 11

Slide 12

Slide 12 text

Barebones SDKs § E.g. Open AI SDK § Available for any programming language § Basic abstraction over HTTP APIs § Also available from other providers LangChain § Large community § Python and Typescript versions § Chains for sequences of LLM-related actions in code § Abstractions for § Prompts & LLMs § Memory § Vector stores § Tools § Loading text from a wide range of sources Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Building LLM-based end-to-end applications 12

Slide 13

Slide 13 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Talk to your Data 13

Slide 14

Slide 14 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Answering Questions on Data Retrieval-augmented generation (RAG) Cleanup & Split Text Embedding Question Text Embedding Save Query Relevant Text Question Answer LLM 14 Embedding model Embedding model 💡 Indexing / Embedding Question Answering Vector DB

Slide 15

Slide 15 text

RAG: Learning about company’s policies via Slack LangChain, Weaviate – Mixtral-8x7B on Groq Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen DEMO 15

Slide 16

Slide 16 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Talk to your Systems 16

Slide 17

Slide 17 text

§ Clever & strict prompting § Schema description: JSON, TypeScript types, etc. § Framework or tools support § Kor, TypeChat, etc. § Open AI Function Calling Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Extract structured data from textual information 17

Slide 18

Slide 18 text

Extracting structured data from text: Flight search OpenAI Function Calling, LangChain, FastAPI, JS - GPT-4-Turbo Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen DEMO 18

Slide 19

Slide 19 text

Extracting structured data from voice: Form filling JSON extraction, Angular Forms - Mixtral-8x7B on Groq Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen DEMO 19

Slide 20

Slide 20 text

§ Integrate LLM-external systems to aid LLMs § Tool / function calling standard established by OpenAI § LLM outputs JSON containing arguments to call one or many functions § LLM does not call the function § All major libs support tool calling § OpenAI SDKs § LangChain § Semantic Kernel § etc. Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Extending LLM capabilities 20 curl https://api.openai.com/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "gpt-3.5-turbo", "messages": [ { "role": "user", "content": "What is the weather like in Boston?" } ], "tools": [ { "type": "function", "function": { "name": "get_current_weather", "description": "Get the current weather in a given location", "parameters": { "type": "object", "properties": { "location": { "type": "string", "description": "The city and state, e.g. San Francisco, CA" }, "unit": { "type": "string", "enum": ["celsius", "fahrenheit"] } }, "required": ["location"] } } } ], "tool_choice": "auto" }'

Slide 21

Slide 21 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Talking to internal APIs – Ask for experts availability 21 Angular PWA Open AI Speech-to-Text Internal Systems Gateway Open AI GPT-4-T Open AI Text-to-Speech Transcribe spoken text Transcribed text Check for experts availability with text Extract { experts, booking times } from text Structured JSON data (Tool calling) Generate response with availability Response Response with experts availability 🗣 🔉 Speech-to-text for response Response audio Internal Company API Query Availability API Availability When is CL…? CL will be…

Slide 22

Slide 22 text

Ask for experts availability in my company systems Angular, Speech-to-text, internal HTTP API, node.js OpenAI SDK + Tool Calling, Text-to-speech – GPT-4-Turbo Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen DEMO 22

Slide 23

Slide 23 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Democratizing Generative AI 23

Slide 24

Slide 24 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen LLMs everywhere OpenAI-related (cloud) OpenAI Azure OpenAI Service Big cloud providers Google Model Garden on Vertex AI Amazon Bedrock Open-source Edge IoT Server Desktop Mobile Web 24 Other providers Antrophic Cohere Mistral AI Hugging Face Open-source

Slide 25

Slide 25 text

§ Open-source community drives innovation in Generative AI § Important factors § Use case § Parameter size § Quantization § Processing power needed § Mistral-based family shows big potential for local use cases (7B params) Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Open-source LLMs thrive 25

Slide 26

Slide 26 text

Local RAG: Mistral-7B open-source LLM llama.cpp, ollama, LangChain, StreamLit Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen DEMO 26

Slide 27

Slide 27 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Exciting Times… 27

Slide 28

Slide 28 text

§ LLMs enable new scenarios & use cases to incorporate human language into software solutions § Fast moving and changing field § Every week something “big” happens in LLM space § Frameworks & ecosystem are evolving together with LLMs § Closed vs open LLMs § Competition drives invention & advancement § SLMs: specialized, fine-tuned for domains § SISO (sh*t in, sh*t out) § Quality of results heavily depends on your data & input Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen Current state 28

Slide 29

Slide 29 text

Large Language Models, Daten & APIs Integration von Generative AI in eigene Anwendungen 2024: The year of SLMs & CPU inference 29

Slide 30

Slide 30 text

Thank you! Christian Weyer https://thinktecture.com/christian-weyer 30 Demos https://github.com/thinktecture-labs/summit-community-gen-ai