This project deploys an XGBoost machine learning model as a cloud-based inference API using FastAPI. The model predicts participant engagement behavior during online meetings based on Recall.ai participant event data extracted from Zoom meetings.
The API is designed to support a larger event-driven engagement analytics pipeline that processes participant activity after meetings end.
Purpose
The purpose of this model is to classify meeting participants into behavioral engagement groups using engineered participation features derived from Recall.ai event streams.
The model predicts one of three engagement labels:
Label
Meaning
Silent Observer
Participant attended but rarely or never verbally engaged
Occasional Participant
Participant engaged intermittently
Active Participant
Participant frequently engaged verbally and behaviorally
Input Features
The model uses the following engineered features:
Feature
Description
total_time
Total amount of time participant remained in the meeting
was_webcam_on
Binary indicator for whether webcam was used
screenshare_usage
Number of screenshare events triggered
never_spoke
Binary indicator for whether participant never spoke
speech_turns
Number of speaking sessions detected
Data Source
The input data is generated from Recall.ai participant event logs collected from Zoom meetings.
Examples of participant events include:
join
leave
speech_on
speech_off
webcam_on
webcam_off
screenshare_on
screenshare_off
These events are processed into participant-level behavioral features before inference.
Model Architecture
Component
Value
Model Type
XGBoost Classifier
Task
Multi-class Classification
Output Classes
3
Training Data
Recall.ai participant meeting features
Framework
xgboost
API Framework
FastAPI
API Endpoints
Health Check
GET /
Returns API health status.
Example Response
json
1{2"status":"running"3}
Prediction Endpoint
POST /predict
Runs engagement classification on participant feature rows.