mirror of
https://github.com/ArthurDanjou/artsite.git
synced 2026-03-16 05:09:46 +01:00
fix: corriger les majuscules dans les statuts des projets et mettre à jour les descriptions des projets
This commit is contained in:
@@ -2,10 +2,10 @@
|
||||
slug: artlab
|
||||
title: ArtLab - Personal HomeLab
|
||||
type: Personal Project
|
||||
description: A personal homelab environment where I deploy, test, and maintain self-hosted services with privacy-focused networking through VPN and Cloudflare Tunnels.
|
||||
shortDescription: A personal homelab environment for self-hosting and automation.
|
||||
description: A private R&D sandbox and high-availability infrastructure for deploying MLOps pipelines, managing large-scale data, and experimenting with cloud-native automation.
|
||||
shortDescription: A professional-grade homelab for self-hosting, MLOps, and network security.
|
||||
publishedAt: 2025-09-04
|
||||
readingTime: 1
|
||||
readingTime: 2
|
||||
favorite: true
|
||||
status: Active
|
||||
tags:
|
||||
@@ -14,32 +14,52 @@ tags:
|
||||
- HomeLab
|
||||
- Self-Hosted
|
||||
- Infrastructure
|
||||
- Networking
|
||||
icon: i-ph-flask-duotone
|
||||
---
|
||||
|
||||
[**ArtLab**](https://go.arthurdanjou.fr/status) is my personal homelab, where I experiment with self-hosting and automation.
|
||||
[**ArtLab**](https://go.arthurdanjou.fr/status) is my personal homelab: a controlled environment for experimenting with DevOps, distributed systems, and private cloud architecture.
|
||||
|
||||
My homelab is a self-hosted environment where I deploy, test, and maintain personal services. Everything is securely exposed **only through a private VPN** using [Tailscale](https://tailscale.com/), ensuring encrypted, access-controlled connections across all devices. For selected services, I also use **Cloudflare Tunnels** to enable secure external access without opening ports or exposing my public IP.
|
||||
## 🏗️ Architectural Philosophy
|
||||
|
||||
## 🛠️ Running Services
|
||||
The infrastructure follows a **Zero Trust** model. Access is restricted to a private mesh VPN using **Tailscale (WireGuard)**, removing the need for open ports. For select public endpoints, **Cloudflare Tunnels** provide a hardened entry point, keeping my public IP hidden while preserving end-to-end encryption from the edge to the origin.
|
||||
|
||||
- **MinIO**: S3-compatible object storage for static files and backups.
|
||||
- **Immich**: Self-hosted photo management platform — a private alternative to Google Photos.
|
||||
- **Jellyfin**: Media server for streaming movies, shows, and music.
|
||||
- **Portainer & Docker**: Container orchestration and service management.
|
||||
- **Traefik**: Reverse proxy and automatic HTTPS with Let's Encrypt.
|
||||
- **Homepage**: A sleek dashboard to access and monitor all services.
|
||||
- **Proxmox**: Virtualization platform used to manage VMs and containers.
|
||||
- **Uptime Kuma**: Self-hosted uptime monitoring.
|
||||
- **Home Assistant**: Smart home automation and device integration.
|
||||
- **AdGuard Home**: Network-wide ad and tracker blocking via DNS.
|
||||
- **Beszel**: Self-hosted, lightweight alternative to Notion for notes and knowledge management.
|
||||
- **Palmr**: Personal logging and journaling tool.
|
||||
## 🛠️ Service Stack
|
||||
|
||||
Services are grouped by functional domain to keep orchestration clean and scalable:
|
||||
|
||||
### Infrastructure & Virtualization
|
||||
* **Proxmox VE**: Type-1 hypervisor managing LXC containers and VMs for strict resource isolation.
|
||||
* **Docker & Portainer**: Container runtime and orchestration for rapid deployment.
|
||||
* **Traefik**: Edge router and reverse proxy providing automatic HTTPS via Let's Encrypt.
|
||||
* **Tailscale**: Secure networking layer for cross-device connectivity and remote management.
|
||||
|
||||
### Data & Storage
|
||||
* **Garage**: S3-compatible distributed object storage for backups and static assets.
|
||||
* **Immich**: High-performance photo management and AI-powered backup solution.
|
||||
* **Jellyfin**: Media server for hardware-accelerated streaming.
|
||||
* **Redis**: In-memory data structure store for caching and session management.
|
||||
|
||||
### Automation & Observability
|
||||
* **n8n**: Workflow automation platform for orchestrating complex service interactions.
|
||||
* **Uptime Kuma**: Real-time status monitoring and incident alerting.
|
||||
* **Beszel**: Lightweight agent-based resource monitoring for CPU/RAM/Disk metrics.
|
||||
* **AdGuard Home**: Network-wide DNS sinkhole for ad-blocking and privacy.
|
||||
|
||||
### Home Intelligence
|
||||
* **Home Assistant**: Centralized hub for IoT integration and automation logic.
|
||||
* **MQTT Broker**: Low-latency message bus for device-to-service communication.
|
||||
* **Zigbee2MQTT**: Bridge for local Zigbee device control without cloud dependencies.
|
||||
|
||||
## 🖥️ Hardware Specifications
|
||||
|
||||
- **Beelink EQR6**: AMD Ryzen mini PC, main server host.
|
||||
- **TP-Link 5-port Switch**: Network connectivity for all devices.
|
||||
- **UGREEN NASync DXP4800 Plus**: 4-bay NAS, currently populated with 2 x 8TB drives for storage and backups.
|
||||
| Component | Hardware | Role |
|
||||
| :--- | :--- | :--- |
|
||||
| **Main Host** | **Beelink EQR6** (AMD Ryzen) | Compute, Containers & VMs |
|
||||
| **Storage** | **UGREEN NASync DXP4800 Plus** | 4-bay NAS, 16TB ZFS / Backups |
|
||||
| **Networking** | **TP-Link 5-port Gigabit Switch** | Local Backbone |
|
||||
| **Zigbee** | **SLZB-MR4 Coordinator** | Home Automation Mesh |
|
||||
|
||||
---
|
||||
|
||||
This homelab is a sandbox for DevOps experimentation, infrastructure reliability, and privacy-respecting digital autonomy.
|
||||
|
||||
@@ -16,31 +16,31 @@ tags:
|
||||
icon: i-ph-globe-hemisphere-west-duotone
|
||||
---
|
||||
|
||||
[**ArtSite**](https://go.arthurdanjou.fr/website) is my digital headquarters—a unified platform serving as my engineering portfolio and experimental lab.
|
||||
[**ArtSite**](https://go.arthurdanjou.fr/website) is my digital headquarters: a unified platform that serves as my engineering portfolio and experimental lab.
|
||||
|
||||
More than just a static site, it is a modern **Portfolio** designed to be fast, accessible, and type-safe. It serves as a live production environment where I experiment with the latest frontend technologies and Edge computing paradigms.
|
||||
More than a static site, it is a modern **Portfolio** designed to be fast, accessible, and type-safe. It also acts as a live production environment where I test the latest frontend technologies and Edge computing paradigms.
|
||||
|
||||
## ⚡ The Nuxt Stack Architecture
|
||||
|
||||
This project is built entirely on the **Nuxt ecosystem**, leveraging the synergy between its modules for maximum developer experience and performance.
|
||||
This project is built entirely on the **Nuxt ecosystem**, leveraging module synergy for strong developer experience and performance.
|
||||
|
||||
### Core Engine
|
||||
- **[Nuxt 3](https://nuxt.com/)**: The meta-framework providing the backbone (SSR, Auto-imports, Modules).
|
||||
- **[Nitro](https://nitro.unjs.io/)**: The high-performance server engine that powers the API routes and renders the app at the Edge.
|
||||
- **[Nuxt 3](https://nuxt.com/)**: The meta-framework providing the backbone (SSR, auto-imports, modules).
|
||||
- **[Nitro](https://nitro.unjs.io/)**: The high-performance server engine powering API routes and Edge rendering.
|
||||
|
||||
### Infrastructure & Deployment
|
||||
- **[Cloudflare Workers](https://workers.cloudflare.com/)**: The application runs entirely on Cloudflare's global serverless network (SSR), ensuring minimal latency and high resilience.
|
||||
- **[Wrangler](https://developers.cloudflare.com/workers/wrangler/)**: The command-line tool used for precise deployment pipelines and worker configuration.
|
||||
- **[NuxtHub](https://hub.nuxt.com/)**: Integrated specifically for **advanced cache management** and unifying Cloudflare platform features (KV, D1, Blob) within the Nuxt runtime.
|
||||
- **[Cloudflare Workers](https://workers.cloudflare.com/)**: The application runs entirely on Cloudflare's global serverless network (SSR), delivering low latency and high resilience.
|
||||
- **[Wrangler](https://developers.cloudflare.com/workers/wrangler/)**: The command-line tool used for deployment pipelines and worker configuration.
|
||||
- **[NuxtHub](https://hub.nuxt.com/)**: Integrated for **advanced cache management** and to unify Cloudflare platform features (KV, D1, Blob) within the Nuxt runtime.
|
||||
|
||||
### Content & Data
|
||||
- **[Nuxt Content](https://content.nuxtjs.org/)**: A Git-based Headless CMS that treats Markdown as a database.
|
||||
- **[Nuxt Studio](https://nuxt.studio)**: A live visual editor allowing for seamless content management directly from the browser.
|
||||
- **[Nuxt Content](https://content.nuxtjs.org/)**: A Git-based headless CMS that treats Markdown as a database.
|
||||
- **[Nuxt Studio](https://nuxt.studio)**: A live visual editor for seamless content management directly from the browser.
|
||||
|
||||
### Interface & Design
|
||||
- **[Nuxt UI](https://nuxtui.com/)**: A comprehensive component library built on Headless UI and Tailwind CSS.
|
||||
- **[Tailwind CSS](https://tailwindcss.com/)**: Utility-first styling for rapid and responsive design.
|
||||
- **[Tailwind CSS](https://tailwindcss.com/)**: Utility-first styling for rapid, responsive design.
|
||||
|
||||
### Quality Assurance
|
||||
- **[TypeScript](https://www.typescriptlang.org/)**: Strict type safety across the entire stack (Frontend & Backend).
|
||||
- **[TypeScript](https://www.typescriptlang.org/)**: Strict type safety across the entire stack (frontend and backend).
|
||||
- **[Zod](https://zod.dev/)**: Runtime schema validation for API inputs and environment variables.
|
||||
|
||||
@@ -16,7 +16,7 @@ tags:
|
||||
icon: i-ph-book-duotone
|
||||
---
|
||||
|
||||
[**ArtStudies Projects**](https://github.com/ArthurDanjou/artstudies) is a curated collection of academic projects completed throughout my mathematics studies. The repository showcases work in both _Python_ and _R_, focusing on mathematical modeling, data analysis, and numerical methods.
|
||||
[**ArtStudies Projects**](https://github.com/ArthurDanjou/artstudies) is a curated collection of academic projects completed throughout my mathematics studies. The repository showcases work in both _Python_ and _R_, with a focus on mathematical modeling, data analysis, and numerical methods.
|
||||
|
||||
The projects are organized into three main sections:
|
||||
- **L3** – Third year of the Bachelor's degree in Mathematics
|
||||
|
||||
@@ -16,10 +16,10 @@ icon: i-ph-chart-bar-duotone
|
||||
---
|
||||
|
||||
::warning
|
||||
The project is currently in progress, and more details will be added as development continues.
|
||||
The project is complete, but the documentation is still being expanded with more details.
|
||||
::
|
||||
|
||||
This project involves creating an interactive data visualization application using R and R Shiny. The goal is to develop dynamic and explorable visualizations that allow users to interact with the data in meaningful ways.
|
||||
This project involves building an interactive data visualization application using R and R Shiny. The goal is to deliver dynamic, explorable visualizations that let users interact with the data in meaningful ways.
|
||||
|
||||
## 🛠️ Technologies & Tools
|
||||
|
||||
@@ -45,7 +45,7 @@ This project involves creating an interactive data visualization application usi
|
||||
|
||||
## 📚 Resources
|
||||
|
||||
You can find the code here: [Data Visualisation Code](https://go.arthurdanjou.fr/datavis-code)
|
||||
You can find the code here: [Data Visualisation Code](https://go.arthurdanjou.fr/datavis-code)
|
||||
|
||||
And the online application here: [Data Visualisation App](https://go.arthurdanjou.fr/datavis-app)
|
||||
|
||||
|
||||
@@ -19,20 +19,20 @@ icon: i-ph-share-network-duotone
|
||||
|
||||
The paper is available at: [https://arxiv.org/abs/2303.01500](https://arxiv.org/abs/2303.01500)
|
||||
|
||||
This repository contains a robust and modular implementation in **TensorFlow/Keras** of **Early Dropout** and **Late Dropout** strategies. The goal is to verify the hypothesis that dropout, traditionally used to reduce overfitting, can also combat underfitting when applied solely during the initial training phase.
|
||||
This repository contains a robust, modular **TensorFlow/Keras** implementation of **Early Dropout** and **Late Dropout** strategies. The goal is to verify the hypothesis that dropout, traditionally used to reduce overfitting, can also combat underfitting when applied only during the initial training phase.
|
||||
|
||||
## 🎯 Scientific Objectives
|
||||
|
||||
The study aims to validate the three operating regimes of Dropout described in the paper:
|
||||
The study aims to validate the operating regimes of Dropout described in the paper:
|
||||
|
||||
1. **Early Dropout** (Targeting Underfitting): Active only during the initial phase to reduce gradient variance and align their direction, allowing for better final optimization.
|
||||
2. **Late Dropout** (Targeting Overfitting): Disabled at the start to allow rapid learning, then activated to regularize final convergence.
|
||||
3. **Standard Dropout**: Constant rate throughout training (Baseline).
|
||||
4. **No Dropout**: Control experiment without dropout.
|
||||
1. **Early Dropout** (Targeting Underfitting): Active only during the initial phase to reduce gradient variance and align their direction, enabling better final optimization.
|
||||
2. **Late Dropout** (Targeting Overfitting): Disabled at the start to allow rapid learning, then activated to regularize final convergence.
|
||||
3. **Standard Dropout**: Constant rate throughout training (baseline).
|
||||
4. **No Dropout**: Control experiment without dropout.
|
||||
|
||||
## 🛠️ Technical Architecture
|
||||
|
||||
Unlike naive Keras callback implementations, this project uses a **dynamic approach via the TensorFlow graph** to ensure the dropout rate is properly updated on the GPU without model recompilation.
|
||||
Unlike naive Keras callback implementations, this project uses a **dynamic approach via the TensorFlow graph** to ensure the dropout rate updates on the GPU without model recompilation.
|
||||
|
||||
### Key Components
|
||||
|
||||
@@ -65,7 +65,7 @@ git clone https://github.com/arthurdanjou/dropoutreducesunderfitting.git
|
||||
cd dropoutreducesunderfitting
|
||||
```
|
||||
|
||||
## Install dependencies
|
||||
## Install dependencies
|
||||
```bash
|
||||
pip install tensorflow numpy matplotlib seaborn scikit-learn
|
||||
```
|
||||
@@ -86,7 +86,7 @@ exp = ExperimentPipeline(dataset_name="fashion_mnist", model_type="cnn")
|
||||
|
||||
### 2. Learning Curves Comparison
|
||||
|
||||
Compare training dynamics (Loss & Accuracy) of the three strategies.
|
||||
Compare training dynamics (loss and accuracy) of the three strategies.
|
||||
|
||||
```python
|
||||
exp.compare_learning_curves(
|
||||
@@ -137,7 +137,7 @@ exp.run_dataset_size_comparison(
|
||||
|
||||
According to the paper, you should observe:
|
||||
|
||||
- Early Dropout: Higher initial Loss, followed by a sharp drop after the switch_epoch, often reaching a lower minimum than Standard Dropout (reduction of underfitting).
|
||||
- Early Dropout: Higher initial loss, followed by a sharp drop after the switch_epoch, often reaching a lower minimum than Standard Dropout (reduction of underfitting).
|
||||
- Late Dropout: Rapid rise in accuracy at the start (potential overfitting), then stabilized by the activation of dropout.
|
||||
|
||||
## 📄 Detailed Report
|
||||
|
||||
@@ -15,18 +15,18 @@ tags:
|
||||
icon: i-ph-bicycle-duotone
|
||||
---
|
||||
|
||||
This project was completed as part of the **Generalized Linear Models** course at Paris-Dauphine PSL University. The objective was to develop and compare statistical models to predict the number of bicycle rentals in a bike-sharing system based on various environmental and temporal characteristics.
|
||||
This project was completed as part of the **Generalized Linear Models** course at Paris-Dauphine PSL University. The objective was to develop and compare statistical models that predict bicycle rentals in a bike-sharing system using environmental and temporal features.
|
||||
|
||||
## 📊 Project Objectives
|
||||
|
||||
- Determine the best predictive model for bicycle rental counts
|
||||
- Analyze the impact of various features (temperature, humidity, wind speed, seasonality, etc.)
|
||||
- Analyze the impact of key features (temperature, humidity, wind speed, seasonality, etc.)
|
||||
- Apply and evaluate different generalized linear modeling techniques
|
||||
- Validate model assumptions and performance metrics
|
||||
|
||||
## 🔍 Methodology
|
||||
|
||||
The study employs rigorous statistical approaches including:
|
||||
The study uses a rigorous statistical workflow, including:
|
||||
|
||||
- **Exploratory Data Analysis (EDA)** - Understanding feature distributions and relationships
|
||||
- **Model Comparison** - Testing multiple GLM families (Poisson, Negative Binomial, Gaussian)
|
||||
|
||||
@@ -6,7 +6,7 @@ description: A large-scale statistical study comparing Generalized Linear Models
|
||||
shortDescription: Predicting the SPX volatility surface using GLMs and black-box models on 1.2 million observations.
|
||||
publishedAt: 2026-02-28
|
||||
readingTime: 3
|
||||
status: in progress
|
||||
status: In progress
|
||||
tags:
|
||||
- R
|
||||
- GLM
|
||||
@@ -17,7 +17,7 @@ icon: i-ph-graph-duotone
|
||||
|
||||
This project targets high-precision calibration of the **Implied Volatility Surface** using a large-scale dataset of S&P 500 (SPX) European options.
|
||||
|
||||
The core objective is to stress-test classic statistical models against modern predictive algorithms. **Generalized Linear Models (GLMs)** provide a transparent baseline, while more complex "black-box" architectures are evaluated on whether their accuracy gains justify the loss of interpretability in a risk management setting.
|
||||
The core objective is to stress-test classic statistical models against modern predictive algorithms. **Generalized Linear Models (GLMs)** provide a transparent baseline, while more complex "black-box" architectures are evaluated on whether their accuracy gains justify reduced interpretability in a risk management context.
|
||||
|
||||
## 📊 Dataset & Scale
|
||||
|
||||
@@ -44,7 +44,7 @@ Key financial indicators are derived from the raw data:
|
||||
|
||||
## 📈 Evaluation & Reproducibility
|
||||
|
||||
Performance is measured strictly via RMSE on the original scale of the target variable. To ensure reproducibility and precise comparisons across model iterations, a fixed random seed is maintained throughout the entire workflow.
|
||||
Performance is measured strictly via RMSE on the original scale of the target variable. To ensure reproducibility and precise comparisons across model iterations, a fixed random seed is maintained throughout the workflow.
|
||||
|
||||
```r
|
||||
set.seed(2025)
|
||||
|
||||
@@ -6,7 +6,7 @@ description: A high-stakes cybersecurity challenge organized by the French Minis
|
||||
shortDescription: Cybersecurity threat detection within a high-security military environment.
|
||||
publishedAt: 2025-10-28
|
||||
readingTime: 4
|
||||
status: completed
|
||||
status: Completed
|
||||
tags:
|
||||
- Python
|
||||
- Streamlit
|
||||
@@ -18,9 +18,9 @@ icon: i-ph-shield-check-duotone
|
||||
|
||||
## The Setting: Fort de Mont-Valérien
|
||||
|
||||
This wasn't your typical university hackathon. Organized by the **Commissariat au Numérique de Défense (CND)**, the event took place over three intense days within the walls of the **Fort de Mont-Valérien**—a highly secured military fortress.
|
||||
This was not a typical university hackathon. Organized by the **Commissariat au Numerique de Defense (CND)**, the event took place over three intense days within the walls of the **Fort de Mont-Valerien**, a highly secured military fortress.
|
||||
|
||||
Working in this environment underscored the real-world stakes of the mission. Our **team of six**, representing **Université Paris-Dauphine**, competed against several elite engineering schools to solve critical defense-related data challenges.
|
||||
Working in this environment underscored the real-world stakes of the mission. Our **team of six**, representing **Universite Paris-Dauphine**, competed against several elite engineering schools to solve critical defense-related data challenges.
|
||||
|
||||
## The Mission: Classifying the "Invisible"
|
||||
|
||||
@@ -32,11 +32,11 @@ Firewall logs are often cryptic and inconsistent. We developed a preprocessing p
|
||||
* **Contextual Labeling:** Distinguish between routine system "bugs" (non-malicious failures) and actual "attacks" (malicious intent).
|
||||
|
||||
### 2. Strategic Goal: Recalling the Threat
|
||||
In military cybersecurity, the cost of a **False Negative** (an undetected attack) is catastrophic.
|
||||
In military cybersecurity, the cost of a **False Negative** (an undetected attack) is catastrophic.
|
||||
* **Model Priority:** We optimized our classifiers specifically for **Recall**. We would rather investigate a few system bugs (False Positives) than let a single attack slip through the net.
|
||||
* **Techniques:** We used ensemble methods (XGBoost/Random Forest) combined with advanced resampling to handle the heavy class imbalance typical of network traffic.
|
||||
|
||||
> **Key Achievement:** Our model significantly reduced the rate of undetected threats compared to standard baseline configurations provided at the start of the challenge.
|
||||
> **Key Achievement:** Our model significantly reduced the rate of undetected threats compared to the baseline configurations provided at the start of the challenge.
|
||||
|
||||
## Deployment & Interaction
|
||||
|
||||
@@ -52,4 +52,4 @@ To make our findings operational, we built a **Streamlit-based command center**:
|
||||
|
||||
---
|
||||
|
||||
Representing Dauphine in such a specialized environment was a highlight of my academic year. Would you like me to elaborate on the specific feature engineering techniques we used to "clean" the raw military logs?
|
||||
Representing Dauphine in such a specialized environment was a highlight of my academic year. I can share more details on the feature engineering techniques we used to clean the raw military logs.
|
||||
|
||||
@@ -6,7 +6,7 @@ description: An intensive 4-week challenge to build an AI-powered data assistant
|
||||
shortDescription: A team-based project building an NL-to-SQL agent with Nuxt, Ollama, and Vercel AI SDK.
|
||||
publishedAt: 2026-03-07
|
||||
readingTime: 4
|
||||
status: completed
|
||||
status: Completed
|
||||
tags:
|
||||
- Nuxt
|
||||
- Ollama
|
||||
@@ -18,16 +18,16 @@ icon: i-ph-database-duotone
|
||||
|
||||
## The Challenge
|
||||
|
||||
Organized by **Natixis**, this hackathon followed a unique high-intensity format: **three consecutive Saturdays** of on-site development, bridged by two full weeks of remote collaboration.
|
||||
Organized by **Natixis**, this hackathon followed a high-intensity format: **three consecutive Saturdays** of on-site development, bridged by two full weeks of remote collaboration.
|
||||
|
||||
Working in a **team of four**, our goal was to bridge the gap between non-technical stakeholders and complex financial databases by creating an autonomous "Data Talk" agent.
|
||||
|
||||
## Core Features
|
||||
|
||||
### 1. Data Engineering & Schema Design
|
||||
Before building the AI layer, we had to handle a significant data migration task. I led the effort to:
|
||||
Before building the AI layer, we handled a significant data migration task. I led the effort to:
|
||||
* **ETL Pipeline:** Convert fragmented datasets from **.xlsx** and **.csv** formats into a structured **SQL database**.
|
||||
* **Schema Optimization:** Design robust SQL schemas that allow an LLM to easily understand relationships (foreign keys, indexing) for accurate query generation.
|
||||
* **Schema Optimization:** Design robust SQL schemas that allow an LLM to understand relationships (foreign keys, indexing) for accurate query generation.
|
||||
|
||||
### 2. Natural Language to SQL (NL-to-SQL)
|
||||
Using the **Vercel AI SDK** and **Ollama**, we implemented an agentic workflow:
|
||||
@@ -48,8 +48,8 @@ Data is only useful if it’s readable. Our Nuxt application goes beyond raw tab
|
||||
|
||||
## Impact & Results
|
||||
|
||||
This project demonstrated that a modern stack (Nuxt + local LLMs) can drastically reduce the time needed for data discovery. By the final Saturday, our team successfully presented a working prototype capable of handling multi-table joins and generating real-time financial dashboards from simple chat prompts.
|
||||
This project demonstrated that a modern stack (Nuxt + local LLMs) can drastically reduce the time needed for data discovery. By the final Saturday, our team presented a working prototype capable of handling multi-table joins and generating real-time financial dashboards from simple chat prompts.
|
||||
|
||||
---
|
||||
|
||||
*Curious about the ETL logic or the prompt structure we used? I'd be happy to discuss how we optimized the LLM's SQL accuracy.*
|
||||
*Curious about the ETL logic or the prompt structure we used? I can share how we optimized the LLM's SQL accuracy.*
|
||||
|
||||
@@ -16,7 +16,7 @@ tags:
|
||||
icon: i-ph-money-wavy-duotone
|
||||
---
|
||||
|
||||
This project focuses on building machine learning models to predict loan approval outcomes and assess default risk. The objective is to develop robust classification models that can effectively identify creditworthy applicants.
|
||||
This project focuses on building machine learning models to predict loan approval outcomes and assess default risk. The objective is to develop robust classification models that identify creditworthy applicants.
|
||||
|
||||
## 📊 Project Objectives
|
||||
|
||||
@@ -27,7 +27,7 @@ This project focuses on building machine learning models to predict loan approva
|
||||
|
||||
## 🔍 Methodology
|
||||
|
||||
The study employs various machine learning approaches:
|
||||
The study employs a range of machine learning approaches:
|
||||
|
||||
- **Exploratory Data Analysis (EDA)** - Understanding applicant characteristics and patterns
|
||||
- **Feature Engineering** - Creating meaningful features from raw data
|
||||
|
||||
@@ -17,16 +17,16 @@ tags:
|
||||
icon: i-ph-dice-five-duotone
|
||||
---
|
||||
|
||||
This report presents the Monte Carlo Methods Project completed as part of the **Monte Carlo Methods** course at Paris-Dauphine University. The goal was to implement different methods and algorithms using Monte Carlo methods in R.
|
||||
This report presents the Monte Carlo Methods Project completed as part of the **Monte Carlo Methods** course at Paris-Dauphine University. The goal was to implement a range of Monte Carlo methods and algorithms in R.
|
||||
|
||||
## 🛠️ Methods and Algorithms
|
||||
|
||||
- Plotting graphs of functions
|
||||
- Inverse c.d.f. Random Variation simulation
|
||||
- Accept-Reject Random Variation simulation
|
||||
- Random Variable simulation with stratification
|
||||
- Inverse CDF random variation simulation
|
||||
- Accept-Reject random variation simulation
|
||||
- Random variable simulation with stratification
|
||||
- Cumulative density function
|
||||
- Empirical Quantile Function
|
||||
- Empirical quantile function
|
||||
|
||||
## 📚 Resources
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ description: An academic project exploring the automation of GenAI workflows usi
|
||||
shortDescription: Automating GenAI workflows with n8n and Ollama in a self-hosted environment.
|
||||
publishedAt: 2026-03-15
|
||||
readingTime: 2
|
||||
status: in progress
|
||||
status: In progress
|
||||
tags:
|
||||
- n8n
|
||||
- Gemini
|
||||
@@ -19,19 +19,19 @@ icon: i-ph-plugs-connected-duotone
|
||||
|
||||
## Overview
|
||||
|
||||
This project focuses on designing and implementing autonomous workflows that leverage Large Language Models (LLMs) to streamline productivity and academic research. By orchestrating Generative AI through a self-hosted infrastructure on my **[ArtLab](/projects/artlab)**, I have built a private ecosystem that acts as both a personal assistant and a specialized research agent.
|
||||
This project focuses on designing and implementing autonomous workflows that leverage Large Language Models (LLMs) to streamline productivity and academic research. By orchestrating Generative AI through a self-hosted infrastructure on my **[ArtLab](/projects/artlab)**, I built a private ecosystem that acts as both a personal assistant and a specialized research agent.
|
||||
|
||||
## Key Workflows
|
||||
|
||||
### 1. Centralized Productivity Hub
|
||||
I developed a synchronization engine that bridges **Notion**, **Google Calendar**, and **Todoist**.
|
||||
* **Contextual Sync:** Academic events, such as course schedules and exam dates, are pulled from Notion and reflected in my calendar and task manager.
|
||||
* **Daily Briefing:** Every morning, the system triggers a workflow that compiles my schedule, pending tasks, and a local weather report into a single, centralized email summary. This ensures a friction-less start to the day with all critical information in one place.
|
||||
* **Daily Briefing:** Every morning, the system triggers a workflow that compiles my schedule, pending tasks, and a local weather report into a single, centralized email summary. This ensures a frictionless start to the day with all critical information in one place.
|
||||
|
||||
### 2. Intelligent Research Engine (RSS & RAG)
|
||||
To stay at the forefront of AI research, I built an automated pipeline for academic and technical monitoring.
|
||||
* **Multi-Source Fetching:** The system monitors RSS feeds from **arXiv**, **Hugging Face**, **Hacker News**, **selfho.st**, and major industry blogs (OpenAI, Google Research, Meta).
|
||||
* **Semantic Filtering:** Using LLMs, articles are filtered and ranked based on my specific research profile—focusing on **robust distributed learning**.
|
||||
* **Semantic Filtering:** Using LLMs, articles are filtered and ranked based on my specific research profile, with a focus on **robust distributed learning**.
|
||||
* **Knowledge Base:** Relevant papers and posts are automatically stored in a structured Notion database.
|
||||
* **Interactive Research Agent:** I integrated a chat interface within n8n that allows me to query this collected data. I can request summaries, ask specific technical questions about a paper, or extract the most relevant insights for my current thesis work.
|
||||
|
||||
@@ -41,14 +41,14 @@ The environment is built to handle complex multi-step chains, moving beyond simp
|
||||
|
||||
### Integrated Ecosystem
|
||||
* **Intelligence Layer:** Integration with **Gemini** (API) and **Ollama** (local) for summarization and semantic sorting.
|
||||
* **Data Sources:** RSS Feeds, Notion Databases.
|
||||
* **Data Sources:** RSS feeds and Notion databases.
|
||||
* **Notifications & UI:** Gmail for briefings and Discord for real-time system alerts.
|
||||
|
||||
## Key Objectives
|
||||
|
||||
1. **Privacy-Centric AI:** Ensuring that sensitive academic data and personal schedules remain within a self-hosted or controlled environment.
|
||||
2. **Academic Efficiency:** Reducing the "noise" of information overload by using AI to surface only the most relevant research papers.
|
||||
3. **Low-Code Orchestration:** Utilizing n8n to manage complex logic and API interactions without the overhead of maintaining a massive custom codebase.
|
||||
1. **Privacy-Centric AI:** Ensuring that sensitive academic data and personal schedules remain within a self-hosted or controlled environment.
|
||||
2. **Academic Efficiency:** Reducing the "noise" of information overload by using AI to surface only the most relevant research papers.
|
||||
3. **Low-Code Orchestration:** Utilizing n8n to manage complex logic and API interactions without the overhead of maintaining a massive custom codebase.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ description: An academic project exploring the application of reinforcement lear
|
||||
shortDescription: Reinforcement learning algorithms applied to Atari tennis matches for strategy optimization and competitive benchmarking.
|
||||
publishedAt: 2026-03-13
|
||||
readingTime: 3
|
||||
status: in progress
|
||||
status: In progress
|
||||
tags:
|
||||
- Reinforcement Learning
|
||||
- Python
|
||||
@@ -30,7 +30,7 @@ The project is divided into three core phases:
|
||||
I am implementing several key RL algorithms covered during my academic curriculum to observe their behavioral differences in a high-dimensional state space:
|
||||
* **Value-Based Methods:** Deep Q-Networks (DQN) and its variants (Double DQN, Dueling DQN).
|
||||
* **Policy Gradient Methods:** Proximal Policy Optimization (PPO) for more stable continuous action control.
|
||||
* **Exploration Strategies:** Implementing Epsilon-greedy and Entropy-based exploration to handle the sparse reward signals in tennis rallies.
|
||||
* **Exploration Strategies:** Implementing epsilon-greedy and entropy-based exploration to handle the sparse reward signals in tennis rallies.
|
||||
|
||||
### 2. The "Grand Slam" Tournament (Self-Play)
|
||||
To determine the most robust strategy, I developed a competitive framework:
|
||||
@@ -49,4 +49,4 @@ The final "Boss Level" involves taking my best-performing trained agent and test
|
||||
|
||||
---
|
||||
|
||||
*This project is currently in the training phase. I am currently fine-tuning the reward function to discourage "passive" play and reward aggressive net approaches.*
|
||||
*This project is currently in the training phase. I am fine-tuning the reward function to discourage "passive" play and reward aggressive net approaches.*
|
||||
|
||||
@@ -16,7 +16,7 @@ tags:
|
||||
icon: i-ph-city-duotone
|
||||
---
|
||||
|
||||
This report presents the Schelling Segregation Model project completed as part of the **Projet Numérique** course at Paris-Saclay University. The goal was to implement the Schelling Segregation Model in Python and analyze the results using statistics and data visualization.
|
||||
This report presents the Schelling Segregation Model project completed as part of the **Projet Numerique** course at Paris-Saclay University. The goal was to implement the Schelling Segregation Model in Python and analyze the results using statistics and data visualization.
|
||||
|
||||
## 📚 Resources
|
||||
|
||||
|
||||
@@ -18,13 +18,13 @@ icon: i-ph-dog-duotone
|
||||
|
||||
[**Sevetys**](https://sevetys.fr) is a leading French network of over 200 veterinary clinics, employing more than 1,300 professionals. Founded in 2017, the group provides comprehensive veterinary care for companion animals, exotic pets, and livestock, with services ranging from preventive medicine and surgery to cardiology, dermatology, and 24/7 emergency care.
|
||||
|
||||
Committed to digital innovation, Sevetys leverages centralized data systems to optimize clinic operations, improve patient data management, and enhance the overall client experience. This combination of medical excellence and operational efficiency supports veterinarians in delivering the highest quality care nationwide.
|
||||
Committed to digital innovation, Sevetys leverages centralized data systems to optimize clinic operations, improve patient data management, and enhance the overall client experience. This combination of medical excellence and operational efficiency supports veterinarians in delivering high-quality care nationwide.
|
||||
|
||||
## 🎯 Internship Objectives
|
||||
|
||||
During my two-month internship as a Data Engineer, I focused primarily on cleaning and standardizing customer and patient data — a critical task, as this data is extensively used by clinics, Marketing, and Performance teams. Ensuring data quality was therefore essential to the company's operations.
|
||||
During my two-month internship as a Data Engineer, I focused primarily on cleaning and standardizing customer and patient data, a critical task because this data is extensively used by clinics, Marketing, and Performance teams. Ensuring data quality was essential to the company's operations.
|
||||
|
||||
Additionally, I took charge of revising and enhancing an existing data quality report designed to evaluate the effectiveness of my cleaning processes. The report encompassed 47 detailed metrics assessing data completeness and consistency, providing valuable insights that helped maintain high standards across the organization.
|
||||
Additionally, I revised and enhanced an existing data quality report designed to evaluate the effectiveness of my cleaning processes. The report covered 47 detailed metrics assessing data completeness and consistency, providing valuable insights that helped maintain high standards across the organization.
|
||||
|
||||
## ⚙️ Technology Stack
|
||||
|
||||
|
||||
Reference in New Issue
Block a user