
A la hora de ejecutar el codigo, me sale este problema

A la hora de ejecutar el codigo, me sale este problema
Prueba con langchain_classic:
from langchain_core.prompts import ChatPromptTemplate
from langchain_classic.chains.combine_documents import create_stuff_documents_chain
prompt_rag = ChatPromptTemplate(
[
("system",
"""Eres el especialista en RR.HH. de la empresa Carraro Desarrollo de Software.
Responde siempre utilizando los conocimientos del contexto que te fue pasado a ti.
Si no hay informacion sobre la pregunta en los datos, responde solo 'No lo se'.
"""
),
("human", "Contexto: {context}\nPregunta del empleado: {input}")
]
)
document_chain = create_stuff_documents_chain(llm, prompt_rag)
Otra Opcíon:
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.runnables import RunnablePassthrough
from langchain_core.output_parsers import StrOutputParser
# 1. Definimos el mismo prompt de 'La Escaloneta'
prompt_rag = ChatPromptTemplate.from_messages(
[
(
"system",
"""Eres el especialista en RR.HH. de la empresa 'La Escaloneta Desarrollo de Software'.
Tu tarea es responder las dudas de los empleados utilizando únicamente el contexto provisto a continuación.
Contexto disponible:
{context}
Reglas estrictas:
- Responde de forma clara, profesional y empática.
- Si la respuesta no se encuentra explícitamente en el contexto provisto, responde exactamente: 'No lo sé'."""
),
(
"human",
"{input}"
)
]
)
# 2. Función auxiliar para juntar los textos de los chunks encontrados por FAISS
def format_docs(docs):
return "\n\n".join(doc.page_content for doc in docs)
# 3. Construimos el pipeline completo (RAG Chain) usando el operador "|"
rag_chain = (
{
"context": retriever | format_docs, # Busca en FAISS y formatea los textos
"input": RunnablePassthrough() # Pasa la pregunta del usuario derecho
}
| prompt_rag # Inyecta todo en el prompt
| llm_groq # Se lo manda a Llama 3.3
| StrOutputParser() # Nos devuelve solo el texto limpio (.content)
)
print(" ¡Cadena RAG nativa de 'La Escaloneta' creada con éxito mediante LCEL!")