Skip to content
View haritonn's full-sized avatar
🏔️
lock in
🏔️
lock in

Block or report haritonn

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. 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
haritonn/README.md

Hi, I'm Hariton!

Aspiring ML Engineer / Data Scientist

I'm a fourth-year student at Saratov State University, pursuing a bachelor's degree in Fundamental Computer Science and Information Technology.

I work on machine learning projects involving text, speech, and images. My experience includes a speech recognition system developed during a university internship, a local RAG assistant for PDF documents, and a search engine for biomedical publications.

I'm interested in the full process of building ML applications: preparing data, experimenting with models, evaluating results, and making the solution usable through an application. Alongside my projects, I teach machine learning at a student community and develop tools in Rust.

Open to ML Engineering and Data Science internships / junior opportunities, including remote roles. Based in Saratov, Russia. Check my resume (RU/EN).

Preferred languages

Python Rust SQL

Current stack

NumPy Pandas Matplotlib Seaborn Scikit-learn PyTorch Hugging Face ClearML Streamlit Docker LaTeX Typst FastAPI

My academic background includes linear algebra, calculus, probability, and statistics, alongside classical machine learning and deep learning.

Selected projects

An MVP that turns a website URL and a collection goal into a document corpus and a searchable index.

  • Built an Explorer agent that inspects pages and proposes crawl rules and CSS selectors; Rust handles document collection and indexing without LLM calls during bulk crawling.
  • Connected Python orchestration in LangGraph to the Rust engine through PyO3, with BM25 retrieval powered by Tantivy.
  • Added a workflow for human relevance annotation and comparison of search configurations using nDCG, Precision, Recall, and judgment coverage.

Built with: Rust, Python, LangSmith, LangGraph, PyO3, Tantivy, Spider.

A university internship project for transcribing Russian-language conversations, identifying speakers, and recognizing domain-specific catalog terms.

  • Combined Faster-Whisper transcription, Silero VAD, and pyannote speaker diarization.
  • Implemented catalog term recognition with a NeMo CTC context graph without fine-tuning the main ASR model.
  • Linked transcripts and detected terms to speakers; evaluated transcription, diarization, and terminology recognition using WER, CER, DER, and F1.

Built with: Python, Faster-Whisper, Silero VAD, pyannote, NVIDIA NeMo.

A local RAG pipeline that retrieves evidence from QASPER research papers and uses it to generate answers wit hOllama.

  • Built paragraph-level indexing and hybrid dense and sparse retrieval with Qdrant and Reciprocal Rank Fusion.
  • Added cross-encoder reranking and CLI access to source metadata.
  • Evaluated retrieval on 888 of 1,005 validation questions: MRR@10 0.5221, NDCG@10 0.5351, Recall@10 0.7493.

Built with: Python, LLMs, text embeddings, Qdrant, Streamlit.

A search engine for Europe PMC publications on training, recovery, and sports nutrition.

  • Implemented BM25 lexical retrieval, semantic retrieval with MedCPT and FAISS, and hybrid retrieval using Reciprocal Rank Fusion.
  • Added offline ranking evaluation and a local LLM-assisted relevance-labeling pipeline.
  • Built a Streamlit interface for searching and exploring publications.

Built with: Python, BM25, MedCPT, FAISS, Ollama, Streamlit.

An image-captioning pipeline trained on Flickr8k to generate English descriptions of images.

  • Implemented a ResNet-50 encoder and an LSTM decoder with soft attention in PyTorch.
  • Used scheduled sampling, label smoothing, attention regularization, gradient clipping, and early stopping during training.
  • Added deterministic dataset splits, checkpointing, optional ClearML tracking, and evaluation with BLEU and METEOR.

Built with: Python, PyTorch, ResNet, LSTM, attention, ClearML.

A Rust terminal dashboard for monitoring NVIDIA GPUs and host-system resources in one place.

  • Integrated NVML to display GPU utilization, temperature, VRAM usage, and GPU-consuming processes.

  • Added multi-GPU navigation, configurable refresh, and utilization history.

  • Included CPU, RAM, swap, and process monitoring in the same interface.

Built with: Rust, NVML, Ratatui, Crossterm, Sysinfo.

Research & coursework

Bachelor's thesis (in progress): GraphRAG for question-answering systems based on documents and a knowledge graph

Research into using GraphRAG to connect evidence across scientific documents and support the formulation of research hypotheses.

The motivation is the growing volume of publications and the uneven reliability of reported results, which make it harder to identify substantive advances. The work focuses on supporting timely synthesis of the latest state-of-the-art approaches from major conferences into coherent sets of research hypotheses grounded in source documents and their relationships.

Investigated how embedding models and feature-space transformations affect news-event clustering. Compared embedding families, dimensionality reduction methods, and HDBSCAN configurations to study their effect on clustering quality.

Compared diffusion models, GANs, and large multimodal model approaches for virtual clothing try-on. Evaluated visual quality and inference time on a custom dataset.

Teaching & community

I'm one of the leading lecturers at the machine learning club within Development Students Clubs (DSC), a student-led community at my university.

We cover classical machine learning with an emphasis on supervised learning. I enjoy connecting the underlying concepts to code and helping students understand how the methods work.

Some of my recorded lectures and club materials:

Currently exploring

  • NLP & LLMs: text representations and applications such as summarization and question answering.
  • RAG & information retrieval: retrieval quality, ranking evaluation, and grounding answers in source documents.
  • ML engineering: reproducible experiments, efficient inference, and integrating models into applications.

Contact me

I'm happy to discuss internship and junior opportunities, ML projects, or collaboration.

Location: Saratov, Russia · Open to remote work
Languages: Russian — native; English — B2

Telegram Email

Pinned Loading

  1. resume resume Public

    My current resume

    Typst

  2. dsc-sgu/machine-learning-club dsc-sgu/machine-learning-club Public

    Данный репозиторий является новым официальным репозиторием клуба машинного обучения! Здесь постепенно будет появляться соответствующий лекциям материал.

    TeX 3