* documentation writing skill * visa sponsors page * overview * in progress board * settings * reactive resume section * database backups * workflows * post application tracking flow * manual tracking caveats * pricing section * pipeline run detalis * job search bar * keyboard shortcuts * bulk actions * no informal phrasing * formatting * build fix? * Update docs-site/docs/features/overview.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs-site/versioned_docs/version-0.1.20/features/orchestrator.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs-site/docs/features/visa-sponsors.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs-site/docs/features/in-progress-board.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * remove link to page that don't exist --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
62 lines
1.5 KiB
Markdown
62 lines
1.5 KiB
Markdown
---
|
|
id: manual
|
|
title: Manual Import Extractor
|
|
description: Import jobs from pasted descriptions and run AI-assisted inference.
|
|
sidebar_position: 4
|
|
---
|
|
|
|
Manual import lets users add jobs that automated scrapers miss.
|
|
|
|
## Big picture
|
|
|
|
User pastes raw description, AI infers structure, user reviews edits, then import saves and scores the job.
|
|
|
|
## 1) Input
|
|
|
|
Manual import accepts:
|
|
|
|
- plain text job descriptions
|
|
- raw HTML job descriptions
|
|
- job links/URLs
|
|
|
|
When a URL is provided, backend fetch attempts depend on whether the page can be resolved with `curl`. Some job sites block or heavily script content, so certain links will not resolve cleanly.
|
|
|
|
## 2) AI inference
|
|
|
|
Endpoint:
|
|
|
|
- `POST /api/manual-jobs/infer`
|
|
|
|
Service:
|
|
|
|
- `orchestrator/src/server/services/manualJob.ts`
|
|
|
|
Behavior:
|
|
|
|
- Converts the provided input into text context and sends it to the configured LLM
|
|
- Extracts structured fields (title, employer, location, salary, etc.)
|
|
- Returns inferred JSON for user review
|
|
|
|
Practical limit:
|
|
|
|
- The inference quality ceiling is mostly the configured model capability and context behavior. Better model quality generally yields better field extraction.
|
|
|
|
If no LLM key is configured, inference is skipped and user can fill fields manually.
|
|
|
|
## 3) Review and edit
|
|
|
|
User reviews inferred fields and corrects missing/wrong values.
|
|
|
|
## 4) Storage and scoring
|
|
|
|
Import endpoint:
|
|
|
|
- `POST /api/manual-jobs/import`
|
|
|
|
On import:
|
|
|
|
- Generates unique job ID if URL absent
|
|
- Stores source as `manual`
|
|
- Triggers async suitability scoring
|
|
- Persists score and reason
|