AI & Data Science Engineer · ESI-SBA, Algeria

Strong AI systems, implemented in beautiful applications.

I'm Akram Rahali, a fifth-year Artificial Intelligence & Data Science engineering student. I take models (graph neural networks, vision transformers, detectors, retrieval pipelines) all the way to the product someone actually opens.

How I build

From paper to product

Every project runs the same three stages. The model is only the first one.

  1. Stage 1 · Model

    Research-grade learning

    Graph, vision and language models, often straight from a paper, trained and evaluated in PyTorch.

    PyTorch · PyG · DINOv2 · YOLOv8 · CTransPath

  2. Stage 2 · Service

    Served and stored

    Inference behind typed APIs, results persisted, everything containerised and reproducible.

    FastAPI · NestJS · PostgreSQL · ChromaDB · Docker

  3. Stage 3 · Interface

    Designed to be used

    Maps, 3D viewers and mobile screens that turn predictions into decisions.

    React · Three.js · Jetpack Compose · React Native

Selected work · 2026

Featured systems

Four end-to-end builds. Each one is shown in its own colors, the palette the app actually ships with.

01 · Research implementation · May – Jun 2026

AGRIGRAPH AI

Dairy sustainability forecasting for Ireland's 26 counties.

A direct implementation of a spatio-temporal GNN paper: herd records become a county graph, the model forecasts each county's sustainability score to 2036, and policy levers run counterfactual what-if simulations.

Irish counties, one graph node each
26
Forecast horizon for every county
2036
Sustainability pillars scored per herd
4
Confidence band on each trajectory
90%
County atlas. Pick a county on the map.
Forecast to 2036 with a 90% band and the four-pillar radar.
Benchmarks across years, initial vs. simulated policy.
Pipeline
  1. ICBF herd records
  2. VAE augmentation
  3. 4-pillar scoring
  4. Spatio-temporal GNN
  5. Counterfactual levers
  6. FastAPI → React map

Pillars: reproductive efficiency, genetic management, herd health and herd management. Forecasts and simulations are persisted in PostgreSQL and served to an interactive atlas with light and dark themes.

Stack
  • Python
  • PyTorch
  • PyTorch Geometric
  • FastAPI
  • PostgreSQL
  • React

02 · Research · Mar – Jun 2026

Drone Swarm Patterns

Formation flight that emerges from local, learned decisions.

Swarm episodes simulated in PyFlyt are turned into communication graphs. Graph neural networks learn formation assignment and each drone's local setpoint, so control can move from one central planner to every agent, and both modes are replayed side by side.

Formation assignment and local setpoint prediction
2 heads
Per simulation timestep: drones as nodes, links as edges
1 graph
Central planner and decentralised agents, side by side
2 modes
Three.js viewer that scrubs through saved runs
3D replay
  • Episodes → graphs

    Each PyFlyt timestep becomes a graph: drones as nodes, communication links as edges.

  • Two GNN heads

    Formation assignment (who goes where) and local setpoint prediction (how to get there).

  • Central vs. decentral

    A Three.js viewer served by FastAPI runs dual simulations and scrubs through saved runs.

  • Python
  • PyTorch Geometric
  • PyFlyt
  • FastAPI
  • React
  • Three.js

03 · Android · May – Jun 2026

ARWood Tech

Stacked-timber volume from one photo, fully on device.

Point the phone at a log pile: a YOLOv8 segmentation model finds every log end, two reference points fix the real-world scale, and the app returns per-log diameter and total stack volume. No server, no signal needed in the forest.

Point the phone at a pile, nothing else to capture
1 photo
Detection and measurement run on the phone
0 servers
Log ends segmented in the demo pile below
663 logs
1, 4, 9 or 16 tiles, so dense piles keep their small logs
4 tilings
Sign in
Scale calibration
Results
Segmentation mask
  1. 01

    Detect

    YOLOv8 log-end segmentation, tiled 1 / 4 / 9 / 16 so dense piles keep small logs.

  2. 02

    Calibrate

    Two draggable reference points and a known distance set pixels per centimetre.

  3. 03

    Measure

    Diameters × log length give per-log and total volume, with original, mask and YOLO views.

  • Kotlin
  • Jetpack Compose
  • YOLOv8
  • TensorFlow Lite

04 · Computer vision · Jun 2026 – present In progress

Algerian Flower

Botanical relevés from a single field photo.

Ecologists normally estimate plant cover by eye. Here a photo of a vegetation plot is embedded with a fine-tuned DINOv2 vision transformer, and lightweight heads score species abundance, dominance and Braun-Blanquet cover classes.

Field photo of a plot
1 photo
Fine-tuned ViT backbone
DINOv2
Abundance, dominance, cover
3 scores
  1. Plot photo
  2. Fine-tuned DINOv2
  3. Abundance · dominance
  4. Braun-Blanquet cover
  • Python
  • PyTorch
  • DINOv2
  • XGBoost
  • FastAPI
  • PostgreSQL
  • React

Also built

More systems

Medical imaging, agentic retrieval and a full livestock platform, built with the same model-to-product approach.

Medical imaging · Dec 2025

Breast Cancer Histopathology

Slide-level tissue classification. Patches are embedded with CTransPath, classified by classical and semi-supervised models, and their votes aggregated into one slide label, all in a Gradio app.

Patches → CTransPath → SSL + boosting → slide vote

  • PyTorch
  • CTransPath
  • scikit-learn
  • XGBoost
  • Gradio

Agentic RAG · Apr – May 2026

Research Assistant

An agentic reader for scientific literature: it searches arXiv, ingests papers into a local vector store, and answers from session-scoped retrieval refined by a cross-encoder reranker.

arXiv search → ChromaDB → rerank → grounded answer

  • sentence-transformers
  • ChromaDB
  • FastAPI
  • Gradio

Mobile platform

BoviTrack

Livestock operations for Algerian farms. Farmers, veterinarians and zootechnicians share one app for herd records, vet visits, feed rations with nutritional totals, and professional contracts.

Role-based mobile app → NestJS API → PostgreSQL

  • TypeScript
  • React Native
  • Expo
  • NestJS
  • PostgreSQL

Experience · Sep 2025

Software Intern · Algérie Télécom

DOT Khenchela

Designed and built a full-stack telecom billing platform on a local client–server architecture: residential and enterprise subscribers, bimonthly consumption and fee calculation, payment and debt tracking, and dynamic PDF invoices, with role-based access for admin, service, corporate and client users.

  • Node.js
  • Express
  • EJS
  • MongoDB

About

I care most about the last mile: carrying a model through to a working application.

Fifth-year engineering student in Artificial Intelligence & Data Science at ESI-SBA, with training in machine learning, deep learning, NLP and large-scale data processing, and hands-on work in forecasting, computer vision and graph learning. Interested in applied ML, retrieval-augmented generation and data-intensive systems.

École supérieure en informatique de Sidi Bel AbbèsEngineering program · AI & Data Science
Sep 2021 – present
Algérie Télécom, DOT KhenchelaSoftware intern · billing platform
Sep 2025
Baccalaureate16.92 / 20
Jun 2021

Toolkit

AI & data
PyTorchPyTorch Geometricscikit-learnDINOv2YOLOSupervised & unsupervised learning
Language & retrieval
NLPRetrieval-augmented generationLarge language modelssentence-transformers
Programming
PythonCRJavaScriptTypeScriptKotlinSQL
Data processing & databases
Apache Spark (MLlib, SQL, GraphX)PostgreSQLOracleMongoDBCassandraNeo4j
Software
FastAPIReactNode.jsExpressNestJSDockerGradioTensorFlow Lite

Contact

Have a model that deserves a real product? Let's talk.