Inspiration
We live in an era of information overload. Students, researchers, and developers constantly juggle between dozens of browser tabs, PDF papers, and scattered notes. We realized that while we consume a lot of content, we often struggle to synthesize it into wisdom.
We wanted to build a "Cornerstone" (hence the name Ystone) for personal knowledge—a tool that not only stores information but understands it, helping users connect the dots between disparate pieces of data.
What it does
Ystone is an AI-powered personal knowledge aggregator.
- Smart Ingestion: It accepts various inputs including URLs, PDFs, YouTube videos, and raw text.
- Contextual Search: Instead of keyword matching, users can ask natural language questions like "What were the main arguments in the history papers I read last week?"
- Knowledge Graph: It automatically visualizes connections between different notes, creating a dynamic mind map of your knowledge base.
- AI Tutor: Users can chat with their library to generate summaries, quizzes, or flashcards instantly.
How we built it
We built Ystone using a modern tech stack:
- Frontend: Built with Next.js and Tailwind CSS for a responsive and clean UI.
- Backend: We used FastAPI (Python) to handle data processing.
- AI & Logic: We utilized LangChain to orchestrate the LLM workflows and OpenAI's GPT-4 for the reasoning engine.
- Database: We implemented Pinecone as our vector database to store embeddings for semantic search and Retrieval-Augmented Generation (RAG).
- Authentication: Integrated Clerk for secure and easy user login.
Challenges we ran into
- Context Window Limits: Handling large PDF files often exceeded the token limits of the LLM. We had to implement a smart "chunking" algorithm to break down texts without losing context.
- Hallucinations: Initially, the AI would make up facts. We spent a lot of time refining our prompt engineering to ensure the answers were strictly grounded in the user's provided data.
- Integration: Connecting the interactive knowledge graph (frontend) with real-time vector data (backend) was tricky and caused some rendering lag initially.
Accomplishments that we're proud of
- Successfully implementing the RAG (Retrieval-Augmented Generation) pipeline that responds in under 2 seconds.
- The Knowledge Graph visualization actually looks cool and interactive! It feels like seeing your brain on a screen.
- Building a fully functional full-stack application in such a short amount of time as a team.
What we learned
- We gained a deep understanding of Vector Embeddings and how semantic search works under the hood.
- We learned the importance of Prompt Engineering—it's not just about asking the AI, it's about asking it correctly.
- We improved our Git workflow and learned how to resolve merge conflicts without panicking.
What's next for Ystone
- Browser Extension: To allow users to save content to Ystone with a single click while browsing.
- Mobile App: Building a React Native version for on-the-go learning.
- Collaboration: Allowing teams to share a "Ystone" workspace to build a collective knowledge base.
Built With
- clerk
- fastapi
- langchain
- next.js
- openai
- pinecone
- python
- tailwind-css
- typescript
- verce
Log in or sign up for Devpost to join the conversation.