This is my personal Blog.
< Go Back

What is this?

I want to use this blog to write things that are on my mind. Don't take things too serious and if you disagree with opinions on that page feel free to write me a massage!

Prompt Engineer(ing)

Recently, a friend of mine came across the, let's say, fascinating job title: the "Prompt Engineer". This position involves crafting prompts for large language models or tools like ChatGPT, DALLE, Copilot or ThE nEw BiNg. However, I couldn't help but think that this job reveals how unprepared we are for the so called AI revolution. Is it truly necessary to have an entire profession dedicated to creating prompts for machines that are designed to mimic communication? To me, being a Prompt Engineer seems comparable to being an individual who knows how to use Google proficiently. I have never heard of someone earning $150,000 per year for simply having such a skill. Don't get me wrong – ChatGPT is a remarkable tool that is already helping countless people. However, the ability to use it effectively should not necessarily be considered a job, but rather a mandatory skill for the future. In my quest to better understand the role of a Prompt Engineer, I watched several educational videos. Unfortunately, nothing stood out to me as particularly enlightening or novel. To spare you the time, I have condensed the most crucial insights I gathered from those courses.
  • You can edit your prompt in ChatGPT by clicking on the little pen and paper symbol right next to the submitted prompt.
  • The more specific the prompt, the more specific your answer... yeah groundbreaking isn't it?
  • Refer to the previous prompts and answers to refine the model or to guide it... so basically your conducting an interrogation and you want to get the information out of the suspect, in that case the model.
  • Use commands in your prompt (that is actually helpful). For example:
    Task: Explain the structure of a protein.
    Target group: Mathematician with a little bit of biological knowledge.
    Don use: Complex terms such as Polymerase.
Or you just prompt this and you stick to it:
Task: Give me the best 20 tips for prompt engineering!
Context: Large Language Models
Target Group: People who want to use ChatGPT effectively.

Chat GPT

I am not exaggerating when I say that the publication of ChatGPT might mark the beginning of a small revolution of education and the working life, and I think this is as close as we have come to artificial intelligence depicted in movies (whether this is a positive or negative thing is up to you). But lets clarify first, what it is and how it works. ChatGPT is an offshoot or a specification of the GPT-3 language model that specializes in conducting realistic dialogues! GPT stands for Generative Pre-trained Transformer and GPT-3 is the third generation of this architecture, who would have thought? It is an impressive autoregressive natural language processing (NLP) machine learning model developed by the company OpenAI. The model was trained on an enormous dataset of human-generated text, gathered from the internet with commoncrawl or extracted from books. Commoncrawl is an open source organization that stores internet archives and gathers text from platforms such as Wikipedia, Reddit or Twitter and makes it available for the public. Huge datasets that are used to extract information from it are also known as Big-Data - you might already have heard this term - and this use-case is a very good example for that. ChatGPT is a huge model (800GB) that uses a so-called transformer architecture, which basically means that it aims to learn understanding and generating realistic sounding answers to a prompt / question by "reading" a vast amount of text from which words or even whole sentences were masked-out. Syntax and semantics are learned by predicting the masked out words or sentences and to either "reward or punish" the model based on the quality of their prediction. It tried to visualize this concept down below. In step 1 the model predicts the term "tree" for the masked out word so the prediction is "Hello my tree is Adrian". I think we can agree that this does not make much sense so we tell the model what we want to see instead, namely the word "name". Having this information the model updates itself with a magical process called backpropagation (details are ignored for now) so that in step 2 it has learned that the desired word is "name". We reward the model for providing the correct prediction.

This is of course as boiled down explanation of what is actually going on, but it should be enough to get a general understanding of how a machine learning model is learning. ChatGPT uses an even more advanced method called Reinforced Learning from Human Feedback (RFHF) for training, in which linguists evaluate the quality of the model's responses and provide feedback to improve its performance. As a result, ChatGPT can conduct dialogues in various languages effectively and make references to previous answers and questions. However, this model is not sentient! In the end it's just a statistical model that gives you the most probable text answer to a provided question or phrase! Despite its obvious benefits, this tool of course yields some problems. The model was trained in 2021 and is not connected to the internet, thus it has no information about current events and news. But as far as I can assess, the connection to the internet will just be a matter of time. Sometimes the answers are incorrect because there is no mechanism (that I am aware of) to correct them. The system simply outputs the most likely answer, even if it is not accurate. But this is the nature of probability - even if you're 99% sure, there is still a 1% chance of being wrong! It even might provide a sexist or racist answer to a question, because of the training data that might be biased. I have even seen ChatGPT write an essay about why drug abuse sounds like a good idea, but this is not possible anymore. And this is the thing. I would be surprised if people at OpenAI are not aware of these mentioned problems so I guess many of these flaws will be taken care of in the next generations of the GPT models (maybe already for the upcoming GPT-4 model). And also, most of the time the problem is not the computer itself but the human in front of it. Fact-checking is always a good idea. There are also other variations and use cases of the GPT-3 model. Explainpaper for example let's you upload a pdf file and provides very precise and easy explanations of highlighted text. lets you generate R code to plot data that you want to analyze. If you haven't tried ChatGPT or any form of language model yet, I highly recommend getting familiar with these tools. I can imagine that they can be very helpful for any aspect of your life!
I even let it write a blog post about itself. It's impressive however it made itself even better than it actually is. Let's see if you find what's wrong!

Below you can find some inputs for ChatGPT that I find very interesting if you need some inspiration:
  • What is the best chess opening?
  • Can you make this sound more professional: Paste any text afterwards.
  • Can you create an introduction email for me containing all important information:
    Name: Mike
    Department: Human Recourses
    Hobbies: Football, Playing Board Games, Hiking
    And please include a quote of Albert Einstein!

    After this is done you can ask:

    Can you embed this mail into html and style it nicely with css. An animation with JavaScript would also be nice!
    And this is the result (The complete file was written and designed by this model)
  • Create the game snake in python!
  • Give me a nice tikka masala recipe with tofu!
  • Write me a detailed assay about Cambridge analytica!
  • Write a christmas message to my grandma!
  • Fill in the parentheses: The meaning of life is [].
  • Write a conversation between Bill Gates, Linus Torvalds and Tim Cook!
  • Write me a nice and easy to read blog post about ChatGPT!

Everyone should try to code.

I think that knowing at least one programming language will be the Microsoft Office of the next generations and that everyone should at least give it a try. Not only is it (most of the time) fun because it is like solving a puzzle, but it also teaches you a new way of solving problems by breaking it into smaller pieces and searching for the root cause, that comes in handy in many situations. Also it indicates that you are familiar with tech beyond using Whatsapp and Instagram. Programming is basically telling a computer how to handle things for you. If its writing a bash script to rename all files in a directory, creating some statistics about your current grades and how future exams will influence your final grade or writing a smart home automation with your phone that turns off the lights when you leave your home. All those projects are some sort of programming that are useful in everyday life and you should definitely give it a go.
Caution, self-promotion: Under Bits & Bites you can find some useful tips on how to get started with coding!

First blog entry

This is my first blog entry. I have no idea what to write here but hey, it's something...

This is a quote that is very important.
- Shakesbeer, a long time ago


I'd love to hear from you! Whether you have a question, feedback or just want to say hello, I'm always here to help. Fill out the form below and I'll get back to you as soon as possible. Thank you for reaching out! 😊