104 lines
4.2 KiB
Markdown
104 lines
4.2 KiB
Markdown
The system follows a carefully designed pipeline with isolated stages to prevent fabrication:
|
|
|
|
## System Architecture Overview
|
|
|
|
The system uses a pipeline of isolated analysis and generation steps:
|
|
|
|
1. **Stage 1: Isolated Analysis**
|
|
- **1A: Job Analysis** - Extracts requirements from job description only
|
|
- **1B: Skill-Based Assessment** - For each required skill, determine a Individisual Skill Assessment, adding it to a Skill Assessments Collection.
|
|
|
|
2. **Stage 2: Resume Generation**
|
|
- Uses Skills Asessments Collection to generate a tailored resume.
|
|
|
|
3. **Stage 3: Verification**
|
|
- Performs fact-checking to catch any remaining fabrications
|
|
|
|
```mermaid
|
|
flowchart TD
|
|
subgraph "Stage 1: Isolated Analysis"
|
|
subgraph "Stage 1A: Job Analysis"
|
|
A1[Job Description Input] --> A2[Job Analysis LLM]
|
|
A2 --> A3[Job Requirements JSON]
|
|
end
|
|
|
|
subgraph "Stage 1B: Skill-Based Assessment"
|
|
B1[Resume Input] --> B2[Candidate Info]
|
|
B2 --> B3[RAG System]
|
|
A3 --> B4[Skill Assessment Generator]
|
|
B3 --> B4
|
|
B4 --> B5{For Each Required Skill}
|
|
B5 --> B6[Skill-Focused LLM Query]
|
|
B6 --> B7[Individual Skill Assessment]
|
|
B7 --> B8[Skill Assessments Collection]
|
|
end
|
|
end
|
|
|
|
subgraph "Stage 2: Resume Generation"
|
|
C1[Skill Assessments Collection] --> C2[Resume Generator]
|
|
C3[Original Resume Reference] --> C2
|
|
C4[Candidate Information] --> C2
|
|
C2 --> C5[Resume Generation Prompt]
|
|
C5 --> C6[Resume Generation LLM]
|
|
C6 --> C7[Tailored Resume Draft]
|
|
end
|
|
|
|
subgraph "Stage 3: Statistics & Verification"
|
|
D1[Job Requirements JSON] --> D2[Match Statistics Calculator]
|
|
D3[Skill Assessments Collection] --> D2
|
|
D2 --> D4[Match Statistics]
|
|
D4 --> D5[Verification LLM]
|
|
C7 --> D5
|
|
D5 --> D6{Verification Check}
|
|
D6 -->|PASS| D7[Approved Resume]
|
|
D6 -->|FAIL| D8[Correction Instructions]
|
|
D8 --> C2
|
|
end
|
|
|
|
A3 --> B4
|
|
B8 --> C1
|
|
B8 --> D3
|
|
B1 --> C3
|
|
|
|
style A2 fill:#f9d77e,stroke:#333,stroke-width:2px
|
|
style B6 fill:#f9d77e,stroke:#333,stroke-width:2px
|
|
style C6 fill:#f9d77e,stroke:#333,stroke-width:2px
|
|
style D5 fill:#f9d77e,stroke:#333,stroke-width:2px
|
|
style B5 fill:#a3e4d7,stroke:#333,stroke-width:2px
|
|
style D6 fill:#a3e4d7,stroke:#333,stroke-width:2px
|
|
style D7 fill:#aed6f1,stroke:#333,stroke-width:2px
|
|
style D8 fill:#f5b7b1,stroke:#333,stroke-width:2px
|
|
```
|
|
|
|
## Stage 1: Isolated Analysis
|
|
|
|
1. **Job Analysis**: Extracts requirements from just the job description
|
|
2. **Candidate Analysis**: Catalogs qualifications for each job requirement from just the resume/context
|
|
|
|
## Stage 2: Resume Generation
|
|
|
|
Creates a tailored resume using the skills collection and candidate information.
|
|
|
|
## Stage 3: Verification
|
|
|
|
1. Performs fact-checking to catch any remaining fabrications
|
|
2. Corrects issues if needed and re-verifies
|
|
|
|
### Key Anti-Fabrication Mechanisms
|
|
|
|
The system uses several techniques to prevent fabrication:
|
|
|
|
* **Isolation of Analysis Stages**: By analyzing the job and candidate separately, and having the LLM only provide evidence of a single skill per pass, the system prevents the LLM from prematurely creating connections that might lead to fabrication.
|
|
* **Evidence Requirements**: Each qualification included must have explicit evidence from the original materials.
|
|
* **Conservative Transferability**: The system is instructed to be conservative when claiming skills are transferable.
|
|
* **Verification Layer**: A dedicated verification step acts as a safety check to catch any remaining fabrications.
|
|
* **Strict JSON Structures**: Using structured JSON formats ensures information flows properly between stages.
|
|
|
|
## Implementation Details
|
|
|
|
* **Prompt Engineering**: Each stage has carefully designed prompts with clear instructions and output formats.
|
|
* **Error Handling**: Comprehensive validation and error handling throughout the pipeline.
|
|
* **Correction Loop**: If verification fails, the system attempts to correct issues and re-verify.
|
|
* **Traceability**: Information in the final resume can be traced back to specific evidence in the original materials.
|
|
|