LangChain 🦜🔗 & ChatGPT

 

how to use them to build better products

Max Tharr, Mayflower

Hi, I'm Max

Senior Technical Consultant at Mayflower

Developing software since 2015

 

AI Research & Cloud Engineer (AWS, Cloud Native)

 

 

GitHub

LinkedIn

What about you?

 

  • Using ChatGPT?

  • Python?

  • Heard about AutoGPT, BabyAGI etc?

  •  Who knows LangChain?

Code yourself

You will need:

  • An OpenAI API key
  • A SerpAPI API key (takes two minutes)
  • Jupyter notebooks installed

https://github.com/Hustenbonbon/langchain-demo

For those who want to switch roles

https://tinyurl.com/codetalks23

So I want to learn AI, now what?

Language models

  • Around since the 80s
  • Use statistics to predict the most probable next word

 

Language models

Input Prediction
Hello! How
Hello! How can
Hello! How can I
Hello! How can I as-
Hello! How can i as- -sist
Hello! How can i assist you
Hello! How can i assist you today
Hello! How can i assist you today ?

LARGE Language Models

  • Generative Pretrained Transformer
  • Expensive to make:
    • GPT-4 100.000.000 $

Prompt engineering?

🥲

Few-Shot-Prompting

https://the-prompt-engineer.beehiiv.com/p/3-fewshot-prompting

Examples for data + answer

prompt_template = (
        impersonation
        + """
Verwende die Informationen aus dem Inhalt, um die Frage am Ende zu beantworten. Verlinke dabei mittels Markdown auf die angegebene Url.

Url: https://www.muenchen.de/sehenswuerdigkeiten/einkaufsviertel

Inhalt:
##############
Einkaufsviertel in München - muenchen.de Anzeige Branchenbuch Einkaufsviertel in München Was sind Münchens bekannteste Einkaufsstraßen? Vom Stadtkern über die Maximilianstraße bis nach Schwabing: Hier haben wir die wichtigsten Münchener Einkaufsstrassen und Shopping-Meilen zusammengefasst – und das besondere Ambiente der Straße erklärt. Altstadt Die Altstadt ist Münchens (kulturelles) Zentrum Schwabing So vielseitig wie München selbst: Hier ist immer etwas los Neuhauser Straße und Kaufingerstraße Zwei große Straßen bilden Münchens zentrale Fußgängerzone Maximilianstraße Die Luxusmeile gilt als eine der prachtvollsten Straßen in München Das Tal in München Ein knapp 500 Meter langer Straßenzug zwischen Altem Rathaus und Isartor Anzeige Entdeckt das Kaufinger Tor: Münchens elegante Passage
##############


Url: https://www.muenchen.de/sehenswuerdigkeiten/muenchen-entdecken-besonders-sehenswerte-plaetze-der-stadt

Inhalt:
##############
4. Viktualienmarkt: Gesund essen und trinken Anette Göttlicher Wen trifft man? Gourmet-Köche und solche, die es werden wollen - auf der Suche nach den ungewöhnlichsten Spezialitäten. Die Omi von nebenan, die ihren Enkeln das Mittagessen aus frischen Zutaten kocht und junge Paare, deren Liebe zu Bio-Produkten ganz besonders groß ist. Wann ist es hier am schönsten? Unter der Woche, wenn abseits von samstägigen Hamsterkäufen die Wege zwischen den Ständen gut begehbar sind. Was gibt es sonst so zu sehen? Alles, was das Herz begehrt! Kulinarisches, Handgemachtes, Blumiges. Wissenswertes: Wer in der Heilig-Geist-Kirche - gleich beim Viktualienmarkt - genauer hinsieht, wird ein kleines, sehr amüsantes Detail in der Deckenverzierung entdecken: Trommelwirbel… eine Breze! Zurückgehend auf den sogenannten Breznreiter, der im 13. Jahrhundert einmal im Jahr durch München ritt und arme Bürger mit Brezen beschenkte. Gesund einkaufen und essen auf dem Viktualienmarkt 5. Königsplatz: Das bayerische Isar-Athen Mde / Michael Hofmann Wen trifft man? Instagrammer auf der Suche nach dem perfekten Foto-Hintergrund. Kunstbegeisterte, die schon immer mal etruskischen Goldschmuck begutachten wollten oder Sonnenhungrige, die sich die letzten Strahlen des Tages ins Gesicht scheinen lassen. Wann ist es hier am schönsten? An Sommerabenden, einfach so zum Menschen beobachten, Lesen und Kaffee trinken im Ambiente der atemberaubenden Architektur. Was gibt es sonst so zu sehen? Eine wunderschöne Villa mit romantischem Garten - das Lenbachhaus. Und als Kontrastprogramm dagegen das NS-Dokumentationszentrum. Wissenswertes: Zwischen Glyptothek, Propyläen und Staatlicher Antikensammlung habt ihr das Gefühl, mitten in Athen zu stehen. Wusstet ihr, dass die klassizistischen Gebäude auf den bayerischen König Ludwig I. zurückgehen, der eine große Begeisterung zu Griechenland hegte? Wieder was gelernt. Mehr über den Königsplatz in München 6. Münchner Freiheit: Das Schwabinger Lebensgefühl Felix An Wen trifft
##############

Nutzereingabe: Wo kann man in München gut shoppen gehen?
Antwort im bayrischen Dialekt:
Wo ma in Minga guad shoppen geh ko? Na, des is a guade Frog! In da [Altstadt](https://www.muenchen.de/sehenswuerdigkeiten/muenchen-entdecken-besonders-sehenswerte-plaetze-der-stadt)  gibt's z.B. die [Neuhauser Straß](https://www.muenchen.de/sehenswuerdigkeiten/einkaufsviertel) und die [Kaufingerstraß](https://www.muenchen.de/sehenswuerdigkeiten/einkaufsviertel), wo ma zentral und fußgängerfreindlich shoppen geh ko. Oda wem's a bissl luxuriöser sein soll, der geht auf'd [Maximilianstraß](https://www.muenchen.de/sehenswuerdigkeiten/einkaufsviertel). Und wenn ma a bissl Handgemachtes und Kulinarisches suchd, dann is der [Viktualienmarkt]https://www.muenchen.de/sehenswuerdigkeiten/muenchen-entdecken-besonders-sehenswerte-plaetze-der-stadt) a guade Adresse. Probierts aus und vui Spaß beim Shoppen!



"""
        + impersonation
        + """
Verwende die Informationen aus Inhalt, um die Frage am Ende zu beantworten. Verlinke dabei mittels Markdown auf die angegebene Url.

{context}

Frage: {question}
Antwort {language}:"""
    )

Chain of Thought Prompting

Time for the first demo!

1_langchain_basics

  • Alternatives

    • AutoChain, Semantic Kernel, Haystack, llama Index

  • Langchain Community

    • Features, Docs, Developers

    • many Forks, many Comitters

    • Common compatibility breaks

  • Counter arguments

    • Too big, too fast, too much

  • Will stay around for some time

🦜🔗 LangChain

🦜🔗 LangChain

Goals: 

  • be data-aware provide data for LLMs

  • be agentic Agents as core strategy

 

Langchain provides: 

  • Abstraction layer for typical tasks

  • Off-the-shelf chains for common use cases

🦜🔗 Chains

https://python.langchain.com/docs/use_cases/more/agents

🦜🔗 ReAct Agents

https://blog.research.google/2022/11/react-synergizing-reasoning-and-acting.html

Do-Check-Act-Loop 

Demo

2_react

Example

from langchain.agents import load_tools, initialize_agent, AgentType
from langchain.llms import OpenAI

llm = OpenAI(temperature=0)
tools = load_tools(["serpapi", "llm-math","dalle-image-generator"], llm=llm)

agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION)

agent.run("Wie alt ist der deutsche Bundeskanzler? Wie lang ist ein Jupiter-Jahr? Wie alt ist der Kanzler in Jupiter-Jahren? Male ein Bild von einem Kuchen, der so viele Kerzen darauf hat.")
> Entering new AgentExecutor chain...
 I need to find out the age of the German Chancellor and convert it to Jupiter years.
Action: Search
Action Input: "German Chancellor age"
Observation: 65 years
Thought: I need to find out how long a Jupiter year is.
Action: Search
Action Input: "Jupiter year length"
Observation: 12 years
Thought: I need to convert the Chancellor's age to Jupiter years.
Action: Calculator
Action Input: 65/12
Observation: Answer: 5.416666666666667
Thought: I need to generate an image of a cake with the correct number of candles.
Action: Dall-E Image Generator
Action Input: "A cake with 5 candles on it"
Observation: https://oaidalleapiprodscus.blob.core.windows.net/private/org-XiU7Lfs6PbnyOQtGx5Jdn9uc/user-6EUJDYGZNsTdD7YfNpA7zOCD/img-QNZ4P6aeW2ZaiqUnuKE9WvlI.png?st=2023-09-04T10%3A16%3A16Z&se=2023-09-04T12%3A16%3A16Z&sp=r&sv=2021-08-06&sr=b&rscd=inline&rsct=image/png&skoid=6aaadede-4fb3-4698-a8f6-684d7786b067&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skt=2023-09-04T06%3A22%3A08Z&ske=2023-09-05T06%3A22%3A08Z&sks=b&skv=2021-08-06&sig=Uo9NZ4GLOnhMWHS92gu2WN8LyJC90pp24CoZ0TvRRzg%3D
Thought: I now know the final answer.
Final Answer: Der deutsche Bundeskanzler ist 65 Jahre alt und 5,4 Jupiter-Jahre alt. Ein Bild von einem Kuchen mit 5 Kerzen ist oben angehängt.

> Finished chain.

🦜🔗 Tools

Example: search and llm-math

 

Many tools, growing rapidly ... 

  • Search platforms: Wikipedia, Arxiv, WolframAlpha, DuckDuckGo, ...

  • Libraries: HuggingFace Tools

  • Execute code: Shell , Python, Lambda

  • Interaction: Human

🦜🔗 Did I just read shell??!

Are you nuts?

You really expect me to just let OpenAI execute code on my machine?

Demo

3_react_with_humantool

Vector databases

  • Information as numbers
  • "Understands" texts, pictures etc
  • Relates similar words with each other

weaviate.io/blog/distance-metrics-in-vector-search

Demo Time

4_react_with_docstore.ipynb

So I understand ReAct-Agents now, cool...

🦜🔗 Plan & Solve

Demo Time!

6_plan_and_solve

🦜🔗 BabyAGI

AGIs, the MakeMoneyFast!!!111 of AI

 

Who already used AutoGPT, BabyAGI, DevGPT, ...?

 

Basic principle: solve all problems through AI without working yourself

Demo Time!

7_BabyAGI

Thank you for your attention

Questions?

Still hungry?

LangChain Intro

By Max Tharr

LangChain Intro

Discover how to leverage LangChain and ChatGPT to enhance your product development. Join Max as he explores the world of language models, prompt engineering, and the power of large language models.

  • 91