decodingdatascience commited on
Commit
845fe4d
·
verified ·
1 Parent(s): 6b611b8

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +56 -0
  2. requirements.txt +4 -0
app.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import google.generativeai as genai
3
+ import os
4
+ import PyPDF2 as pdf
5
+ from dotenv import load_dotenv
6
+ import json
7
+
8
+ load_dotenv() ## load all our environment variables
9
+
10
+ genai.configure(api_key=os.getenv("GOOGLE_API_KEYS"))
11
+
12
+ def get_gemini_repsonse(input):
13
+ model=genai.GenerativeModel('gemini-pro')
14
+ response=model.generate_content(input)
15
+ return response.text
16
+
17
+ def input_pdf_text(uploaded_file):
18
+ reader=pdf.PdfReader(uploaded_file)
19
+ text=""
20
+ for page in range(len(reader.pages)):
21
+ page=reader.pages[page]
22
+ text+=str(page.extract_text())
23
+ return text
24
+
25
+ #Prompt Template
26
+
27
+ input_prompt="""
28
+ Hey Act Like a skilled or very experience ATS(Application Tracking System)
29
+ with a deep understanding of tech field,software engineering,data science ,data analyst
30
+ and big data engineer. Your task is to evaluate the resume based on the given job description.
31
+ You must consider the job market is very competitive and you should provide
32
+ best assistance for improving thr resumes. Assign the percentage Matching based
33
+ on Jd and
34
+ the missing keywords with high accuracy
35
+ resume:{text}
36
+ description:{jd}
37
+
38
+ I want the response in Three blocks having the structure
39
+ JD Match:"%"
40
+ MissingKeywords:[]
41
+ Tips to Improe the Resume for Higher Match :""}}
42
+ """
43
+
44
+ ## streamlit app
45
+ st.title("DDS Smart ATS")
46
+ st.text("Improve Your Resume ATS Score Match")
47
+ jd=st.text_area("Paste the Job Description")
48
+ uploaded_file=st.file_uploader("Upload Your Resume",type="pdf",help="Please uplaod the pdf")
49
+
50
+ submit = st.button("Submit")
51
+
52
+ if submit:
53
+ if uploaded_file is not None:
54
+ text=input_pdf_text(uploaded_file)
55
+ response=get_gemini_repsonse(input_prompt)
56
+ st.subheader(response)
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ streamlit
2
+ PyPDF2
3
+ google.generativeai
4
+ python-dotenv