Update app.py
Browse files
app.py
CHANGED
|
@@ -1,11 +1,9 @@
|
|
| 1 |
import streamlit as st
|
| 2 |
-
from sentence_transformers import SentenceTransformer
|
| 3 |
from sklearn.metrics.pairwise import cosine_similarity
|
| 4 |
from keyphrasetransformer import KeyPhraseTransformer
|
| 5 |
from datasets import load_dataset
|
| 6 |
-
from sentence_transformers import losses
|
| 7 |
from torch.utils.data import DataLoader
|
| 8 |
-
from sentence_transformers import InputExample
|
| 9 |
import torch
|
| 10 |
|
| 11 |
kp = KeyPhraseTransformer()
|
|
@@ -24,6 +22,13 @@ def generate_wordcloud(text, title):
|
|
| 24 |
# Your existing code for generating word clouds
|
| 25 |
pass
|
| 26 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 27 |
st.title("Resume Match Calculator")
|
| 28 |
|
| 29 |
model = load_model()
|
|
@@ -48,13 +53,6 @@ for i in range(n_examples):
|
|
| 48 |
# Now train_examples contains InputExample instances with 'Resume' as text
|
| 49 |
# You can use train_examples for training your sentence embedding model
|
| 50 |
|
| 51 |
-
class CustomCollate:
|
| 52 |
-
def __init__(self):
|
| 53 |
-
pass
|
| 54 |
-
|
| 55 |
-
def __call__(self, batch):
|
| 56 |
-
return batch
|
| 57 |
-
|
| 58 |
# Create a DataLoader for training examples with custom collate function
|
| 59 |
batch_size = 16
|
| 60 |
train_dataloader = DataLoader(train_examples, shuffle=True, batch_size=batch_size, collate_fn=CustomCollate())
|
|
@@ -73,7 +71,7 @@ for epoch in range(epochs):
|
|
| 73 |
|
| 74 |
for batch in train_dataloader:
|
| 75 |
optimizer.zero_grad()
|
| 76 |
-
embeddings = model.encode(batch['texts'])
|
| 77 |
loss_value = train_loss.compute_loss(embeddings, torch.zeros_like(embeddings))
|
| 78 |
loss_value.backward()
|
| 79 |
optimizer.step()
|
|
@@ -119,5 +117,3 @@ if st.button("Calculate Match Score"):
|
|
| 119 |
|
| 120 |
else:
|
| 121 |
st.write("Please enter both the job description and resume.")
|
| 122 |
-
|
| 123 |
-
|
|
|
|
| 1 |
import streamlit as st
|
| 2 |
+
from sentence_transformers import SentenceTransformer, InputExample, losses
|
| 3 |
from sklearn.metrics.pairwise import cosine_similarity
|
| 4 |
from keyphrasetransformer import KeyPhraseTransformer
|
| 5 |
from datasets import load_dataset
|
|
|
|
| 6 |
from torch.utils.data import DataLoader
|
|
|
|
| 7 |
import torch
|
| 8 |
|
| 9 |
kp = KeyPhraseTransformer()
|
|
|
|
| 22 |
# Your existing code for generating word clouds
|
| 23 |
pass
|
| 24 |
|
| 25 |
+
class CustomCollate:
|
| 26 |
+
def __init__(self):
|
| 27 |
+
pass
|
| 28 |
+
|
| 29 |
+
def __call__(self, batch):
|
| 30 |
+
return batch
|
| 31 |
+
|
| 32 |
st.title("Resume Match Calculator")
|
| 33 |
|
| 34 |
model = load_model()
|
|
|
|
| 53 |
# Now train_examples contains InputExample instances with 'Resume' as text
|
| 54 |
# You can use train_examples for training your sentence embedding model
|
| 55 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
# Create a DataLoader for training examples with custom collate function
|
| 57 |
batch_size = 16
|
| 58 |
train_dataloader = DataLoader(train_examples, shuffle=True, batch_size=batch_size, collate_fn=CustomCollate())
|
|
|
|
| 71 |
|
| 72 |
for batch in train_dataloader:
|
| 73 |
optimizer.zero_grad()
|
| 74 |
+
embeddings = model.encode(batch[0]['texts'])
|
| 75 |
loss_value = train_loss.compute_loss(embeddings, torch.zeros_like(embeddings))
|
| 76 |
loss_value.backward()
|
| 77 |
optimizer.step()
|
|
|
|
| 117 |
|
| 118 |
else:
|
| 119 |
st.write("Please enter both the job description and resume.")
|
|
|
|
|
|