Skip to content
View samusafe's full-sized avatar
:shipit:
:shipit:

Highlights

  • Pro

Block or report samusafe

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
samusafe/README.md

Samuel Carvalho

AI Engineer — RAG · Fine-tuning · LLMOps
Private, production GenAI systems, built end to end and measured before they ship.

Portfolio LinkedIn Email

About

Final-year Computer Engineering student in Porto, building private, on-prem AI systems from the backend and queues to the RAG pipeline, the fine-tuned model and the desktop UI. I don't ship an AI change without a number behind it: every retrieval or model change goes through rag-eval-harness before it lands.

At Fashable I built the backend and Azure infrastructure behind multimodal product search, demoed the MVP at NRF 2024 (New York) and saw it ship on the Microsoft Marketplace as a Teams Copilot app.

Featured projects

Project What it is What it shows
rag-eval-harness Regression gates for RAG pipelines: hit rate, MRR, keyword recall, refusal and citation checks, p95 latency, threshold gates and per-question diffs between runs. No LLM-as-judge. Evaluation discipline. The same loop LocalVault runs internally.
qlora-8gb-pipeline JSONL dataset → 4-bit QLoRA adapter (Unsloth + TRL, Qwen 2.5 3B) → GGUF for Ollama, on a single RTX 4060. Digest-pinned Docker image and a provenance manifest per run. Reproducible fine-tuning under a hard memory budget.
swiss-legal-rag · alpha Local, trilingual RAG over Swiss federal law (Fedlex, DE/FR/IT): hybrid pgvector + full-text search with Reciprocal Rank Fusion, cross-encoder reranking, article-level citations, 33-question gold set. Offline Tauri desktop app. Multilingual retrieval with citations you can check.
YOLOv8 Retail shelf monitoring on SKU-110K and Shelves: 0.900 mAP@0.5 with Nano at ~3.2 ms per image on an RTX 4060. More labelled data beat a 3× larger backbone.
LocalVault · closed-source On-prem AI platform: local RAG (pgvector, cross-encoder reranking, semantic cache), QLoRA fine-tuning on an 8 GB GPU, MLflow evals and Langfuse tracing. NestJS + BullMQ backend, Tauri/React desktop app. The system the three tools above were built for. Case study →

More case studies, including maiai and nexus-doc-ai, on samuel-carvalho.com/projects.

Stack

AI / LLM


LangChain • pgvector • Ollama
QLoRA / Unsloth • Langfuse • MLflow
Backend & Data


NestJS • Prisma • BullMQ
PostgreSQL • Redis
Frontend & Infra


React • Tauri • Tailwind
Docker • MinIO • Azure

Also comfortable with Java (Spring Boot), Go and MongoDB.

Pinned Loading

  1. rag-eval-harness rag-eval-harness Public

    RAG evaluation harness — hit-rate, recall and refusal gates with per-question regression diffs. LangChain · pgvector · MLflow

    Python

  2. qlora-8gb-pipeline qlora-8gb-pipeline Public

    End-to-end QLoRA fine-tuning on 8 GB consumer GPUs — Unsloth/TRL, GGUF export to Ollama, MLflow, Docker. Tested on an RTX 4060

    Python

  3. swiss-legal-rag swiss-legal-rag Public

    Ask Swiss federal law in any language, get article-cited answers linked to Fedlex — local-first RAG, zero cloud (Ollama + pgvector)

    TypeScript 1

  4. YOLOv8 YOLOv8 Public

    Real-time shelf monitoring with YOLOv8 — 14.4k images, 89.9% mAP@0.5 on SKU-110K, Streamlit live-webcam app with analytics

    Jupyter Notebook

  5. cynlik/techdot-backend cynlik/techdot-backend Public

    TypeScript 2 1