SAIDE | the AI that finds you a human, then leaves

When you'd normally open a chatbot at 2 AM, call SAIDE instead. It listens, finds a student going through something similar, introduces you, and then leaves.

GitHub · Call SAIDE: (606) 357-1925

The problem and who it's for

It's 2 AM. You're questioning your major, missing home, or feeling like everyone around you has their life figured out. Your friends are asleep, your parents are miles away, and you don't know who to talk to. But ChatGPT is awake.

AI chatbots are always available, patient, and often agreeable. That makes them easy to turn to for emotional support, but it can also encourage AI emotional dependency, where talking to a chatbot starts replacing the harder work of connecting with real people. Recent studies even show that almost 1 in 5 young people are turn to chatbots for emotional needs.

SAIDE is for college students who find themselves turning to AI for companionship instead of reaching out to someone. Universities are full of people navigating the same struggles without knowing it. We built SAIDE to help them find each other, using the immediacy of AI to create human connection rather than replace it.

The SAIDE loop

Call → Understand → Match → Introduce → Leave

If someone compatible is already calling, SAIDE's live-merge flow is designed to connect them directly. Otherwise, the current prototype introduces the caller to a matched profile through the app. Crisis-flagged callers are excluded from peer matching and shown fixed 988 resources.

Where we utilize the AI (and where we don’t)

Matching two strangers who describe the same experience in completely different words requires more than keyword search or shared interests.

Meta: Bringing People Closer Together with AI

Most AI companions are designed to keep conversations going. saide does the opposite. Our goal is to minimize time to human, using AI to understand students, find meaningful matches, and then step out of the conversation.

We use Meta Muse Voice Transcribe + Muse Spark to power this experience:

  • Real-time transcription: Muse Voice Transcribe converts phone conversations into text as students speak.
  • Adaptive conversations: Muse Spark asks personalized follow-up questions instead of following a fixed questionnaire, helping students explain what they're going through naturally.
  • Structured profile extraction: After each response, Muse Spark identifies the student's situation, themes, interests, needs, and confidence levels, continuously updating their profile.
  • Human-first handoff: Once a match is found, saide introduces the students and leaves. "saide left the chat."
  • Safety checks: Muse Spark flags potential crisis situations, preventing peer matching and directing callers to fixed 988 resources instead.

The goal isn't to keep students talking to AI. It's to get them talking to each other.

Saide Architecture

Snowflake: Understanding the meaning

Snowflake Cortex AI_EMBED (snowflake-arctic-embed-m-v1.5, 768 dimensions) transforms each student's situation into a semantic embedding. This allows SAIDE to recognize similar experiences even when students describe them using completely different words.

Saide Decision Flow

Tiger Data: Finding the match

Tiger Data + pgvector search these embeddings and apply eligibility rules to find compatible students in approximately 2.8 ms inside the database. TimescaleDB's time-series capabilities also help predict when similar callers might be available and measure our core metric, time to human.

Saide Tiger Data

SerpApi: Connecting students beyond the match

SerpApi helps students discover real support resources at their universities, including peer mentoring, counseling services, first-generation programs, and student organizations. We filter results to official university websites, giving students additional ways to build human connections beyond their matched peer.

Google Gemma 4 generated 1,000 fictional students across 50 universities and 25 situations. Gemini 2.5 Flash powers their clearly labeled simulated chat responses, allowing us to demonstrate the full experience without real participants.

Our biggest improvement came from a failed experiment. Initially, we embedded entire profiles. A student who enjoyed cooking got matched with someone homesick for their family's food. The model recognized related words but missed the actual problem. We changed the system to embed only the student's situation, using hobbies for icebreakers instead.

We also evaluated 3,000 same-situation and different-situation pairs. Since 95% of unrelated pairs scored below 0.83, we selected 0.83 as our operational similarity cutoff. Same-situation matches in testing scored approximately 0.86–0.92. These results measure semantic similarity on synthetic profiles, not real-world friendship compatibility.

Where AI isn't necessary, we don't force it: matching eligibility uses SQL, hold-or-go forecasting uses time-series calculations, and crisis routing uses fixed resources rather than generated counseling.

[Sequence: a phone conversation becomes a human introduction]

Why it's original

Most products tackling loneliness with AI build a better AI companion: more personalized, more empathetic, more available. But that can reinforce the very behavior we're trying to address. SAIDE is an AI designed to make itself unnecessary. It provides the immediate response people seek from chatbots, but uses that interaction to connect them with someone real.

Four decisions make that concrete:

  • A call, not another chatbot. Students can explain what's happening out loud, without writing prompts or filling out lengthy forms.
  • The struggle, not the résumé. We match on lived situations rather than majors, hobbies, or demographic similarities.
  • Availability matters. Tiger Data's time-series forecasting estimates whether a compatible caller might arrive within 90 seconds, helping determine whether to hold for a live connection or introduce someone asynchronously.
  • An actual exit. The AI doesn't stay in the conversation or suggest replies. Once the introduction is made, it leaves.

[The SAIDE difference — AI companionship vs. AI-facilitated human connection]

Tools, harnesses, and models — and what each one bought us

Product stack

Layer What Why it mattered
Calls Twilio Voice + Media Streams A real phone number with streamed call audio
Voice AI Meta Muse Voice Transcribe, Muse Spark, ElevenLabs Adaptive conversations and structured profile extraction
Embeddings Snowflake Cortex AI_EMBED, Arctic Embed M v1.5; MiniLM fallback Meaning-based matching with a backup
Matching Tiger Data, PostgreSQL, pgvector Vector search and eligibility in one query; approximately 2.8 ms database-side
Analytics TimescaleDB hypertables + continuous aggregates Call-pattern forecasting and time-to-human metrics
Resources SerpApi Official university support resources, cached by school
Synthetic data Google Gemma 4 + Gemini 2.5 Flash 1,000 fictional students and clearly labeled simulated conversations
Backend Python, FastAPI Connects the hotline, matching engine, and interfaces
Student app Mobile web app Match explanations, conversations, and campus resources
Dashboard React, Vite, Three.js Live transcripts, 3D embedding visualization, and people graph

Test and evaluation harnesses

  • calibrate.py — evaluated 3,000 student pairs to calibrate the matching threshold instead of guessing.
  • test_live_cell.py + test_package.py — replay operator responses turn by turn, testing profile updates, matches, forecasting, and crisis exclusions.
  • test_record.py — tests matching against sanitized real-call outputs with phone numbers and transcripts removed.
  • bench.py — separates database search latency from end-to-end API latency.
  • Resilience testing — freezing the API mid-chat confirmed that messages persist, retries work, and recovery doesn't duplicate messages.

Tiger Data time-series evaluation: We generated 82,000 synthetic call events over 14 days. Continuous aggregates power forecasts by situation and hour, plus p50/p90 time-to-human measurements. Raw events compress after two hours (17.7 MB → 5.4 MB in testing) and expire after 24 hours.

Build-process tools

  • Claude helped develop the matching pipeline, integrate Snowflake and Tiger Data, build the mobile experience, and combine the four team members' contributions.
  • Claude-assisted design produced the mobile screens, which we connected to live backend data.

What's real today, what's next

Working today: You can call (606) 357-1925, speak with the AI operator, receive a semantic match, see why you matched, find official campus resources, and chat in the mobile app. The 1,000 matching profiles and historical call events are synthetic, and simulated students are labeled.

The demo currently runs on a laptop through tunnels. SMS delivery was built but awaits U.S. carrier registration; the live call-merging path exists but hasn't been fully validated with two simultaneous callers.

Before connecting real students, we need university email and phone verification, explicit consent, reporting and blocking, stronger safety review, and always-on hosting. We'd also measure whether introductions actually lead to meaningful conversations rather than relying on similarity scores alone.

Most AI companions measure how long they can keep you talking. SAIDE measures how quickly it can give you someone else to talk to.

Built With

Share this project:

Updates

Submission history