What is Sportify?
Sportify is a task-oriented conversational AI built with Google Dialogflow CX. It provides fans with real-time football information for the English Premier League, from live scores and team stats to player details. By leveraging a robust Natural Language Understanding (NLU) engine and a scalable cloud architecture, Sportify delivers accurate, timely data through natural conversation.
Robust NLU Engine
Powered by Dialogflow CX to accurately understand user queries and extract key information (slots) for precise answers.
Real-Time EPL Data
Integrates with live sports APIs to provide up-to-the-minute scores, standings, and match details.
Scalable Deployment
Uses Google Cloud Functions for a serverless, efficient, and highly scalable webhook backend.
NLU Performance Deep Dive
The chatbot's ability to understand users was rigorously tested. The Natural Language Understanding (NLU) model was evaluated based on its ability to correctly identify user intents and extract relevant details from the conversation. Here's a look at the performance.
Overall NLU Accuracy
The chatbot achieved an impressive overall accuracy score in real-world user evaluations.
Peak User Test Score
Intent F1 Scores
Note: The `WinLossRecord` intent shows an opportunity for improvement. Its lower score was due to keyword overlap with other intents, a key insight for future NLU model tuning.
How It Works: System Architecture
Sportify processes user requests through a streamlined, cloud-based architecture. The flow ensures a quick and accurate response by seamlessly connecting the user interface with live data sources.
User Query
"Who is Chelsea playing next?"
Dialogflow CX
NLU & Intent Matching
GCP Webhook
Python Backend Logic
Football API
Fetch Real-Time Data
The Future of Sportify
Broader Coverage
Expanding to more sports like NBA, Rugby, and F1.
Custom Personas
Allowing users to choose a chatbot personality, like a famous commentator.
Advanced Visuals
Integrating video highlights and animated graphs for richer responses.
Multi-Language
Adding support for more languages to reach a global audience.