~/paras-karki · portfolio

Loading portfolio

Skip to content
PK

Full Stack Developer · Toronto, ON

Hi, I'm Paras.

Tech-savvy full-stack developer in Toronto, working across AI, cloud servers and IT support.

Currently working on

  • Document extraction with OCR
  • Building AI agent workflows
  • Data normalization and review with LLMs
  • Deploying open-source models on the cloud
Sep 2025 – presentAI & AgentsSoftware

Document-extraction pipeline

Insurance documents in, structured records out: classified, read by vision and language models, checked, and saved.

Now · each document type matched to the model that measured best · lower cost per document

in

  • PDF upload
  • blob URI
  • Excel
Blob Storagerec_8f2c41

sorted by type → read by

Dense form
NuExtract 3JSON outown GPUDoclingcheckboxesown GPU
Schedule / table
PaddleOCRtext + boxesown GPUKimiAI Foundry API
General PDF
PaddleOCRtext + boxesown GPUKimiAI Foundry API

fields out · json

  • Named Insured

    …

  • Policy Number

    …

  • Effective Date

    …

  • Occupancy: Owner Occupied

    …

  • Building Coverage

    …

  • Producer / Agency

    …

saved →PostgreSQLone row per recordExternal system APIsubmitted step by step
indexed →EmbeddingsPostgreSQL + pgvectorAzure AI Searchsearch indexretrievalsemanticvectorkeywordhybridHow search uses it →

01 Intake. A PDF upload, a blob URI or an Excel file. Each lands in Azure Blob Storage under one record ID.

How it was built →
Sep 2025 – presentCloud & InfrastructureAI & Agents

Self-hosted GPU servers for AI models

Custom and open-source models served from GPU servers we run, in development and production, instead of paying a metered API per call.

request path

  1. Your appsends a document
  2. Endpointprivate network · authenticated+9 ms
  3. GPU containercustom model · L4+380 ms
  4. ResponseJSON back to the app+12 ms

press send to trace one request

monthly cost · illustrative

Per-call cloud API$1,600
Private GPU, fixed$1,200

Past the break-even point, every extra document on the private GPU is free.

How it was built →
2026IT SupportCloud & Infrastructure

Active Directory administration

Running a Windows domain: users, groups, OUs and Group Policy, plus the tickets help desks handle every day.

example.local · synthetic lab domain

  • ▾ OU=IT

    • usrAlex Chen
    • pcIT-LT-01
    • grpHelpdesk-PasswordReset
  • ▾ OU=Sales

    • usr_Sales Templatetemplate
    • usrJordan Patel
    • pcSAL-LT-07
    • grpSales-Staff
  • ▾ OU=Finance

    • usrPriya Shah
    • usrDana Brown
    • pcFIN-DT-03
    • grpFinance-Share-RW
  • ▾ OU=Warehouse

    • usrSam Kim
    • pcWH-PC-02
    • grpWarehouse-Staff
  • ▾ OU=Disabled Users

    • (empty)

action log · T-1041

  1. ✓Find the user in Active Directory Users and ComputersPS> Get-ADUser p.shah -Properties LockedOut
  2. ✓Account tab → Unlock accountPS> Unlock-ADAccount p.shah
  3. ✓Reset Password…PS> Set-ADAccountPassword p.shah -Reset
  4. ✓Tick "User must change password at next logon"PS> Set-ADUser p.shah -ChangePasswordAtLogon $true

What I told them“You're unlocked. Pick a new password when you sign in.”

How it was built →

Paras Karki · CV

page 1 of 2

Paras Karki: software, AI and IT infrastructure