Skip to content

BitonicAI Service

The BitonicAI service is a FastAPI application for resume ingestion, extraction, and processing. It uses OpenAI Agents to extract structured data from resumes and stores them with PostgreSQL and S3-compatible storage.

Overview

The BitonicAI service provides: - Resume Upload: Accept PDF resumes via REST API - AI-Powered Extraction: Uses OpenAI Agents to extract structured resume data - Secure Storage: Stores files in S3-compatible storage (Garage) and metadata in PostgreSQL - OAuth2 Authentication: Secure API access via Logto

Architecture

┌─────────────┐
│   Client    │
└──────┬──────┘
┌─────────────────┐
│   FastAPI App   │
│  (bitonicai)    │
└──────┬──────────┘
       ├──► PDF Processing (PyMuPDF)
       ├──► OpenAI Agent Extraction
       ├──► PostgreSQL (SQLModel)
       └──► S3 Storage (Garage)

Key Components

API Routes

  • POST /api/vb1/resume/upload - Upload and process resume
  • GET /api/vb1/resume/list - List user's resumes
  • DELETE /api/vb1/resume/all - Delete all user resumes

Agents

  • ExtractionAgent: Uses OpenAI Agents framework to extract structured resume data from text

Storage

  • PostgreSQL: Stores resume metadata using SQLModel
  • S3/Garage: Stores resume files

Authentication

  • Logto OIDC: OAuth2 authentication with scope-based authorization

Quick Start

See the Quick Start Guide for setup and usage instructions.

API Documentation