How pranay0904/ai-interview-assist-ml-service works
This is a small FastAPI NLP service. Its primary workflow accepts resume and job-description text, computes semantic similarity, and returns an ATS score. A separate Gemini module generates interview questions at import time; the sampled code does not connect it to the API. The diagram reflects the available source and omits uncertain internal framework behavior.
Main entry points: main.py FastAPI Endpoint · ats_service.py Score Calculator · gemini_service.py Question Generator · resume_ats_request_dto.py ATS Request DTO
Components 8
ATS API
- FastAPI Endpoint
main.py - ATS Request DTO
models/resume_ats_request_dto.py
Similarity Scoring
- Score Calculator
services/ats_service.py - Sentence Transformer
Question Generation
- Question Generator
services/gemini_service.py
Other components
- API Client
- Gemini API
- Console Output
Connections 8
- API Client → FastAPI Endpoint: posts request
- FastAPI Endpoint → ATS Request DTO: validates as
- FastAPI Endpoint → Score Calculator: calculates score
- Score Calculator → Sentence Transformer: encodes and compares
- Score Calculator → FastAPI Endpoint: returns score
- FastAPI Endpoint → API Client: returns score
- Question Generator → Gemini API: generates questions
- Question Generator → Console Output: prints response