Spaces:
Runtime error
Runtime error
import gradio as gr | |
def analyze_cv(cv_file, desired_role, expected_salary): | |
# Definir rangos de salario para diferentes roles (esto es solo un ejemplo) | |
salary_ranges = { | |
"Desarrollador": (30000, 60000), | |
"Dise帽ador": (25000, 50000), | |
"Gerente": (40000, 80000) | |
} | |
# Leer el contenido del CV | |
with open(cv_file.name, "r", encoding="utf-8") as file: | |
cv_content = file.read().lower() | |
# Comprobar si el rol deseado est谩 en el CV | |
if desired_role.lower() in cv_content: | |
# Comprobar si el salario esperado est谩 dentro del rango para el rol | |
salary_range = salary_ranges.get(desired_role, (0, 0)) | |
if salary_range[0] <= int(expected_salary) <= salary_range[1]: | |
result = "El candidato es elegible para la posici贸n." | |
else: | |
result = "El candidato no es elegible debido a las expectativas salariales." | |
else: | |
result = "El candidato no es elegible debido a la falta de experiencia relevante." | |
return result | |
# Definir la interfaz de Gradio | |
iface = gr.Interface( | |
fn=analyze_cv, | |
inputs=[ | |
gr.inputs.File(label="Sube tu CV"), | |
gr.inputs.Textbox(label="Nombre del rol o posici贸n deseada"), | |
gr.inputs.Textbox(label="Salario esperado"), | |
], | |
outputs=gr.outputs.Textbox(label="Resultado de la elegibilidad"), | |
) | |
# Lanzar la aplicaci贸n | |
iface.launch() |