AthleanX AI Coach is an intelligent chatbot powered by the fitness expertise of Jeff Cavaliere. This AI assistant provides personalized fitness advice, workout recommendations, and answers to your health and exercise questions.
Try out the AthleanX AI Coach here: [Streamlit App Link]
The following diagram illustrates our RAG pipeline, inspired by NVIDIA's local RAG workflow:
The AthleanX AI Coach is an advanced fitness assistant that leverages cutting-edge AI technologies and a rich dataset of fitness content. Here's a high-level overview of the project's architecture and methodology:
-
Data Collection:
- Scraped approximately 1,500 videos from the AthleanX YouTube channel.
- Extracted comprehensive metadata from each video.
-
Data Processing:
- Conducted exploratory data analysis to determine optimal chunk sizes for text processing.
- Carefully selected an embedding model to minimize data loss while maximizing semantic understanding.
-
Database Implementation:
- Utilized Pinecone, a vector database, to efficiently store and query video embeddings.
- This enables rapid retrieval of relevant fitness information based on user queries.
-
AI Model Integration:
- Implemented a Retrieval-Augmented Generation (RAG) pipeline for enhanced response generation.
- Leveraged Google's Gemini 1.5 Pro as the Large Language Model (LLM) for generating accurate and context-aware responses.
-
User Interface:
- Developed a user-friendly chatbot interface using Streamlit for seamless interaction with the AI coach.
This architecture allows the AthleanX AI Coach to provide personalized, accurate, and relevant fitness advice by combining the vast knowledge base of AthleanX videos with state-of-the-art AI language models.
- Video Scraping → Metadata Extraction → Text Chunking → Embedding Generation → Vector Database Storage
- Python
- Streamlit
- Pinecone (for vector database)
- Sentence Transformers (for embeddings)
- LangChain with Google Generative AI
- Clone the repository:
git clone https://github.com/your-username/Fitness-Coach.git
- Navigate to the project directory:
cd Fitness-Coach
- Install the required dependencies:
pip install -r requirements.txt
- Set up your environment variables (API keys, etc.) in a
.env
file.GOOGLE_API_KEY="your_google_api_key" PINECONE_API_KEY="your_pinecone_api_key"
- Run the Streamlit app:
streamlit run app.py
Simply type your fitness-related questions into the chat interface. You can ask about:
- Specific exercises and their proper form
- Workout routines for different goals
- Nutrition advice
- Injury prevention and recovery
- And much more!
The AthleanX AI Coach is under active development, with several key areas of focus:
- Latency Reduction: Efforts are underway to reduce the response time significantly from the current
8-second
average. - LLM Output Streaming: Implementation of streaming for the LLM output is in progress. This will provide a more responsive user experience, allowing users to see responses as they're generated.
- LangChain Integration: Active learning and implementation of advanced LangChain techniques are ongoing. This work aims to build more sophisticated GenAI applications, enabling more nuanced understanding of fitness queries and more accurate, context-aware responses.
Contributions to improve the AthleanX AI Coach are welcome! Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Jeff Cavaliere and the AthleanX team for their invaluable fitness content