CV_Reviewer / utils /backend.py
Jonah Ramponi
Cleanup
0c94c61
"""
Main Backend Handling Function
"""
from utils.prompts import (
basic_details_extraction_prompt,
general_skils_extraction_prompt,
specific_skills_comparison_prompt,
)
from utils.gpt import gpt_response
prompt_mapping = {
"basic": basic_details_extraction_prompt,
"general": general_skils_extraction_prompt,
"specific": specific_skills_comparison_prompt,
}
def produce_report(
cv_contents: str, job_post_contents: str, PROMPT_TO_USE: str, API_KEY: str
) -> str:
"""Process CV contents, using Cohere"""
# The KEY ARGUMENT here is PROMPT_TO_USE, which controls the prompt to use
# First, get the prompt from the prompt dict
prompt = prompt_mapping.get(PROMPT_TO_USE)
# Now, populate with the contents of the CV and job posting
prompt = prompt.replace("<cv>", cv_contents).replace(
"<job-posting>", job_post_contents
)
response = gpt_response(
prompt=prompt,
api_key=API_KEY,
)
return response
if __name__ == "__main__":
with open("sample_data/meta_job.txt", "r") as file:
post_contents = file.read()
with open("sample_data/example_cv.txt", "r") as file:
cv_contents = file.read()
COHERE_API_KEY = ""
output = produce_report(post_contents, cv_contents, "specific", COHERE_API_KEY)
print(output)