By clicking on “Accept all cookies”, you consent to the storage of cookies on your device to improve site navigation, analyze site usage and assist in our marketing efforts. View our Privacy Policy for more information.
May 3, 2024

Automate CV data extraction with AI | Workflow Make

Learn how to automate the process of extracting data from the CV using artificial intelligence.

How to automate the extraction of data from the CV with AI

If you're tired of manually extracting data from resumes and want to automate the process, you've found the right place! In this article, we'll guide you step by step on how to extract data from resumes with the help of artificial intelligence.

Curriculum analysis through a Make Workflow using Google Drive, OpenAI and Gmail connectors

Here's a workflow that automatically extracts data from resumes saved as PDF files. This process saves time and is crucial in sectors such as:

  • HR
  • Hiring Manager
  • Recruiter

Such a workflow helps you save time and reduce manual tasks such as:

  • Extracting data from a resume.
  • Comparison between a resume and job descriptions.
  • Sharing candidate information in a message.

Free yourself from the burden of manually extracting data and learn how to automate the process with our guide.

Step 1: Prerequisites

Before you begin, make sure you have the following prerequisites:

  • An account on Make
  • A connection to Google Drive
  • An OpenAI subscription with access to the GPT-4 model
  • A Gmail connection

Step 2: Configuring the Workflow

We'll use Make to orchestrate our workflow, which includes 1 Trigger, 9 actions, and 1 Flow Control. Start by setting up the following workflow:

1. Google Drive- Watch New Files

Use a trigger to monitor the addition of new files in the Google Drive folder containing the resumes. Remember that this form is only activated if the file is new, so, for example, if it's used for testing purposes, it's a good practice to move the file out of the folder and then back inside!

2. Google Drive- Download Files

The first stock consists of downloading the CV file to make it accessible for subsequent steps.

3. PDF.co- Convert to Text

Use the action PDF.co to convert PDF files to text for deeper analysis.

For simplicity, let's set the Execution Mode to asynchronous and the export type to JSON.

4.1 OPEN AI- Create a Completion_CV Analysis

Select an OpenAI template to analyze the content of resumes and extract relevant information.

This is also the phase where the art of prompt engineering comes into play. In this scenario we have 2 roles:

  • System: Context and General Background
  • User: Specific Indications and Guidelines

And 2 correspondents contents of the message:

  • System: Act as an 'X' role
  • User: Analyze 'A', provide 'B' with 'C' format

This will allow you to optimize your notes based on your preferences and specifications.

Curious to further explore the differences between roles? Feel free to consult the documentation of the Chat Completions API.

As shown in the previous screenshots, we have:

  • Role of the System → acts like attendant in the process of recruitment
  • User Role → set hierarchies And the nested structure ofthe JSON (the more specific and precise you are at this stage, the easier it is for OpenAI to analyze your CV and obtain the desired information)

4.2 IGNORE

This is a temporary solution for managing wrongs in Make.

OpenAI usually runs into a lot of runtime errors that we can't control as a third-party service, and if you don't have an error handler, your scenario stops.

This is crucial for skipping the following steps when OpenAI's previous chat completion action generates an error. However, if that doesn't happen, you can proceed with the next steps without a problem.

5. Google Drive- Move to File/Folder

Organize the analyzed resumes by moving them to a separate folder on Google Drive.

6. JSON

Create a JSON data structure and use the information collected in the previous step:

4.1 OPEN AI- Create a Completion_CV Analysis

7. Google Sheet- Add a Row

Create a Google sheet and Add one line for each CV analyzed.

Create a column for each field you analyzed:

  • Name
  • Comment
  • Last educational qualification obtained
  • School
  • Years of experience
  • ...

This depends on the fields specified when using OpenAI actions with a custom prompt as described in the section 4. Create a Completion - CV Analysis

In your data structure, you have a section dedicated to work history, which contains information such as the Job title, company and duration. Here's an example:

jsxCopy code
"Cronologia Lavorativa": [
{
"Titolo": "Scienziato dei dati",
"Azienda": "ABC Corporation",
"Durata": "2018 - Presente"
},
{
"Titolo": "Analista dati junior",
"Azienda": "XYZ Ltd.",
"Durata": "2016 - 2018"
}
]

To get the role and company from each work history record, you can use a combination of the built-in flatten and map functions. This will allow you to easily extract the desired information from your data structure:

8. OPEN AI- Create a Completion_Email Draft

Have an OpenAI template write a draft email with a summary of the candidate and the attached resume. Two roles are involved:

  • System → Act as a business manager by introducing a consultant for a project proposal
  • User → Specify the piece of information needed to draft the proposal. In this case, the CV data analyzed and saved in a Google sheet with custom fields

9. MARKDOWN- Generate Markdown

Use the content from the passage 7. Create a Completion - Email Draft to create a Markdown format optimized for displaying information.

10. GMAIL- Create a Mail Draft

Create a draft email using the candidate's summary and attached resume.

Step 3: Final Result

Et voilà

Here's what your draft email looks like 👇🏽

Congratulations! 🚀

Now you can save valuable time and make more informed hiring decisions. Don't forget to review the content before sending emails to candidates. 👀

Do you want to know more about how to optimize your personnel selection processes? Watch the our video tutorial on YouTube for an interactive step-by-step guide.

Don't forget to subscribe to Soraia Channel to stay updated on other use cases and automations 🤖

Good automation!

Tools Used

📣 NoCode Tool Matching Quiz.

Find the perfect tool for you, instantly.

Start quiz now
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.