mirror of
https://github.com/mintlify/docs.git
synced 2026-09-14 13:35:46 +08:00
90007452c6
Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
95 lines
3.3 KiB
Plaintext
95 lines
3.3 KiB
Plaintext
---
|
|
title: "Crear mensaje del assistant (v1)"
|
|
openapi: /es/discovery-openapi.json POST /v1/assistant/{domain}/message
|
|
tag: "En desuso"
|
|
keywords: [ "mensaje del assistant", "incrustar", "chat", "integrar", "ai sdk v4" ]
|
|
---
|
|
|
|
<Badge color="orange">En desuso</Badge>
|
|
|
|
<Info>
|
|
El endpoint assistant message v1 es compatible con **AI SDK v4**. Si utilizas AI SDK v5 o posterior, usa en su lugar el [endpoint assistant message v2](/es/api/assistant/create-assistant-message-v2).
|
|
</Info>
|
|
|
|
<div id="integration-with-usechat">
|
|
## Integración con `useChat`
|
|
</div>
|
|
|
|
El hook `useChat` del AI SDK de Vercel es la forma recomendada de integrar la API del assistant en tu aplicación.
|
|
|
|
<Steps>
|
|
<Step title="Instalar el AI SDK v4">
|
|
```bash
|
|
npm i ai@^4.1.15
|
|
```
|
|
</Step>
|
|
|
|
<Step title="Usar el hook">
|
|
```tsx
|
|
import { useChat } from 'ai/react';
|
|
|
|
function MyComponent({ domain }) {
|
|
const { messages, input, handleInputChange, handleSubmit, isLoading } = useChat({
|
|
api: `https://api.mintlify.com/discovery/v1/assistant/${domain}/message`,
|
|
headers: {
|
|
'Authorization': `Bearer ${process.env.PUBLIC_MINTLIFY_ASSISTANT_KEY}`,
|
|
},
|
|
body: {
|
|
fp: 'anonymous',
|
|
retrievalPageSize: 5,
|
|
context: [
|
|
{
|
|
type: 'code',
|
|
value: 'const example = "code snippet";',
|
|
elementId: 'code-block-1',
|
|
},
|
|
],
|
|
},
|
|
streamProtocol: 'data',
|
|
sendExtraMessageFields: true,
|
|
});
|
|
|
|
return (
|
|
<div>
|
|
{messages.map((message) => (
|
|
<div key={message.id}>
|
|
{message.role === 'user' ? 'Usuario: ' : 'Assistant: '}
|
|
{message.content}
|
|
</div>
|
|
))}
|
|
<form onSubmit={handleSubmit}>
|
|
<input value={input} onChange={handleInputChange} />
|
|
<button type="submit">Enviar</button>
|
|
</form>
|
|
</div>
|
|
);
|
|
}
|
|
```
|
|
|
|
**Configuración obligatoria para Mintlify:**
|
|
|
|
* `streamProtocol: 'data'` - Obligatorio para respuestas en streaming.
|
|
* `sendExtraMessageFields: true` - Obligatorio para enviar metadatos de los mensajes.
|
|
* `body.fp` - Identificador de huella digital (usa 'anonymous' o un identificador de usuario).
|
|
* `body.retrievalPageSize` - Número de resultados de búsqueda que se usarán (recomendado: 5).
|
|
|
|
**Configuración opcional:**
|
|
|
|
* `body.context` - Array de información contextual que se proporciona al assistant. Cada objeto de contexto incluye:
|
|
* `type` - Puede ser `'code'` o `'textSelection'`.
|
|
* `value` - El fragmento de código o el contenido de texto seleccionado.
|
|
* `elementId` (opcional) - Identificador del elemento de la interfaz de usuario que contiene el contexto.
|
|
* `body.currentPath` - La ruta de la página que el usuario está viendo actualmente. Cuando se proporciona, el assistant utiliza este contexto para ofrecer respuestas más relevantes. Longitud máxima: 200 caracteres.
|
|
</Step>
|
|
</Steps>
|
|
|
|
Consulta [useChat](https://ai-sdk.dev/docs/reference/ai-sdk-ui/use-chat) en la documentación del AI SDK para obtener más información.
|
|
|
|
<div id="rate-limits">
|
|
## Límites de uso
|
|
</div>
|
|
|
|
La API del assistant tiene los siguientes límites:
|
|
|
|
* 10,000 solicitudes por organización de Mintlify por hora
|
|
* 10,000 solicitudes por IP al día |