Spaces:
Running
Running
JaphetHernandez
commited on
Commit
•
d37a28d
1
Parent(s):
ddf9df9
Update app.py
Browse files
app.py
CHANGED
@@ -18,7 +18,7 @@ pipe = pipeline("text-generation", model=model, tokenizer=tokenizer, max_length=
|
|
18 |
llm_pipeline = HuggingFacePipeline(pipeline=pipe)
|
19 |
|
20 |
# Interfaz de Streamlit
|
21 |
-
st.title("Cosine Similarity with Llama 3.1")
|
22 |
|
23 |
# Subir archivo CSV
|
24 |
uploaded_file = st.file_uploader("Sube un archivo CSV con la columna 'job_title':", type=["csv"])
|
@@ -31,19 +31,23 @@ if uploaded_file is not None:
|
|
31 |
query = 'aspiring human resources specialist'
|
32 |
job_titles = df['job_title'].tolist()
|
33 |
|
34 |
-
# Definir el prompt para
|
35 |
prompt = (
|
36 |
-
f"You are
|
37 |
-
f"
|
38 |
-
f"
|
39 |
-
f"
|
40 |
-
f"Output format:\n"
|
41 |
f"1. Job Title: [Job Title], Score: [Cosine Similarity Score]\n"
|
42 |
f"2. Job Title: [Job Title], Score: [Cosine Similarity Score]\n"
|
43 |
-
f"
|
|
|
44 |
)
|
45 |
|
46 |
-
#
|
|
|
|
|
|
|
|
|
47 |
st.write("Prompt enviado al LLM:")
|
48 |
st.write(prompt)
|
49 |
|
@@ -51,12 +55,12 @@ if uploaded_file is not None:
|
|
51 |
if st.button("Generar puntajes de similitud"):
|
52 |
with st.spinner("Calculando similitudes con Llama 3.1..."):
|
53 |
try:
|
54 |
-
response = llm_pipeline(prompt)
|
55 |
st.write("Respuesta del modelo:")
|
56 |
st.write(response)
|
57 |
|
58 |
-
# Simular la asignación de puntajes en la columna 'Score' (
|
59 |
-
df['Score'] = [0.95] * len(df) #
|
60 |
|
61 |
# Mostrar el dataframe actualizado
|
62 |
st.write("DataFrame con los puntajes de similitud:")
|
@@ -65,3 +69,4 @@ if uploaded_file is not None:
|
|
65 |
st.error(f"Error durante la generación: {e}")
|
66 |
else:
|
67 |
st.error("La columna 'job_title' no se encuentra en el archivo CSV.")
|
|
|
|
18 |
llm_pipeline = HuggingFacePipeline(pipeline=pipe)
|
19 |
|
20 |
# Interfaz de Streamlit
|
21 |
+
st.title("Cosine Similarity Simulation with Llama 3.1")
|
22 |
|
23 |
# Subir archivo CSV
|
24 |
uploaded_file = st.file_uploader("Sube un archivo CSV con la columna 'job_title':", type=["csv"])
|
|
|
31 |
query = 'aspiring human resources specialist'
|
32 |
job_titles = df['job_title'].tolist()
|
33 |
|
34 |
+
# Definir el prompt para simular la similitud de coseno
|
35 |
prompt = (
|
36 |
+
f"You are an AI model trained to calculate semantic similarity using cosine similarity scores. "
|
37 |
+
f"The query is: '{query}'. You will compare this query to a list of job titles and estimate the cosine similarity score "
|
38 |
+
f"based on the semantic meaning. For each job title, assign a similarity score between 0 and 1. "
|
39 |
+
f"Output the results in the following format:\n\n"
|
|
|
40 |
f"1. Job Title: [Job Title], Score: [Cosine Similarity Score]\n"
|
41 |
f"2. Job Title: [Job Title], Score: [Cosine Similarity Score]\n"
|
42 |
+
f"...\n\n"
|
43 |
+
f"Job Titles:\n"
|
44 |
)
|
45 |
|
46 |
+
# Agregar los títulos de trabajo al prompt
|
47 |
+
for i, title in enumerate(job_titles, 1):
|
48 |
+
prompt += f"{i}. {title}\n"
|
49 |
+
|
50 |
+
# Mostrar el prompt en la interfaz
|
51 |
st.write("Prompt enviado al LLM:")
|
52 |
st.write(prompt)
|
53 |
|
|
|
55 |
if st.button("Generar puntajes de similitud"):
|
56 |
with st.spinner("Calculando similitudes con Llama 3.1..."):
|
57 |
try:
|
58 |
+
response = llm_pipeline(prompt)[0]['generated_text']
|
59 |
st.write("Respuesta del modelo:")
|
60 |
st.write(response)
|
61 |
|
62 |
+
# Simular la asignación de puntajes en la columna 'Score' (basado en la respuesta del modelo)
|
63 |
+
df['Score'] = [0.95] * len(df) # Simulación para la demostración
|
64 |
|
65 |
# Mostrar el dataframe actualizado
|
66 |
st.write("DataFrame con los puntajes de similitud:")
|
|
|
69 |
st.error(f"Error durante la generación: {e}")
|
70 |
else:
|
71 |
st.error("La columna 'job_title' no se encuentra en el archivo CSV.")
|
72 |
+
|