52 lines
995 B
Markdown
52 lines
995 B
Markdown
---
|
|
layout: default
|
|
---
|
|
|
|
# Placeholder Variables
|
|
|
|
<div class="mt-8 text-sm">
|
|
|
|
<v-click>
|
|
|
|
<div class="mb-6">
|
|
|
|
**MessagesPlaceholder**: Insertar arrays de mensajes dinámicamente en templates
|
|
|
|
</div>
|
|
|
|
</v-click>
|
|
|
|
<v-click>
|
|
|
|
```typescript
|
|
import { ChatPromptTemplate, MessagesPlaceholder } from "@langchain/core/prompts";
|
|
|
|
const template = ChatPromptTemplate.fromMessages([
|
|
["system", "Eres un asistente útil"],
|
|
new MessagesPlaceholder("history"), // Array de mensajes
|
|
["human", "{input}"]
|
|
]);
|
|
|
|
const response = await model.invoke(
|
|
await template.invoke({
|
|
history: [
|
|
new HumanMessage("Hola"),
|
|
new AIMessage("¡Hola! ¿En qué puedo ayudarte?")
|
|
],
|
|
input: "¿Qué tiempo hace?"
|
|
})
|
|
);
|
|
```
|
|
|
|
</v-click>
|
|
|
|
<v-click>
|
|
|
|
<div class="mt-2 text-xs text-gray-500">
|
|
💡 <code>["system", "..."]</code> y <code>["human", "..."]</code> son la forma abreviada de <code>SystemMessage</code> y <code>HumanMessage</code> en <code>ChatPromptTemplate</code>
|
|
</div>
|
|
|
|
</v-click>
|
|
|
|
</div>
|