Starting Your Journey into Generative AI: A Beginner's Guide
Tags: aws, genai, ai, beginners
Published: 2024-05-30 12:22:39

As an IT Professional or a STEM student, you've probably noticed the term "Generative AI" popping up more frequently. You might be wondering if it's just a trendy buzzword or if it could be a game-changer for your career.

In my recent discussions with leading university professors, students, and industry professionals, one question keeps surfacing: 

> "How can I dive into Generative AI to stand out from the crowd and propel my career forward?" 

If you're eager to explore this cutting-edge field and carve your path to success, you're in the right place. Let's embark on this exciting journey together.

Let's look at Generative AI in five dimensions

* [Traverse the Generative AI evolution](#evolution)
* [Generative AI use-cases across various industries](#usecase)
  * [Your fav. Social Media is transforming with GenAI](#social)
  * [Virtual Photo Studio – Build your own photo album by AI](#photo)
  * [Experience AI Image Generation](#image)
* [Discover the diverse career paths in Generative AI](#career)
* [Expand your knowledge and skills with Generative AI](#learn)
  * [Large Language Model from Computer Scientist, Andrej Karpathy](#andrej)
  * [Generative AI from Data Scientist, Shaw Talebi](#ds)
  * [Generative AI on Gartner](#gartner)
  * [Generative AI on AWS Cloud](#aws)
* [Build & grow with Generative AI](#build)
  * [How do I contribute back to the GenAI Community?](#community)
  * [The AI community building the future](#hug)
  * [Customize existing GenAI for your dataset](#finetune)


### <a name="evolution">Traverse the Generative AI evolution</a>

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/naadvoh881br4fuim0sg.png)

In the late 1950s, Andrey Markov's work on stochastic processes, specifically Markov chains, emerged as a statistical model capable of generating new sequences of data based on input. However, it was not until the 1990s and 2000s that machine learning truly began to shine, thanks to advancements in hardware and the increasing availability of digital data.

The evolution of Generative AI has been marked by a number of important breakthroughs that have each added a new chapter to its history.
Check out [some pivotal moments](https://bernardmarr.com/a-simple-guide-to-the-history-of-generative-ai/) that have reshaped the landscape of GenAI as depicted in the above image.

From the 1950s to 2022 is 7 decades. Comparatively, in recent years, the pace of evolution in Generative AI has been particularly rapid with advancements accelerating exponentially. The exact speed of advancement can vary based on specific breakthroughs and developments, but it's clear that the field has seen remarkable progress, especially in the last few years.

Gartner, the leading research and advisory company, substantiate the way forward with their forecast

> Generative AI software spend will rise from 8% of AI software in 2023 to 35% by 2027.

That shows a clear prediction and direction for the Generative AI aspirants to focus on their journey. Read more from [here](https://www.gartner.com/en/documents/4925331)

### <a name="usecase">Generative AI use-cases across various industries</a>
Generative AI (GenAI) has a wide range of use-cases globally across various industries
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0ofodn8fxzx1r4jnrc85.png)

#### <a name="social">Your fav. Social Media is transforming with GenAI​ </a>

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ad0wm5n7fzintpu4h7kh.png)
Refer [here](https://indianexpress.com/article/technology/artificial-intelligence/phone-apps-with-generative-ai-features-8690686/) for details

#### <a name="photo">Virtual Photo Studio – Build your own photo by AI​ </a>

The [YouCam Makeup app](https://youmakeup.page.link/PFwebsite_ymkblog) offers the most amazing AI avatar feature that can help you generate 50 to 100 AI images with the themes you like, for example

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ogk3rb6lmrnbsh3betev.png)


#### <a name="image">Experience AI Image Generation</a>

Generated below images for a given text (say "a boy and aunty sitting on a time machine") on [Freepik Image generator](https://www.freepik.com/ai/image-generator)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v2w6z9ygexw4u7ignws5.png)

And many more stories to create music, summarize text, generate new content etc.

Understanding the various use cases of Generative AI can provide valuable insights into the potential career paths available in this field. Exploring how Generative AI is applied in different industries can help you envision the impact you could make as a future AI professional.

### <a name="career">Discover the diverse career paths in Generative AI</a>

Discover the diverse career paths in Generative AI and explore how this innovative field is shaping the future of technology. From creating lifelike virtual worlds to revolutionizing healthcare diagnostics, Generative AI offers a multitude of exciting opportunities for those passionate about pushing the boundaries of artificial intelligence. Whether you're interested in art, science, or technology, there's a rewarding career path waiting for you in Generative AI.

- **Machine Learning Engineer (Generative Models):** Develop and deploy machine learning models, including generative models, for various applications.
- **Research Scientist (Generative AI):** Conduct research to advance the field of Generative AI, develop new algorithms, and publish findings in academic journals.
- **AI/ML Software Developer (Generative Models):** Develop software applications and systems that incorporate generative AI models for tasks such as image generation, text-to-speech, and more.
- **Data Scientist (Generative Modeling):** Analyze and interpret complex data sets to develop and implement generative models for data synthesis and augmentation.
- **AI Research Engineer (Generative Models):** Work on research projects to develop and improve generative models, often in collaboration with other researchers and engineers.
- **Deep Learning Engineer (Generative Models):** Design, train, and deploy deep learning models, including generative models, for various applications in computer vision, natural language processing, and more.
- **Computer Vision Engineer (Generative Models):** Develop computer vision algorithms and systems that incorporate generative models for tasks such as image synthesis and enhancement.
- **Natural Language Processing (NLP) Engineer (Generative Models):** Develop NLP models that can generate human-like text, dialogue, and other language-based outputs.
- **AI Ethics Researcher (Generative AI):** Explore the ethical implications of generative AI technologies and develop guidelines for responsible AI development and deployment.
- **AI Product Manager (Generative AI):** Manage the development and deployment of AI products that incorporate generative AI technologies, working closely with engineering and research teams.
- **AI Security Specialist (Generative AI):** Ensure the security and integrity of generative AI models and systems by identifying and mitigating potential security threats, implementing secure architecture, and ensuring compliance with data privacy regulations. They collaborate with AI developers, data scientists, and IT security teams to integrate security best practices into the development lifecycle of generative AI models.
These are just a few examples, and the field of Generative AI is rapidly evolving, creating new job opportunities and titles along the way.

Having delved into the myriad use cases and abundant job opportunities within Generative AI, you might now be eager to embark on your learning journey into this fascinating field.

### <a name="learn">Expand your knowledge and skills with Generative AI</a>

Allow me to guide you through various exploration opportunities at no cost, drawing insights from Andrej Karpathy, a Computer Scientist, Shaw Talebi, a Data Scientist and AI Educator, as well as Gartner, a prominent research and advisory firm, and AWS Cloud.

#### <a name="andrej">Large Language Model from Computer Scientist, Andrej Karpathy</a>
The common man became curious about Generative after the public announcement of ChatGPT and since then, LLM and Generative AI are often confused. 

**What is the difference between LLM and Generative AI?**

Large Language Models (LLMs) are a specific subset of Generative AI focused on understanding and generating human language, often used for tasks like text generation and translation. Generative AI, on the other hand, encompasses a broader range of AI techniques and applications beyond language, including the creation of images, music, and other types of content using artificial intelligence.

**Intro to LLM for Busy Bees**
Andrej Karpathy is a renowned computer scientist and AI researcher known for his work in deep learning and computer vision. He was former Director of AI at Tesla and was previously a Research Scientist at OpenAI. Karpathy is also an adjunct professor at Stanford University, where he teaches a course on Convolutional Neural Networks for Visual Recognition.

In his 1-hour video on Large Language Models (LLMs), Karpathy likely delves into the architecture, training, and applications of LLMs like GPT-3. He may discuss how these models have advanced natural language processing tasks and their implications for AI research and development. His insights are highly regarded in the AI community, making his video a valuable resource for those interested in learning about LLMs.

{% embed https://www.youtube.com/watch?v=zjkBMFhNj_g %}

#### <a name="ds">Generative AI from Data Scientist, Shaw Talebi</a>
Shaw Talebi is a highly respected AI educator and data scientist known for his deep knowledge and passion for artificial intelligence. He is renowned for his ability to simplify complex concepts, making them accessible and engaging for students and professionals alike. Shaw's innovative teaching methods and hands-on approach inspire learners to explore the limitless possibilities of AI, making him a valuable asset to the field of education and AI research.
Get started with AI Educator and Data Scientist [Shaw Talebi's Playlist](https://www.youtube.com/playlist?list=PLz-ep5RbHosU2hnz5ejezwaYpdMutMVB0) on GenAI related courses right from LLM, create an LLM, fine-tune and much more in a 11 part series.
Here you go with the first one and rest will follow
{% embed https://www.youtube.com/watch?v=tFHeUSJAYbE %}

#### <a name="gartner">Generative AI on Gartner</a>
Gartner is a leading research and advisory company known for providing valuable insights and strategic advice to businesses and IT professionals worldwide. With a focus on technology, Gartner helps organizations make informed decisions and navigate the complex landscape of digital transformation.

If you have more questions, Gartner can help you answer most of them [here](https://www.gartner.com/en/topics/generative-ai)

With the above learnings, if you are excited to build conversational streaming user interfaces for your AI-powered applications, try your hands with the open-source library,  [Vercel AI SDK](https://sdk.vercel.ai/).

#### <a name="aws">Generative AI on AWS Cloud</a>
GenAI models operate on vast amounts of training data, requiring thousands of GPU hours for training and fine-tuning. Consequently, a profound understanding of public cloud providers is essential due to their scalable infrastructure, high-performance computing resources, and cost-effective pricing models.

Here you go with the whole gamut of course on AWS cloud which is absolutely free on AWS Skill Builder
 [Note: You do not AWS Account to learn on AWS Skill Builder but you would AWS Account to explore Hands-On]

- New to AWS Skill Builder, start your journey [here](https://explore.skillbuilder.aws/learn/course/external/view/elearning/17763/foundations-of-prompt-engineering)
- [Getting started with AWS Cloud Essentials](https://explore.skillbuilder.aws/learn/course/external/view/elearning/15009/getting-started-with-aws-cloud-essentials) 
- [Building Language models on AWS](https://explore.skillbuilder.aws/learn/course/external/view/elearning/17556/building-language-models-on-aws)
- [Getting started with Amazon Bedrock](https://explore.skillbuilder.aws/learn/course/external/view/elearning/17508/amazon-bedrock-getting-started)

### <a name="build">Build & grow with Generative AI</a>
#### <a name="community">How do I contribute back to the GenAI Community?</a>
After learning about the job opportunities, upskilling through the learning materials, you might be wondering how to strengthen your public profile in the field of Generative AI. Consider contributing to the GenAI community through sharing your knowledge, participating in open-source projects, or attending industry events. By actively engaging with the community, you can not only enhance your skills but also contribute to the advancement of Generative AI as a whole.

Here is how.. 
> Imagine a Python developer starting their journey by learning the basics of the language, gradually mastering advanced concepts, and eventually showcasing their skills by sharing projects on GitHub. Similarly, a GenAI developer can begin by understanding the fundamentals of Generative AI, progressively honing their skills, and then contributing their customized or fine-tuned models to the larger community through platforms like Hugging Face.
> Just as a Python developer learns through practice, experimentation, and collaboration, a GenAI developer can follow a similar path. They can start by experimenting with pre-trained models, fine-tuning them for specific tasks, and then sharing their insights and models with others. This not only helps them grow as developers but also contributes to the advancement of the Generative AI field as a whole.

#### <a name="hug">The AI community building the future</a>

You will have many questions like these
1. Where can one find existing Generative AI models to use and experiment with?
2. If you create or fine-tune your own Generative AI model, how can you effectively share it with others in the community?

You can do all of this on a platform where the machine learning community collaborates on models, datasets and applications.

> Thats HuggingFace -> https://huggingface.co/

Hugging Face is a company and an open-source community known for its work in natural language processing (NLP) and AI. Hugging Face was founded in 2016, so as of 2024, the company is about 8 years old. They are particularly well-known for their development of Transformers, a popular open-source library for natural language processing. Hugging Face's Transformers library provides a simple and efficient way to use pre-trained models for various NLP tasks, such as text classification, translation, and text generation. They also offer a platform called the "Hugging Face Hub," where users can discover, share, and use pre-trained models and datasets for NLP tasks. Overall, Hugging Face has played a significant role in advancing the field of NLP and making state-of-the-art NLP models more accessible to developers and researchers.

Some information is not getting processed the way it is intended. right? 
Hold!! let's simplify with a known example. 

#### <a name="finetune">Customize existing GenAI for your dataset</a>

Customizing, also technically called as Fine-tuning, a Generative AI model is like taking a pre-trained model and giving it some extra training on a specific task or dataset (say your university graduate program details). This helps the model get better at that particular task, making it more useful for real-world applications.

By now everyone knows/used OpenAI's ChatGPT. 

Let's say you want to fine-tune the famous GPT-3 model from OpenAI and then commit it as a new model in the Hugging Face model hub. Here's a simplified example of how you might do that:


a. **Clone the Model:** 
First, you would clone the GPT-3 model from the Hugging Face model hub using the '_transformers_' library in Python:

```
from transformers import GPT3Model, GPT3Tokenizer

# Clone the GPT-3 model
model = GPT2Model.from_pretrained('gpt3')
tokenizer = GPT2Tokenizer.from_pretrained('gpt3')

```
b. **Fine-tune the Model:** 
Next, you would fine-tune the GPT-3 model on your specific dataset. 
Here is the Fine-Tuning Process..
_Step 1:_ Obtain a dataset containing details of university graduate programs, including program names, descriptions, admission requirements, etc.
_Step 2:_ Preprocess the dataset to format it appropriately for fine-tuning GPT-3.
_Step 3:_ Use the Hugging Face transformers library to fine-tune the GPT-3 model on the graduate program dataset. You can use a simple text generation task to train the model to generate program descriptions or answer questions about the programs.
_Step 4:_ Evaluate the fine-tuned model to ensure it performs well on the task.


For example, if you're working on a text generation task, you might fine-tune the model like this:

```
from transformers import Trainer, TrainingArguments

# Define your training arguments
training_args = TrainingArguments(
    per_device_train_batch_size=4,
    num_train_epochs=3,
    logging_dir='./logs',
)

# Define a Trainer for training the model
trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=your_train_dataset,
    eval_dataset=your_eval_dataset,
)

# Fine-tune the model
trainer.train()
```

c. **Commit the Model:** 
Once you've fine-tuned the model and are happy with its performance, you can commit it as a new model in the Hugging Face model hub using the '_push_to_hub_' method:

```
# Commit the fine-tuned model to the Hugging Face model hub
trainer.model.push_to_hub('graduate-program-gpt3')
```
This will create a new repository on the Hugging Face model hub containing your fine-tuned GPT-3 model, which you can then share with others or use in your own projects.
Please note that this example is simplified for illustrative purposes and may require additional steps or modifications depending on your specific use case.

> Come, and explore the exciting world of AI.

In conclusion, Generative AI offers a world of possibilities across industries, from healthcare to entertainment. The job opportunities in this field are diverse and promising, making it an exciting area for career growth. As you embark on your journey to learn and grow with Generative AI, remember to pay it forward by sharing your knowledge and contributing to the community. Take the first step today and explore the endless possibilities of Generative AI!

And most importantly, keep sharing your success stories with me on my [LinkedIn](https://www.linkedin.com/in/bhuvanas/). Your experiences and achievements inspire others in the Generative AI community and contribute to the collective growth and advancement of this exciting field.