## Introduction

ChatGPT has rapidly gained prominence as one of the most advanced conversational AI models, captivating users with its ability to generate human-like text across diverse topics. While the free version of ChatGPT has gained popularity, ChatGPT Plugins for students and institutions allow users to customize their experience, browse the web, and access specialized knowledge modules tailored to specific industries or interests.

ChatGPT plugins provide a platform for improving students’ educational experiences in colleges and institutions. These plugins can customize the chatbot’s responses to meet certain academic demands by incorporating specialized tools and resources. The capabilities of the main model are increased by plugins, which can be language translation services, subject-specific insights, or solving challenging math problems. Additionally, with varying learning preferences, they can facilitate new and improved methods of learning.

#### Learning Objectives

- Understand the foundational use cases of ChatGPT plugins.
- Dive into a curated list of popular and impactful ChatGPT plugins for students and educational institutions.
- Analyze real-world use cases where these plugins can be used by students to learn new concepts, understand, analyze, and solve problems.
- Deep Dive into code-based input and output generation for data analysis with ChatGPT Plugins.

This article was published as a part of the Data Science Blogathon.

## Generative AI and ChatGPT Plugins

Generative AI has revolutionized the way we create, analyze, and interact digitally so that machines to produce novel outputs from given inputs. While ChatGPT has become a popular platform for its ability to generate coherent and contextually relevant responses, the integration of plugins allows for more specialized functionalities, seamless integration with other software, and a tailored user experience that caters to several industries, including educational institutions and students.

## Popular ChatGPT Plugins for Students

Some of the popular ChatGPT Plugins for students are:

**Diagrams:**The Diagrams plugin for ChatGPT-4 facilitates visual explanations with diagrams. It supports different syntaxes like Mermaid, GraphViz, PlantUML, and many more. Users can process explanations, or modifications to existing diagrams.**ScholarAI:**ScholarAI is a plugin that can be used to access peer-reviewed academic papers and research studies. With this plugin, students can swiftly query pertinent peer-reviewed research, ensuring the data is trustworthy for improving scientific studies and gaining insights.**Chat With PDF:**The Chat With PDF can access and query PDF files from the internet through ChatGPT. This robust utility simplifies the process of getting insights from PDFs by mentioning the link. Students can then pose questions or seek specific details from the document’s content.**Wolfram**: The Wolfram plugin enhances ChatGPT’s capabilities by connecting it to computational tools, mathematical functions, well-organized information, up-to-the-minute data, and visualization features. This can be further combined with other plugins like Diagrams to read, process, and calculate math with the data taken from input diagrams.**Video Insights**: Video Insights plugin helps analyze video content in real-time and gain valuable insights. Students can use the plugin to quickly recap and revise key concepts from long lecture videos and create notes.**Open lecture**: Open lecture plugin can be used to access university-level content and lectures. It is about possessing a digital archive of university talks, books, and study notes right in your pocket.**Code Interpreter:**Code Interpreter is a multifunctional plugin that enhances the AI chatbot’s ability to upload data, write and edit code, and perform different operations and analysis. You can ask ChatGPT to analyze data, create charts, edit files, perform math, and use it for data analytics, and more.

## Diagrams Plugin

Let’s take an in-depth look at the Diagrams Plugin and its usage. The Diagrams Plugin can be used to create visualization to represent complex ideas and processes. By leveraging its capabilities, students can draw digital diagrams by describing them.

**For Example**: A student of data science wants to visualize neural networks and create a diagram for them by describing their features and details.

**Prompt: **Describe a neural network with 5 hidden layers. Add all types of details to the diagram like random values of weights in each hidden layer, random values of bias in each hidden layer, multiple numbers of neurons in each layer, activation function, and other information. Use gpt4, do not use plugins.

#### Response from ChatGPT

```
Input Layer: This is where the data is fed into the network. The number of neurons
in this layer corresponds to the number of input features.
Hidden Layers (1 to 5): These layers are where the magic happens. Each neuron in a
hidden layer receives input from all the neurons of the previous layer, processes
it (using weights, bias, and an activation function), and sends its output to all
the neurons in the next layer.
Output Layer: This layer produces the final prediction or classification. The number
of neurons here typically corresponds to the number of classes or outputs.
Input Layer
| Neuron 1
| Neuron 2
| ...
| Neuron N
Hidden Layer 1
| Neuron 1 (Weight: 0.5, Bias: 0.3, Activation: ReLU)
| Neuron 2 (Weight: 0.7, Bias: 0.2, Activation: ReLU)
| ...
| Neuron M
Hidden Layer 2
| Neuron 1 (Weight: 0.6, Bias: 0.1, Activation: ReLU)
| Neuron 2 (Weight: 0.8, Bias: 0.4, Activation: ReLU)
| ...
| Neuron O
Hidden Layer 3
| Neuron 1 (Weight: 0.4, Bias: 0.5, Activation: ReLU)
| Neuron 2 (Weight: 0.9, Bias: 0.2, Activation: ReLU)
| ...
| Neuron P
Hidden Layer 4
| Neuron 1 (Weight: 0.3, Bias: 0.3, Activation: ReLU)
| Neuron 2 (Weight: 0.7, Bias: 0.6, Activation: ReLU)
| ...
| Neuron Q
Hidden Layer 5
| Neuron 1 (Weight: 0.5, Bias: 0.4, Activation: ReLU)
| Neuron 2 (Weight: 0.6, Bias: 0.7, Activation: ReLU)
| ...
| Neuron R
Output Layer
| Neuron 1 (Weight: 0.8, Bias: 0.5, Activation: Sigmoid)
| Neuron 2 (Weight: 0.9, Bias: 0.6, Activation: Sigmoid)
| ...
| Neuron S
```

**Follow-up Prompt: **Now use the diagrams plugin to create a neural network based on the above data.

#### Response from ChatGPT

```
Here is the neural network diagram with labeled weights and biases for each neuron:
In this diagram:
Each circle represents a neuron.The labels inside the neurons in the hidden
layers and output layer indicate the weights (W) and biases (B) for that neuron.
The connections (depicted in blue) represent the flow of data and the weights
between the neurons.
```

The diagram can be further changed or improved. The diagram can be created using specific raw GraphViz formats that can be tested on kroki.io. Using this format, the user can automate creating specific diagrams modify the values, and change the layout with pinpoint accuracy.

Let’s look at a simple example:

**Follow-up Prompt:** Paste the raw diagram source in the Graphviz format of the above diagram for kroki.io.

#### Response from ChatGPT

```
digraph G {
rankdir=LR;
node [shape=circle, style=filled, color=lightblue];
subgraph cluster_0 {
label="Input Layer";
I1;
I2;
I3 [label="..."];
I4;
}
subgraph cluster_1 {
label="Hidden Layer 1";
H11 [label="W: 0.5\nB: 0.3"];
H12 [label="W: 0.7\nB: 0.2"];
H13 [label="..."];
H14;
}
subgraph cluster_2 {
label="Hidden Layer 2";
H21 [label="W: 0.6\nB: 0.1"];
H22 [label="W: 0.8\nB: 0.4"];
H23 [label="..."];
H24;
}
subgraph cluster_3 {
label="Hidden Layer 3";
H31 [label="W: 0.4\nB: 0.5"];
H32 [label="W: 0.9\nB: 0.2"];
H33 [label="..."];
H34;
}
subgraph cluster_4 {
label="Hidden Layer 4";
H41 [label="W: 0.3\nB: 0.3"];
H42 [label="W: 0.7\nB: 0.6"];
H43 [label="..."];
H44;
}
subgraph cluster_5 {
label="Hidden Layer 5";
H51 [label="W: 0.5\nB: 0.4"];
H52 [label="W: 0.6\nB: 0.7"];
H53 [label="..."];
H54;
}
subgraph cluster_6 {
label="Output Layer";
O1 [label="W: 0.8\nB: 0.5"];
O2 [label="W: 0.9\nB: 0.6"];
O3 [label="..."];
O4;
}
{I1 I2 I3 I4} -> {H11 H12 H13 H14} [color=blue];
{H11 H12 H13 H14} -> {H21 H22 H23 H24} [color=blue];
{H21 H22 H23 H24} -> {H31 H32 H33 H34} [color=blue];
{H31 H32 H33 H34} -> {H41 H42 H43 H44} [color=blue];
{H41 H42 H43 H44} -> {H51 H52 H53 H54} [color=blue];
{H51 H52 H53 H54} -> {O1 O2 O3 O4} [color=blue];
}
```

When we paste this Graphviz image raw code into kroki.io we can see the diagram. Each of these parts of the diagram is flexible to change.

## Chat with PDF Plugin

The Chat With PDF Plugin is useful for students to quickly summarize PDFs and note down the key ideas. For example, data science researchers can quickly summarize and jot down the keynotes from research papers. Below is an example of the same for a paper about ‘A Comprehensive Overview of Large Language Models‘.

**Prompt:** Summarize the following PDF about large language models: https://arxiv.org/pdf/2307.06435.pdf

**Response from ChatGPT: **The provided excerpts from the PDF seem to primarily consist of details about various large language models (LLMs) and their configurations, datasets, and references. Here’s a summarized overview based on the extracted content.

The document discusses various LLMs, including but not limited to:

- ERNIE 3.0
- Jurassic-1
- HyperCLOV A
- Gopher
- GPT-NeoX-20B
- BLOOM
- Galactica
- GLaM
- LaMDA
- MT-NLG
- AlphaCode
- Chinchilla
- PaLM
- AlexaTM
- Sparrow
- U-PaLM
- GLM
- CodeGen
- LLaMA
- PanGu-Σ
- Bloomberg GPT
- and many more.

#### Datasets

- QuAC: Simulates an information-seeking dialog between students and teachers using hidden Wikipedia text. It introduces unique challenges not found in machine comprehension datasets.
- COPA: Evaluates a model’s progress in open-domain commonsense causal reasoning. Each question comprises a premise and two alternatives, and the model must select the more plausible alternative.
- WSC (Winograd Schema Challenge): A reading comprehension task where a system must resolve references in a text, often requiring world knowledge and reasoning.
- RACE: A reading comprehension dataset collected from English examinations in China, benchmarking AI models for understanding and answering questions on long and complex passages.
- StrategyQA: Requires reasoning over multiple pieces of evidence to evaluate the strategic reasoning ability of AI models.
- CSQA (CommonsenseQA): A question-answering dataset that requires commonsense knowledge.
- GLUE (General Language Understanding Evaluation): A collection of resources for training, evaluating, and analyzing natural language understanding systems. It includes a variety of tasks that test a wide range of linguistic phenomena.

#### Architecture

- Layer Normalization: Has a significant effect on the performance and training stability of LLMs. Pre-norm (normalizing inputs rather than outputs) is more common among LLMs. Some models utilize an additional layer normalization before the embedding layer for stability. However, there are debates on the benefits of pre-norm beyond certain scales.
- Positional Encoding: Affects the performance and training stability of LLMs. Different models have found varying results with different positional encoding techniques, such as ALiBi and rotary positional encodings.
- Parallel Attention: This involves having attention and feed-forward layers parallel to each other.

The document also delves into the architectural modules used in various LLMs, emphasizing that minor changes in architecture and training strategies can have a significant impact on performance and stability. The paper discusses the effects of layer normalization, positional encoding, and parallel attention on the performance of LLMs.

## Wolfram Plugin

**The Wolfram plugin can be used by students to solve math, draw graphs, and much more using textual descriptions. Below is an example of a simple linear regression math problem solved using the Wolfram plugin:**

**Prompt: **Using the Wolfram plugin, solve the following question:

**Question**: Linear Regression Analysis

A researcher is studying the relationship between the number of hours students study and their final exam scores. The data collected from a sample of 10 students is provided below:

**Tasks**:

- Plot the data on a scatter plot with “Hours Studied” on the x-axis and “Exam Score” on the y-axis.
- Calculate the equation of the best-fit line (linear regression line) for the given data.
- Using the equation, predict the exam score for a student who studied for 7 hours.
- Calculate the coefficient of determination (R^2) and interpret its meaning.
- Discuss outliers or patterns in the data.

#### Response from ChatGPT

Here are the results of the linear regression analysis for the given data:

- Least-squares best fit (linear regression line equation): y= 5.02597x + 45.1039

**Fit Diagnostics**

- AIC (Akaike Information Criterion): 6.21293
- BIC (Bayesian Information Criterion): 7.12068
- R2 (Coefficient of Determination): 0.998999
- Adjusted R2: 0.998874

**Plot of the least-squares fit**

**Plot of the Residuals**:

Using the equation y=5.02597x+45.1039, we can predict the exam score for a student who studied for 7 hours:

y=5.02597(7)+45.1039

Let’s calculate this prediction.

For a student who studied for 7 hours, the predicted exam score is approximately y≈80.29.

**To summarize**

- The equation of the best-fit line (linear regression line) for the given data is y=5.02597x+45.1039.
- The predicted exam score for a student who studied for 7 hours is approximately 80.29.
- The coefficient of determination R2 is 0.998999, which indicates that approximately 99.9% of the variance in the exam scores can be explained by the number of hours studied. This suggests a solid linear relationship between the two variables.
- The residuals plot and the high R2 value suggest that the linear model fits the data well.

## Code Interpreter Plugin (Advanced Data Analysis Plugin)

The Advanced Data Analysis plugin (earlier Code Interpreter) can be used to upload CSVs, perform analysis on them, run certain ML models, and predict outputs. Here is an example:

The dataset Moonlanding.csv contains information on all attempts to land on the moon. Let’s ask the ChatGPT Data Analysis Plugin to perform EDA and show the results.

**Prompt: **This is a dataset about all moon landings. Do exploratory data analysis on it and show all the results.

#### Response from ChatGPT

```
# Try reading the dataset using a different encoding
moon_landing_data = pd.read_csv('/mnt/data/Moonlanding.csv', encoding='ISO-8859-1')
# Display the first few rows
moon_landing_data.head()
# Basic statistics and information about the dataset
# Summary statistics of numerical columns
summary_stats = moon_landing_data.describe()
# Data type and non-null count of each column
data_info = moon_landing_data.info()
unique_values = moon_landing_data.nunique()
summary_stats, unique_values
```

#### From the Basic Statistics and Information

- The dataset contains 158 records.
- All columns are of the object (string) data type.
- “Additional Information” has one missing value.
- There are 147 unique mission names, but there are 158 unique spacecraft names, suggesting some missions might have multiple spacecraft or the same mission name was used more than once.
- The “Carrier Rocket” has 51 unique types, with the most frequent being “Proton-K/D”.
- The dataset contains records from 22 different operators, with “United States NASA” being the most frequent.
- There are 13 unique mission types, with “Orbiter” being the most frequent.
- The “Outcome” column has 6 unique values, with “Successful” being the most frequent.

```
import matplotlib.pyplot as plt
import seaborn as sns
# Set up the figure and axis
plt.figure(figsize=(12, 6))
# Plotting the distribution of missions based on their outcomes
sns.countplot(data=moon_landing_data, y='Outcome',
order=moon_landing_data['Outcome'].value_counts().index, palette="viridis")
plt.title('Distribution of Missions Based on Their Outcomes')
plt.xlabel('Number of Missions')
plt.ylabel('Outcome')
plt.tight_layout()
plt.show()
```

The visualization provides insights into the distribution of moon missions based on their outcomes:

- The majority of the missions have been successful.
- A significant number faced launch failures.
- There are also a good number of missions with outcomes categorized as “Partial failure” or “Mission failure.”

The visualization provides insights into the temporal distribution of moon missions:

- The late 1950s and 1960s saw a surge in moon missions. This period corresponds to the space race between the USA and the USSR.
- There was a decline in moon missions in the late 1970s, 1980s, and early 1990s.
- Starting from the mid-1990s and continuing into the 2000s and 2020s, there’s an increasing trend in moon missions, indicating renewed interest in lunar exploration.

The visualization provides insights into the distribution of moon missions based on their type:

- Orbiter missions are the most common, suggesting that many missions aimed to orbit the moon without landing.
- Flyby and Impactor missions are also relatively frequent.
- There are fewer Rover, Sample Return, and Lander missions, indicating that missions involving physical interaction with the moon’s surface are less common.

```
# Top 5 most frequent carrier rockets
top_rockets = moon_landing_data['Carrier Rocket'].value_counts().head(5)
top_rockets
```

#### Carrier Rockets

The top 5 most frequently used carrier rockets for moon missions are:

- Proton-K/D with 24 missions.
- Molniya-M with 12 missions.
- SLS Block 1 with 11 missions.
- Saturn V with 10 missions.
- Luna with 9 missions.

This information provides a glimpse into the popular rockets chosen for moon missions over the years. That concludes our initial exploratory data analysis on the moon landing dataset.

## Conclusion

ChatGPT stands as a testament to the evolution of conversational AI, offering more than just simple dialogue. The integration of plugins, especially for students and universities, is a transformative approach to improving learning methods. From providing visual explanations with the Diagrams plugin to accessing academic papers, or even analytics and EDA with the Code Interpreter plugin, ChatGPT plugins find several use cases for students. Furthermore, these plugins can be seamlessly integrated like combining the Diagrams and Wolfram plugins for visualizing math problems, exemplifying the synergy and potential of these plugins.

#### Key Takeaways

**Enhanced Capabilities with Plugins:**ChatGPT Plus plugins allow users to customize their experience, access specialized knowledge, and integrate with other software, thereby catering to specific industries or interests.**Educational Transformation:**For students and academic institutions, plugins such as Diagrams and Scholar AI offer tailored learning experiences, facilitating everything from visual explanations to accessing peer-reviewed research.**Versatility of Plugins:**Multiple plugins can be used in multiple ways by students to learn and create educational content at ease with simple prompts. While the diagrams plugin makes it easy to create and modify any diagram, Wolfram allows the user to solve simple to complex math problems easily using natural language prompts.

## Frequently Asked Questions

**Q1. What is the main difference between the free version of ChatGPT and ChatGPT Plus?**

A. While the free version of ChatGPT offers basic conversational AI capabilities, ChatGPT Plus boasts additional features, notably the integration of plugins. These plugins enhance user experience, offer customization, and provide access to specialized knowledge modules tailored to specific industries or interests.

**Q2. How do ChatGPT plugins benefit students and educational institutions?**

A. ChatGPT plugins offer a transformative approach to learning. They can tailor the chatbot’s responses to specific academic needs, such as solving complex math problems, offering language translation, providing subject-specific insights, and more. This results in a more interactive and personalized study session, adapting to individual learning styles.

**Q3. Are ChatGPT plugins integrated with other software?**

A. Yes, many ChatGPT plugins are integrated with various platforms. For instance, the Chat With PDF plugin allows users to query PDF files from the web, while the Wolfram plugin connects to Wolfram Alpha and the Wolfram Language for advanced computations.

**Q4. How do I use the Diagram” plugin in ChatGPT?**

A. The Diagrams plugin allows users to request visual explanations, process explanations, or modify existing diagrams. You can simply provide a description or details of what you’d like visualized, and ChatGPT, utilizing the plugin, can render various types of diagrams to assist with explanations.

**Q5. Are there any real-world use cases provided in the blog for the plugins?**

A. The blog offers practical demonstrations and examples of how the plugins can be utilized. For instance, it showcases how the Diagrams plugin can be employed to visualize neural networks or how the Code Interpreter plugin can be harnessed for exploratory data analysis on a given dataset.

**The media shown in this article is not owned by Analytics Vidhya and is used at the Author’s discretion.**

*Related*