Please ensure that Anton is running with Python3.9+.
In terminal:
pip install -r requirements.txt
Note: There could be some requirements not listed in requirements.txt. I use GPT-4 in this project, so please prepare an openai key first.
If you want to compile the LaTeX file, please ensure that you have installed LaTeX on your machine, please see https://www.latex-project.org/get/. Besides, if you want to compile the .tex file into .doc file, please install pandoc, see https://pandoc.org/installing.html.
Here we provide the simple use cases of Anton. Anto first transfer the document with any format into image format:
PDF to image
from utils import pdf_to_img
convert_and_merge_pdf_to_jpg(pdf_path, output_folder)
URL to image
from utils import web_to_img
capture_fullpage_screenshot(url, folder)
Then, we can use Anto to process the resume and job description.
from anton.anton_cv import anton_cv_process
cv_path="./data/CV/text.jpg"
cv_text=anton_cv_process().cv_content_extraction(cv_path)
We can save the extracted content via
from utils import save_text_data
save_text_dat(cv_text,"extracted_cv","json","./data/stored_cv")
from anton.anton_jd import anton_jd_process
jd_path="./data/CV/jd_text.jpg"
jd_text=anton_jd_process().jd_content_extraction(jd_path)
from anton.anton_cv import anton_cv_process
polished_cv=anton_cv_process().cv_optimization(jd_text,cv_text)
from anton.anton_cv import anton_cv_process
template="./data/compiled_file/template.tex"
cv_latex_code=anton_cv_process().cv_generation(polished_cv,template)
Assume the latex source code is extracted and saved as text.tex, we can get the pdf and doc of a cv
from utils.latex_to_pdf_doc import compile_latex_and_convert_to_word
compile_latex_and_convert_to_word(text.tex, path_to_save)
from anton.anton_cover_letter import anton_letter_process
cover_letter=anton_letter_process().cover_letter_generation(polished_cv,jd_text)
from anton.anton_interview import anton_interview_process
q_a=anton_interview_process().interview_qa(polished_cv,jd_text)
from anton.anton_interview import anton_interview_process
self_intro=anton_interview_process().interview_self_introduction(polished_cv,jd_text,'1') # 1 is the time of self introduction