cv_analysis_and_candidate_evaluation.json
Overview
The cv_analysis_and_candidate_evaluation.json file defines a conversational workflow designed to assist Human Resources (HR) professionals in evaluating candidate resumes against a specified job description (JD). This workflow facilitates batch processing of resumes submitted through a chat interface by leveraging a specialized AI agent to extract standardized candidate information and perform JD matching analysis.
The core functionality is to streamline large-scale resume screening by automatically extracting key data points from each resume, normalizing this data, and scoring the alignment between each candidate’s resume and the job description. The output is a clear, hierarchical text analysis in Chinese, formatted to separate individual resume evaluations.
Detailed Components and Their Explanations
The workflow is modeled using a domain-specific language (DSL) that describes components, their parameters, and relationships. The key components are:
1. begin (Component: Begin)
Purpose: Entry point for the workflow where HR inputs the Job Description.
Parameters:
enablePrologue (boolean): Enables an introductory message.
inputs:JD(line, required): The Job Description text.
mode (string): "conversational" - enables chat-based interaction.
prologue(string): Welcoming message guiding HR to upload JD and resumes.
Usage: The HR user starts the process here by submitting the job description.
2. Iteration:PetiteBanksWarn (Component: Iteration)
Purpose: Iterates over the collection of uploaded resumes (
sys.files) to process each resume individually.Parameters:
items_ref(reference): Points to the list of resumes uploaded into system files.outputs:evaluation(Array): Collects evaluation results from the Agent's output.
Interaction: Receives the Job Description from
beginand processes each resume throughIterationItemandAgent.
3. IterationItem:EagerGiftsOpen (Component: IterationItem)
Purpose: Represents a single resume item in the iteration.
Parameters:
outputs:index (integer): The position of the current resume in the list.
item(unknown type): The actual resume data.
Interaction: Sends the current resume to the
Agentcomponent for evaluation.
4. Agent:AfraidBearsShare (Component: Agent)
Purpose: The core AI-powered resume evaluation agent.
Parameters:
llm_id: Specifies the large language model identifier (deepseek-chat@DeepSeek).temperature: Set to 0.1 for focused, less random output.max_tokens: 4096 tokens max for response length.prompts: Template prompt for the AI, injecting the HR query, Job Description, and current resume.sys_prompt: Detailed system instructions guiding the agent behavior.outputs:content(string): The agent's evaluation result for the resume.
Various penalty and retry controls for managing AI response quality.
Functionality:
Extracts 6 key standardized data points from each resume.
Normalizes candidate information.
Scores the JD-match on a 10-point scale.
Provides a brief matching analysis highlighting alignments and mismatches.
Responds exclusively in Chinese.
Ensures output formatting complies with length and separation requirements.
Usage Example:
HR is asking about: {sys.query} Job description is {begin@JD} Resume is {IterationItem:EagerGiftsOpen@item}The agent processes this prompt and returns the structured evaluation.
5. Message:TenLizardsShake (Component: Message)
Purpose: Outputs the evaluation results from the
Agentcomponent back to the user.Parameters:
content: References the agent’s content output, presenting the evaluation text.
Interaction: Receives processed evaluation content from the Agent and displays it as the final message output.
Important Implementation Details and Algorithms
Batch Processing via Iteration: The workflow employs an iteration component to handle multiple resumes in sequence, ensuring isolated evaluation for each resume.
AI-Prompt Engineering: The agent is driven by a comprehensive system prompt that defines mission, capabilities, output format, and workflow steps. This ensures consistent and high-quality extraction and evaluation.
Resume Data Extraction and Normalization: The agent extracts six key data points per resume (e.g., full name, contact info, education, experience years, residence city) with confidence levels to ensure data quality.
JD Matching Scoring: The agent scores alignment on a 10-point scale, detailing strengths and gaps between the resume and job description.
Language and Formatting Constraints: The agent always responds in Chinese, separates resume information with paragraphs, avoids subheadings, and respects strict line formatting to keep individual resumes distinct.
Error Handling: The agent includes parameters for retrying requests and error delays to improve robustness.
Interaction with Other System Components
Input: HR uploads a Job Description and multiple resumes (files) into the system.
Processing: The iteration component loops through resumes, sending each to the AI agent for analysis.
Output: The evaluation results are compiled and presented via message components.
Integration Potential: The agent can save results to external services such as Google Sheets via MCP (Multi-Channel Pipeline) for record-keeping or further analysis.
User Interface: The workflow is designed for a conversational chat interface, allowing HR users to submit files and receive evaluations interactively.
Usage Workflow Summary
Begin: HR uploads the Job Description.
Iteration: The system iterates over all uploaded resumes.
Agent Evaluation: Each resume is analyzed by the AI agent for data extraction and JD matching.
Message Output: The evaluation result for each resume is output separately.
Optional Storage: Results can be forwarded to Google Sheets or other systems.
Visual Diagram: Component Flowchart of the Workflow
flowchart LR
Begin["Begin (Job Description Input)"]
Iteration["Iteration (Process Resumes)"]
IterationItem["IterationItem (Single Resume)"]
Agent["Agent (Resume Evaluation)"]
Message["Message (Output Evaluation)"]
Begin --> Iteration
Iteration --> IterationItem
IterationItem --> Agent
Agent --> Message
Explanation: The flowchart illustrates the sequential flow: starting with the Job Description input, iterating over resumes, passing each resume to the AI agent for evaluation, and finally delivering the evaluation message.
Summary
The cv_analysis_and_candidate_evaluation.json is a carefully structured workflow designed to automate and standardize the process of resume evaluation against a job description using AI-powered language models. It supports batch processing, ensures consistent data extraction and matching analysis, and outputs user-friendly evaluations in Chinese within a conversational interface. This file serves as a critical component for HR teams looking to scale and optimize candidate screening.
Appendix: Key Parameters and Concepts
Component | Key Parameters/Outputs | Description |
|---|---|---|
Begin |
| Starting point for the workflow |
Iteration |
| Iterates over all uploaded resumes |
IterationItem | index, | Represents each resume in the iteration |
Agent |
| AI agent performing resume data extraction and evaluation |
Message |
| Displays the evaluation results |
If you require further integration details or examples of AI prompt usage, please ask!