Smart flashcards: How to generate effective lessons with ChatGPT

Creating learning materials like flashcards by hand can be time-consuming and repetitive. Retrieval practice using flashcards is one of the most effective learning methods, but how can you make well-crafted flashcards as quickly as possible to allow yourself or your students to start applying retrieval practice? As our previous blogpost explained, making flashcards is not the part that yields the most effective learning. Weinstein, McDermott and Roediger (2010) showed learning results from self-made flashcards as well as the others flashcards were more effective than rereading the material, but did not differ significantly from each other. Furthermore, manually creating flashcards involves gathering key terms, definitions, and key concepts from source material, like study books, which requires effort. Using our whitepaper’s practical guidance for creating effective flashcards and ChatGPT, we found a way to speed up this process, allowing teachers and students to create high-quality lessons more efficiently.

Skip to prompt creation instructions

Previous solutions

We’ve tackled parts of this challenge before. In the past, we used large language models (LLMs) like ChatGPT to:

  • Format Lists: Take an unformatted list and prepare it for upload into the MemoryLab editor (e.g., format “Hello – Hallo” pairs for an uploadable language lesson).
  • Generate Lessons from Scratch: Create entire lessons based on:
    • The LLM’s general knowledge (e.g., create a cognitive psychology lesson),
    • A piece of text (e.g., create a lesson based on a 1000-word article extract),
    • A glossary list from a book (e.g., create a lesson based on a given list of terms from textbook margins).

Limitations

These methods have been helpful, but come with some limitations:

  1. The need for pre-formatted lists: Most of us don’t have a neatly typed list of vocabulary or terms ready for upload. If there’s no such list, it still means copying and pasting terms individually—a task we’re trying to avoid.
  2. Lack of context and accuracy: Relying solely on ChatGPT’s general knowledge can sometimes lead to misleading or overly generic definitions. For example, if you ask for a definition of “light,” ChatGPT may not know whether you mean light as in “weight” or “visible light.” Or take “validity”—a statistics book might define it very precisely, while a history text may only give a general sense. Without context clues from the book, ChatGPT may provide definitions that miss these nuances.

In short, to efficiently and easily create quality lessons, it’s useful to work from original source material whenever possible. All prompts below have been tested on the premium version of ChatGPT (GPT 4o), but the free version can also be used.

Generate lessons using different source materials

So how can you leverage ChatGPT to create effective flashcards? Start by selecting your source material. You might have:

  • 1) A digital book, document or summary
  • 2) A physical book 
  • 3) A vocabulary list photo

Scenario #1: A digital book, document or summary

Follow the steps and copy all the coloured text into a single prompt. For reference here’s a full prompt example:

Show full prompt

Step 1: Get a single book chapter or summary

Extract a chapter from the book PDF and clean up irrelevant pages. This prevents ChatGPT from mixing content across chapters.

Step 2: Describe the task

Describe to the model what you want it to do; creating a .csv file with flashcard items, what type of input it will get (a summary or book chapter), and how it should perform its task:

Furthermore you could specify some details on the specific input you’re giving. For example, sometimes key terms are italicised or definitions in brackets and you want the LLM to certainly use those:

Step 3: Explain the expected CSV output

We want the LLM to output a MemoryLab importable lesson file. Therefore we need to explain what that looks like.

Step 4: Give an example of your expected output

Make sure to give the model examples on what your output should look like. It is a good idea to insert your own example data here. The LLM generates much better data then. The model is able to generate distractor multiple choice answers well. It uses terms from the book that a student could reasonably expect to need to differentiate between, like the example below:

Step 5: Warn the LLM for common errors

Guide ChatGPT to avoid these common errors: 

  1. Avoid using the exact answer word in the cue

  1. Don’t repeat terms in one lesson.

Step 6: Warn the LLM for file generation problems it usually has

ChatGPT often gets stuck generating files. Below are some technical things to prevent ChatGPT from getting stuck generating the file:

Does ChatGPT still get stuck? Try the following:

  • If ChatGPT gets stuck you can also ask it to not generate the file but output a copyable comma-separated list like the csv. This also circumvents the need for the premium version that can output files, but does require you to copy the text to a .txt file and change the filename extension from .txt to .csv. 
  • Furthermore, if the LLM runs into issues, opening a new chat and inputting the same query can sometimes lead to better results. Also, I used to input the same prompt each chapter that I generated a lesson of to make sure the LLM does not ‘forget the prompt instructions’. It can have a tendency to neglect previously known instructions.

Step 7: Input the prompt and check output for common problems

After you’ve modified and copied all the parts above to set up the full query, input it like this. Check the file that ChatGPT gave back and look for the following list of things. You can copy these texts and ask the LLM to come up with fixes. Give the PDF as input again so that it knows the correct context.

  • Questions where the answer is already given in the question: For example:
    • cue: ‘Spontaan herstel van hersenfuncties zonder behandeling’ 
    • answer: ‘Spontaan herstel’
    • revised cue: ‘Natuurlijke proces waarbij hersenfuncties na een letsel verbeteren zonder interventie’
  • Duplicate answers: If you see any duplicate correct answers in the file, that is, the same answer in multiple rows, copy them and ask the LLM to merge the flashcard items into one item. The cue should still be 15 words or less. 
  • Distractors that do not fit the question: Find unfitting distractors, and come up with better, more fitting distractors. That is, make sure distractors are similar enough to the answer and written in a similar manner. For example:
    • cue: ‘Hersengebied verantwoordelijk voor motorische beweging’
    • answer: ‘Motorische cortex’
    • distractors: ‘Neuroplasticiteit || Synaptogenese || Gedragscompensatie’
    • revised distractors: ‘Basale ganglia || Pariëtaalkwab || Cerebellum’
  • Distractors too similar to the answer: Manually find distractors that too closely resemble the correct answer. Some distractor answers are so close to the actual answer that they could be considered correct. For example:
    • ‘Statistische maat voor de sterkte en richting van een relatie tussen twee variabelen’ had the correct answer ‘Correlatiecoefficient’ and a distractor ‘Regressiecoefficient’.

Step 8: Import the CSV as an Excel file and import into MemoryLab

Import the .csv files into Excel. Then you can move on to https://my.memorylab.app, https://mijn.slimstampen.nl, or any other MemoryLab domain and import the Excel file and create an open answer or multiple choice lesson.

Scenario #2: A physical book

If you only have a physical copy of the book, you can still generate effective flashcards with a few extra steps. Scan (or photograph) the relevant pages and use optical character recognition (OCR) to turn them into machine-readable text (e.g., using Adobe Acrobat Pro). Then, follow the same steps as above to generate flashcards.

Show full prompt

Scenario #3: A vocabulary list photo 

For quick generation from a vocabulary list, take a photo of the list. Then, give ChatGPT a prompt to create a CSV file where each word pair forms a flashcard item.

Show full prompt

Step 1: Take a picture of your vocabulary list

To skip over retyping this list we can simply ask the LLM to read from a picture that you make of that list. See for example the following list of items from a high school book:

Step 2: Describe the task

Step 3: Explaining the CSV output

We want the LLM to output a MemoryLab importable lesson file. Therefore we need to explain what that looks like.

Step 4: Give an example of your output

Make sure to give the model examples on what your output should look like.

In theory we could extend step 3 and ask ChatGPT to provide alternative spellings of answers and answers that would also be considered correct. In that case we could provide an example with an alternative correct answer and an alternative spelling:

Step 5 and 6: Warn the LLM for file generation problems it usually has

Use the same input as in step 6 previously to warn ChatGPT for generation errors. 

Step 7 and 8: Input the full prompt, check the output and import into MemoryLab

Step 7 can be reduced to simply checking whether the output has the expected output and does not contain any errors. 

Conclusion

While ChatGPT can generate a large part of your MemoryLab flashcards, human review remains essential. This hybrid approach—combining AI with expert oversight—ensures accurate, high-quality lessons while saving time. Whether using digital summaries, physical textbooks, or even a quick photo, this method can make lesson creation more efficient and adaptable.

Get in touch with us

Fill out the form

Or send us a message

International Partnership Coordinator assisting you in adaptive learning solutions

Nathan McCabe

International Partnership Coordinator

Partnership & Operations Manager offering adaptive learning solutions

Saar Speijers

Partnership & Operations Manager​

Offerte aanvragen?

Vul het onderstaande formulier in:

Of mail naar:

Aan de slag!

Wilt u meer weten?

Vul het onderstaande formulier in:

Of mail naar: