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

AI in Software Development

AI in Software Development

I presented a talk on AI in software development at a Vortex company meeting. I started by explaining how GPT works to a non-technical audience, then covered the application areas and the current concerns when using AI. I ended with a look at the future by trying to answer the question 'will AI replace developers'.

Ivo Jansch

June 16, 2023
Tweet

More Decks by Ivo Jansch

Other Decks in Technology

Transcript

  1. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 AI

    in Software Development Vortex's Waterhole - June 14, 2023 Midjourney - "a waterhole in the jungle, but instead of animals there are only drones and robots. Movie style" Ivo Jansch [email protected] @ijansch
  2. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 DISCLAIMER

    By the time we finish this talk it's probably already outdated Midjourney - "a time machine, dr who style, landed alongside a waterhole in the jungle"
  3. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 Chapter

    1: How does Generative AI work? Midjourney - "a brain of a robot, full of neurons. Science fiction style"
  4. 2005 - 2015: Rise of Deep Learning Introducing layers into

    the field of machine learning: pixels grouped pixels edges green hues … a cat a cat staring a cat staring at you a cat at a waterhole in the jungle
  5. 2017: Invention of the Transformer Architecture Has nothing to do

    with The Transformers Has everything to do with a new, scalable architecture that created the ability to process large quantities of data and most importantly: - Self supervised learning - Self attention
  6. Understanding attention The cat drank from the waterhole until it

    was full The cat drank from the waterhole until it was empty
  7. Understanding attention The cat drank from the waterhole until it

    was full The cat drank from the waterhole until it was empty
  8. 2018: GPT Generative Predict the next word(s) from a sequence

    of words Pre-trained Trained on a large corpus of text Transformer Built on the transformer architecture
  9. Ok but how does it work? The cat drank from

    the waterhole until it was full Tokenizer creates tokens per layer: T, h, e, c, a, t, d, r, a, n, k, f, r, o, m, t, h, e, … The, cat, drank, from, the, water, hole, … The, cat, drank, from, the, waterhole, … The cat drank, from the waterhole, until it was full, ... All tokens get converted to numbers.
  10. The model learns relationships between tokens Cat Drink Pet Water

    Fat Rat C A T Jungle Rhyme Vast These are the 'parameters'
  11. Then it starts predicting Given a prompt, what is the

    most likely word that comes next What is a cat? Fat A pet
  12. Token by token Given a prompt, what is the most

    likely word that comes next Input: Why does a cat drink water? Prediction: A cat
  13. Token by token by token Given a prompt, what is

    the most likely word that comes next Input: Why does a cat drink water? A cat Prediction: needs
  14. Token by token by token by token Given a prompt,

    what is the most likely word that comes next Input: Why does a cat drink water? A cat needs Prediction: nutrition
  15. Token by token by token by token Given a prompt,

    what is the most likely word that comes next Done: Why does a cat drink water? A cat needs nutrition
  16. Disclaimer That was by no means a scientifically correct explanation.

    But explains in a very simplified way how it works.
  17. GPT's are "stochastic parrots" - They "understand" - Yet, they

    don't truly understand what they are talking about
  18. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 Chapter

    2: Application areas in development Midjourney - "a development team sitting around a table, everyone wearing AR glasses. Science fiction style"
  19. LLMs as tool in a chain SQL Query Document Database

    Factual Results Summarize LLM Present LLM Translate to query Request in natural language
  20. Good old "Rubber Duck Debugging" "In software engineering, rubber duck

    debugging is a method of debugging code by articulating a problem in spoken or written natural language. The name is a reference to a story in the book The Pragmatic Programmer in which a programmer would carry around a rubber duck and debug their code by forcing themselves to explain it, line by line, to the duck.
  21. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 Chapter

    3: The dark side Midjourney - "a postapocalyptic city run by AI, full of drones. Humans have disappeared or are enslaved. Photorealistic image"
  22. Existential concerns FAKE NEWS Asimov's first law of robotics: "a

    robot shall not harm a human, or by inaction allow a human to come to harm"
  23. Back to reality! AI tools are useful, but: • Ensure

    human supervision -> Code reviews • Be transparent about the use of AI • Pay attention to Terms & Conditions of the tools you use • Keep an eye on copyright legislation • Choose the right tool for the job ◦ ChatGPT is not the only player in town ◦ Consider open source alternatives such as LLAMA ▪ https://github.com/eugeneyan/open-llms
  24. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 Chapter

    4: The future Midjourney - "A robot and a human holding hands, watching the sunset in the distance. Science fiction style"
  25. Will AI replace developers? Visual Basic didn't make developers obsolete

    Outsourcing didn't make developers obsolete No-code systems didn't make developers obsolete AI won't make developers obsolete
  26. Will AI replace developers? Development is so much more than

    producing code. AI will make programming more productive, but we will still require software engineering.
  27. Vertrouwelijk Aangepast voor naam van het bedrijf Versie 1.0 THANK

    YOU!!! Vortex's Waterhole - June 14, 2023 Midjourney - "a waterhole in the jungle, but instead of animals there are only drones and robots. Movie style" Ivo Jansch [email protected] @ijansch