Project Info
Inspiration
In today’s digital world, misinformation spreads rapidly, influencing critical areas like politics and health. With the exponential growth of online information —both true and misleading— fact-checking has never been more important. AI has revolutionized research, enabling in-depth analysis at a speed and depth impossible for humans. We believe AI should play a crucial role in ensuring discussions remain informed, reliable, and insightful. Inspired by Socrates' pursuit of truth, we built SocratesAI, an AI-powered real-time fact-checking assistant for Zoom calls. What It Does SocratesAI is an AI agent that actively listens to conversations during Zoom meetings, continuously fact-checking statements by searching the web in real time. It not only verifies the reliability of spoken information but also enriches discussions with relevant insights and supporting data. At the end of each call, it provides a summary report with key insights, flagged inaccuracies, and recommendations for deeper exploration. How We Built It SocratesAI combines multiple cutting-edge technologies to deliver real-time fact-checking: Zoom Real-Time Media Stream (RTMS): Allows us to access the conversation’s transcript using Zoom’s built-in voice-to-text converter. A contextual sliding window dynamically updates with the conversation’s key points using OpenAI ChatGPT-4o, ensuring long-term context retention without excessive input size. Perplexity Sonar then evaluates the last conversation chunk and context, determining truthfulness, providing explanations, and linking to reliable sources. To enhance engagement, the response is converted into speech using ElevenLabs' text-to-speech model Flash V2, allowing the AI to deliver information smoothly within the conversation. Challenges We Ran Into Real-time processing: we needed to balance response speed and accuracy. We solved this by batching the transcript into small but meaningful segments that preserve context while keeping latency low. Understanding irony and figurative speech: careful prompting helped improve AI comprehension and minimize misinterpretations. Minimizing disruption: instead of interrupting speakers, SocratesAI provides subtle auditory cues and a visual popup with a brief fact-check summary. Users can choose to ignore the cues or let the AI deliver a full audio response. Accomplishments That We're Proud Of Seamlessly integrating multiple AI models and services into a single, real-time fact-checking system orchestrated with LangChain. Designing an AI-human interaction model that enhances conversations without being intrusive. What We Learned User experience is critical—our peer surveys helped refine interaction preferences and ensure minimal disruption. Latency vs. accuracy trade-offs—finding the optimal balance between quick responses and detailed context analysis is key. The incredible impact on society of misinformation and the urgency for robust solutions to check information's reliability. What's Next for SocratesAI Enhancing answer quality and reducing latency. Improving the AI’s understanding of irony, sarcasm, and figurative speech. Expanding to multilingual interactions. Adapting SocratesAI for critical environments such as classrooms, legal courts, and professional debates where information accuracy is essential.
treehacks25
Zoom mock server instructions
Documentation here: https://github.com/ojusave/mockRTMSserver
Setup
- Install Docker
- Clone repo (link)
- Build container (see intstruction at link)
Mock Server
- Run container
- Open address (server): http://localhost:9092
Client
- Run 'mockRTMSserver/node test_client/server.js'
- Run 'ngrok http 8000'
- Copy address URL into the Server at http://localhost:9092 (should receive confirmation on client)
- Start recording on the server and receive datastream on the client
TODO
Modify (a copy of) test_client/server.js In lines 181-207 there is the function executed any time a new message is received from the Zoom mock server. This stream can be forwarded to another websocket (atm at the address "http://localhost:5000/process_media"), that can be read by the LangChain Server (not sure how that part works).
Analysis
View
Metric
- 1
- 1
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- AWSClaimed
- FastAPIClaimed
- JavaScriptClaimed
- LangChainClaimed
- Next.jsClaimed
- OpenAIClaimed
- PythonClaimed
- Tailwind CSSClaimed
0 of 8 appear in the indexed code. 8 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
893 B
Source files
1
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
AshwathKarunakaram/treehacks25
1 files · 893 B · @ f193635
Structure
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- Markdown100%
Share of indexed source by file size. Binary and vendored files are excluded.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.