Learn to create a movie pitch generator, a GPT-4 chatbot, and fine-tune a chatbot with your data.
Ready to get your hands on OpenAI-powered apps?
Look no further. In this course, you'll build three projects using the OpenAI API.
## Projects
#### MoviePitch:
In this introductory project, you'll dive into the world of AI with OpenAI's API. Explore how AI can generate creative movie ideas and visuals. The main concept that will cover are: Prompt engineering, utilizing the OpenAI API, generating human-standard content, and creating a movie pitch application.
By the end of this project, you'll have built a movie pitch generator that transforms one-sentence ideas into comprehensive movie outlines, demonstrating the power of AI-driven creativity.
![MoviePitch](https://res.cloudinary.com/dg3gyk0gu/image/upload/w_300,c_scale/v1686947262/course-resources/build-ai-apps-with-chatgpt-dall-e-and-gpt-4-42d767cc/moviepitch3.png)
#### KnowItAll:
Transition to the advanced GPT-4 model and develop an "ask-me-anything" chatbot named KnowItAll. You'll be leveraging the GPT-4 model, building interactive chatbots, implementing a Google Firebase database to persist conversations across sessions.
By the end you'll have a functional chatbot capable of answering a wide range of user questions, and users can seamlessly continue conversations after refreshing their browsers.
![KnowItAll](https://res.cloudinary.com/dg3gyk0gu/image/upload/w_300,c_scale/v1686947260/course-resources/build-ai-apps-with-chatgpt-dall-e-and-gpt-4-42d767cc/knowitall5.png)
#### Fine-Tuning Mastery:
Delve deeper into AI development by fine-tuning a chatbot with your own dataset. Discover how this customization can make your chatbot more useful and tailored to specific needs. You'll cover Fine-tuning models, uploading and training with custom datasets, addressing specific questions using AI, and securing API keys.
By the end of this project, you'll possess the crucial skill of fine-tuning AI models, enabling you to create chatbots optimized for specialized tasks, such as customer service.
![Fine-Tuning Mastery](https://res.cloudinary.com/dg3gyk0gu/image/upload/w_300,c_scale/v1686947258/course-resources/build-ai-apps-with-chatgpt-dall-e-and-gpt-4-42d767cc/wewingit3.png)
## Additional Skills You'll Gain:
**Firebase Database**: Learn how to store and reference chatbot conversations using Google Firebase, enhancing user interaction and continuity.
**API Key Security**: Understand the importance of securing API keys and use Netlify serverless functions to protect them, a critical aspect of deploying projects in real-world scenarios.
Throughout the course, you'll encounter several challenges designed to reinforce your learning. These hands-on exercises provide you with practical experience and help you develop the coding skills necessary to become a proficient developer.
By completing this course, you'll not only have a comprehensive understanding of AI integration through the OpenAI API but also gain valuable expertise in customizing and deploying AI-powered applications.
Whether you aim to enhance your portfolio or embark on innovative AI projects, this course equips you with the knowledge and skills to stay at the forefront of web development.
## Prerequisites:
This course primarily uses vanilla JavaScript. While the JavaScript involved is not overly complex, familiarity with basic fetch requests is beneficial.
Overview
Syllabus
- Course Intro
- MoviePitch Intro
- The Boilerplate
- Getting an OpenAI API Key
- Getting Info for fetch Request
- Building an OpenAI Fetch Request
- The First AI Fetch Request
- Models
- Tools
- Refactor to Use Dependency I - .env Variable
- Refactor to Use Dependency II - The Dependency
- Refactor to Use Dependency III - Update fetchReply
- Take Out of Scrimba
- Personalising the Message
- Tokens
- fetchSynopsis
- Aside: Few Shot Approach
- Aside: Few Shot Approach II
- Refactor fetchSynopsis
- Architecture
- Title and Temperature
- Reaching for the Stars
- Aside: createImage
- fetchImagePrompt
- Displaying the Image and Finishing off the UX
- Outro
- KnowItAll Intro
- Starter Code
- Aside: How ChatGPT Models Work for Chatbots
- Conversation and Instructions
- Add User input to Conversation Array
- The createChatCompletion Endpoint
- The Model and Object
- Render the Output, Update the Array
- Aside: Theory: Frequency and Presence Penalties
- presence_penalty Practice
- frequency_penalty Practice
- The Chatbot's Personality
- Firebase Intro
- Firebase Account and Database Set Up
- Firebase Dependency and Set Up
- Push Method and Instructions Object
- Update fetchReply
- Update fetchReply 2
- Update the Database
- Render the Conversation From the DB
- The "Start Over" Button
- Outro
- Intro to fine-tuning
- Convert the Chatbot to We-Wingit
- An Overview of the AI
- Data for fine-tuning
- The Data We're Using
- CLI 1: Setting Up The Environment
- CLI 2: Data Preparation Tool
- CLI 3: Tuning The Model
- Updating the JS 1
- Updating the JS 2
- Updating the JS 3
- The Separator
- Aside: Stop Sequence
- Adding the Stop Sequence
- n_epochs
- Intro to Deployment
- Download and GitHub
- Netlify sign-up
- Add Netlify env var
- Netlify CLI
- Netlify Serverless Function 1
- Update fetchReply
- Serverless Function 2
- Serverless Function 3
- Serverless Function 4
- Outro
Taught by
Tom Chant