Inspiration The inspiration for EcoSenseAI_Enrie stemmed from the growing global concern over environmental degradation and climate change. As developers passionate about leveraging AI for public welfare, we were drawn to the ERNIE AI Developer Challenge on Devpost, which emphasized fine-tuning Baidu's ERNIE models for innovative applications. We saw an opportunity to enhance an existing environmental monitoring SaaS platform by integrating ERNIE's advanced capabilities, turning raw sensor data into actionable insights. Our goal was to create a tool that not only monitors CO2 levels and temperature in real-time but also predicts spikes with contextual explanations, empowering users to make informed decisions for healthier, more sustainable environments. This project aligns with the hackathon's focus on model-building and multimodal applications, addressing real-world issues like urban pollution and public health. What it does EcoSenseAI_Enrie is an AI-powered SaaS platform for real-time environmental monitoring. It ingests data from IoT sensors (like those on Raspberry Pi) via AWS IoT Core, processes it through a fine-tuned Baidu ERNIE model to predict CO2 spikes with detailed explanations (e.g., "Spike likely due to urban trends—impact: health risks"), and visualizes trends on a React dashboard with live WebSocket updates. It also generates multimodal compliance reports using PaddleOCR-VL to handle images and text in PDFs, summarized intelligently by ERNIE. Users receive smart alerts for proactive measures, making it ideal for public welfare scenarios like office air quality management or urban sustainability initiatives. The platform supports edge deployment on Raspberry Pi for low-latency inference, fitting the hackathon's Edge AI tasks. How we built it We started by rebuilding an open-source environmental SaaS base, structuring the repo with modular components: backend (FastAPI for APIs/WebSockets, PyMongo for MongoDB storage), frontend (React 18 with Chart.js for dashboards), and IoT scripts (Python with AWSIoTPythonSDK for sensor publishing). The core innovation was integrating Baidu ERNIE: we fine-tuned the ERNIE-4.5-21B model using Unsloth on a Colab notebook, adapting it with our expanded co2_historical.csv dataset formatted as Alpaca-style prompts for spike prediction. For multimodal features, we incorporated PaddlePaddle and PaddleOCR-VL to process reports. Authentication uses JWT, and deployment leverages Docker Compose locally, with AWS ECS for production. We tested via GitHub Actions CI, ensuring seamless ERNIE API fallbacks for inference. The entire build was guided by hackathon resources like Baidu AI Studio tokens and Novita AI credits. Challenges we ran into One major challenge was fine-tuning ERNIE efficiently on limited environmental data—our initial dataset was small, so we generated synthetic sequences to avoid overfitting, but balancing hyperparameters took multiple iterations on Colab. Integrating PaddleOCR-VL for multimodal PDFs required handling diverse file formats without full internet access during development, leading to creative offline testing. AWS IoT setup on Raspberry Pi posed connectivity issues, especially with certificate management and retry logic. Additionally, ensuring real-time WebSocket broadcasts didn't overwhelm the backend during high-data influx was tricky, resolved by optimizing MongoDB queries. Time constraints near the December 23, 2025, deadline pushed us to prioritize core features, but these hurdles strengthened our debugging skills. Accomplishments that we're proud of We're thrilled to have successfully fine-tuned ERNIE for domain-specific predictions, achieving accurate CO2 spike detection with natural-language explanations that go beyond traditional ML models. Integrating multimodal capabilities via PaddleOCR-VL and ERNIE for report summaries was a standout achievement, enabling richer insights from visual data. The edge-ready stub for D-Robotics on Raspberry Pi positions the project for real-world scalability. Overall, submitting a fully functional SaaS to the ERNIE Challenge—complete with open-sourced code on GitHub, Hugging Face model uploads, and a demo video—feels like a win, especially as it targets public welfare and earned us hands-on experience with cutting-edge AI tools. What we learned Through this project, we deepened our understanding of fine-tuning large language models like ERNIE using tools such as Unsloth and LoRA adapters, learning how to adapt conversational models for time-series forecasting. We gained insights into multimodal AI, realizing PaddleOCR-VL's power in extracting value from mixed-media documents. Building a full-stack SaaS taught us about secure IoT integrations (e.g., MQTT with AWS) and real-time systems (WebSockets in FastAPI). We also learned the importance of ethical AI in environmental applications—ensuring predictions are explainable to build user trust. Finally, participating in the hackathon honed our skills in rapid prototyping, resource management (like free tokens from Baidu AI Studio), and emphasizing impact in submissions. What's next for EcoSenseAI_Enrie Looking ahead, we plan to expand sensor support for more metrics like humidity and VOCs, integrate real-time global datasets for broader predictions, and deploy on edge devices via D-Robotics kits if awarded. We'll add multi-tenant features with subscription tiers (e.g., via Stripe) for commercial viability and open-source the fine-tuned model on Hugging Face for community contributions. Future iterations could incorporate ERNIE for agent-like responses, such as automated sustainability recommendations. Ultimately, we aim to partner with environmental NGOs for real-world pilots, turning EcoSenseAI_Enrie into a scalable tool for global climate action.
Built With
- aws-ecs
- aws-iot-core
- awsiotpythonsdk
- axios
- baidu-ai-studio-api
- baidu-ernie
- chart.js
- docker-compose
- fastapi
- github-actions
- huggingface
- material-ui
- mongodb
- mongodb-atlas
- netlify
- paddleocr-vl
- paddlepaddle
- pydantic
- pyjwt
- pymongo
- python
- raspberry-pi
- react
- reportlab
- requests
- unsloth
- vercel
- websockets

Log in or sign up for Devpost to join the conversation.