Workshop Room 1 

11:40 - 12:40 


Workshop (60 min)

Part 2/2: Building a movie recommendation app with TensorFlow and pgvector

The underlying idea is quite straightforward. Let's consider the example of a movie recommendation system. The goal is to represent each movie in our catalog as a vector, a numerical representation of a piece of text.

Machine Learning

Once we also convert the search phrase into a vector, we step into a whole new realm—a multidimensional space where these vectors replace the original text values. Through some mathematical techniques, we can determine which movie representations are closest to the vector representing our search query.

How do we create such vector representations? We need an AI model trained on vast amounts of data to recognize patterns and effectively convert text phrases into vectors. This is where TensorFlow comes into play, providing libraries to convert text into vectors running locally on our machines. We'll be using a library called the universal sentence encoder.

All of this you’ll learn in our workshop, we'll work together to build a movie recommendation system from start to finish, utilizing NodeJS, TensorFlow, and PostgreSQL’s extension pgvector. We'll guide you through the process of creating the vector embeddings using TensorFlow right on your laptop. Additionally, we'll leverage pg-promise to efficiently handle bulk row inserts, and we'll explore the usage of Next.js for a full-stack project. By the end of the workshop, you'll have a fully functional project that generates movie recommendations.

We assume you have some familiarity with NodeJS and a willingness to take on challenges. Don't worry, though, because we'll be there to walk you through every step.

This session is particularly beneficial for those who are intrigued by contextual search and usage of AI, but might find themselves overwhelmed by the complexities to get started.

Tibs (Tony Ibbs)

Tibs (Tony Ibbs) moved into Developer Relations on joining Aiven at the start of 2022. Before that, they were a software developer, working in fields such as mapping and GIS (geographic information systems), set-top boxes (and embedded Linux), and backend cloud services (Python and Flask or Django; Ruby and Rails).

They have always cared about developer education, and this wish to help colleagues understand their current favourite technologies made the move to Developer Relations feel natural. They’re also enthusiastic about helping others get started speaking at conferences.

They are fascinated with documentation and how it is written, and have spoken on the history of text markup, and on mechanisms for automated "linting" of text. They have attended PyCon UK since its inception, and ran the Cambridge Python User Group (CamPUG) from 2007-2022.

Pronouns are they/them or he/him, and preferred name is Tibs.

Olena Kutsenko

Olena is a seasoned expert in data, sustainable software development, and teamwork. With a background in software engineering, she's led teams and developed mission-critical applications at Nokia, HERE Technologies, and AWS. Currently, she works at Aiven where she supports developers and customers in using open-source data technologies such as Apache Kafka, ClickHouse, and OpenSearch. She is also an international public speaker and regularly present at conferences around the world. She holds AWS Developer and Solutions Architect certifications, and is also a Confluent Catalyst.