# Red Hat Developer Hub x OpenShift AI Demo

## Abstract

This project aims to enhance the user experience of internal developer portals by implementing an AI-powered recommendation engine. The engine takes into account the user's team membership, role, and behavior to provide personalized recommendations, making it easier for users to find relevant resources efficiently.

## Problem Statement

When adopting internal developer portals and thus implementing self-service and automation in an enterprise, the number of options can feel overwhelming for end-users. They need to be able to efficiently find resources that are relevant to what they are doing. The vast array of available resources and the lack of personalization can lead to a suboptimal user experience, reduced productivity, and underutilization of the developer portal's capabilities.

## Proposed Solution

To address this issue, we propose an AI-powered recommendation engine that takes the user's team membership, role, and behavior into account. By leveraging user-specific data and machine learning techniques, the recommendation engine can provide personalized suggestions, guiding users to the most relevant resources based on their context and past interactions.

### overview

The proposed solution consists of the following components:

- Generic analytics plugin for Backstage: A custom plugin that captures user events and associated metadata within the developer portal.
- Data ingestion and transformation: A microservice that serves as the event sink, transforming and writing the events to a Redis database.
- Self-contained system with local model: The recommendation engine is designed as a self-contained system, utilizing a local machine learning model for generating recommendations.
- OpenShift AI: The processing of user data and generation of recommendations is handled by OpenShift AI, leveraging its capabilities for scalable and efficient computation.
- Backstage frontend plugin for displaying recommendations: A plugin that seamlessly integrates with the developer portal's frontend, presenting personalized recommendations to the user.
- Reinforcement mechanism: A feedback loop that allows users to provide thumbs up/down ratings and comments on the recommendations, enabling continuous improvement of the recommendation model.

[diagram]

### data capture

Custom backstage plugin that records events and associated metadata

### data generation

Selinium IDE to record a library of user actions combined

### data ingestion and transformation

Microservice that serves as the event sink and transforms & writes the event to redis

### processing

OpenShift AI

### display recommendations

Backstage frontend plugin... you might also be interested in x...

### reinforcement

Backstage frontend plugin (thumbs up/down + comments)
