initial commit: slides ready + upgraded
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
---
|
||||
layout: default
|
||||
---
|
||||
|
||||
# Paso 4: RAG - Búsqueda + Generación
|
||||
|
||||
```typescript
|
||||
import { ChatOpenAI } from "@langchain/openai";
|
||||
import { HumanMessage, SystemMessage } from "@langchain/core/messages";
|
||||
|
||||
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");
|
||||
|
||||
// Generar respuesta con contexto
|
||||
const respuesta = await llm.invoke([
|
||||
new SystemMessage(
|
||||
`Responde basándote SOLO en este contexto:\n\n${contexto}`
|
||||
),
|
||||
new HumanMessage(pregunta),
|
||||
]);
|
||||
|
||||
console.log(respuesta.content);
|
||||
```
|
||||
|
||||
<v-click>
|
||||
|
||||
<div class="mt-4 p-3 bg-purple-500/10 rounded text-sm">
|
||||
|
||||
Esto es RAG: **recuperar** contexto relevante y pasárselo al LLM para que **genere** la respuesta
|
||||
|
||||
</div>
|
||||
|
||||
</v-click>
|
||||
Reference in New Issue
Block a user