--- layout: default --- # RAG completo: Búsqueda + Generación ```typescript import { ChatOpenAI } from "@langchain/openai"; import { PromptTemplate } from "@langchain/core/prompts"; const llm = new ChatOpenAI({ model: "gpt-4.1-mini" }); // Buscar contexto relevante const pregunta = "¿Cómo resetear la contraseña?"; const docs = await vectorStore.similaritySearch(pregunta, 3); const contexto = docs.map(d => d.pageContent).join("\n\n"); // Crear prompt con contexto const prompt = PromptTemplate.fromTemplate(` Responde la pregunta basándote SOLO en el siguiente contexto: Contexto: {contexto} Pregunta: {pregunta} Respuesta:`); const chain = prompt.pipe(llm); const respuesta = await chain.invoke({ contexto, pregunta }); console.log(respuesta.content); ```