Spaces:
Sleeping
Sleeping
File size: 1,470 Bytes
e5dc2b1 a2dda53 9719344 13dc018 a264f9f e5dc2b1 15fed86 e5dc2b1 15fed86 e5dc2b1 15fed86 494e223 e5dc2b1 15fed86 d80452a e5dc2b1 9ff8e8c 90c9dd2 e5dc2b1 a264f9f e5dc2b1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
import pandas as pd
from langchain.chains import LLMChain
from langchain_huggingface import HuggingFacePipeline
from transformers import LlamaForCausalLM, LlamaTokenizer, pipeline
from langchain.llms import HuggingFaceHub#HuggingFaceLLM
from huggingface_hub import login
import streamlit as st
huggingface_token = st.secrets["SECRET"]
login(huggingface_token)
# Cargar el archivo CSV
uploaded_file = st.file_uploader("Sube un archivo CSV con la columna 'job_title':", type=["csv"])
df = pd.read_csv(uploaded_file)
st.write(df)
# Ingreso del query
query = "aspiring human resources specialist"
# Crear un modelo LLaMA
model_name = "meta-llama/Llama-3.2-1B"
modelo = LlamaForCausalLM.from_pretrained(model_name)
try:
tokenizer = LlamaTokenizer.from_pretrained(model_id, force_download=True)
print("Vocab file:", tokenizer.vocab_file) # Depurar el archivo de vocabulario
except Exception as e:
print(f"Error al cargar el tokenizador: {e}")
# Crear una cadena LLM con LangChain
llm = HuggingFaceHub(modelo, tokenizer)
#llm = HuggingFaceLLM(modelo, tokenizer)
chain = LLMChain(llm)
def calcular_similitud(texto):
prompt = f"Calcular el cosine similarity score entre '{query}' y '{texto}'. Responde con el score como un valor numérico entre 0 y 1."
resultado = chain.run(prompt)
return float(resultado)
# Calcular la similitud para cada job title
df['Score'] = df['job_title'].apply(calcular_similitud)
# Reportar los resultados
print(df) |