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.4 KiB
Plaintext
95 lines
3.4 KiB
Plaintext
---
|
||
title: "Créer un message de l’Assistant (v1)"
|
||
openapi: /fr/discovery-openapi.json POST /v1/assistant/{domain}/message
|
||
tag: "Obsolète"
|
||
keywords: [ "message de l’Assistant", "intégration", "chat", "intégrer", "ai sdk v4" ]
|
||
---
|
||
|
||
<Badge color="orange">Obsolète</Badge>
|
||
|
||
<Info>
|
||
Le point de terminaison assistant message v1 est compatible avec **AI SDK v4**. Si vous utilisez AI SDK v5 ou une version ultérieure, utilisez plutôt le [point de terminaison assistant message v2](/fr/api/assistant/create-assistant-message-v2).
|
||
</Info>
|
||
|
||
<div id="integration-with-usechat">
|
||
## Intégration avec `useChat`
|
||
</div>
|
||
|
||
Le hook `useChat` du SDK AI de Vercel est la méthode recommandée pour intégrer l’API de l’Assistant à votre application.
|
||
|
||
<Steps>
|
||
<Step title="Installer le SDK AI v4">
|
||
```bash
|
||
npm i ai@^4.1.15
|
||
```
|
||
</Step>
|
||
|
||
<Step title="Utiliser le 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' ? 'Utilisateur : ' : 'Assistant : '}
|
||
{message.content}
|
||
</div>
|
||
))}
|
||
<form onSubmit={handleSubmit}>
|
||
<input value={input} onChange={handleInputChange} />
|
||
<button type="submit">Envoyer</button>
|
||
</form>
|
||
</div>
|
||
);
|
||
}
|
||
```
|
||
|
||
**Configuration requise pour Mintlify :**
|
||
|
||
* `streamProtocol: 'data'` - Requis pour les réponses en streaming.
|
||
* `sendExtraMessageFields: true` - Requis pour envoyer les métadonnées des messages.
|
||
* `body.fp` - Identifiant d’empreinte (utilisez 'anonymous' ou un identifiant utilisateur).
|
||
* `body.retrievalPageSize` - Nombre de résultats de recherche à utiliser (recommandé : 5).
|
||
|
||
**Configuration optionnelle :**
|
||
|
||
* `body.context` - Tableau d’informations contextuelles à fournir à l’Assistant. Chaque objet de contexte contient :
|
||
* `type` - Soit `'code'` soit `'textSelection'`.
|
||
* `value` - L’extrait de code ou le texte sélectionné.
|
||
* `elementId` (optionnel) - Identifiant de l’élément d’interface contenant le contexte.
|
||
* `body.currentPath` - Le chemin de la page actuellement consultée par l’utilisateur. Lorsqu’il est fourni, l’Assistant utilise ce contexte pour donner des réponses plus pertinentes. Longueur maximale : 200 caractères.
|
||
</Step>
|
||
</Steps>
|
||
|
||
Consultez [useChat](https://ai-sdk.dev/docs/reference/ai-sdk-ui/use-chat) dans la documentation du SDK AI pour en savoir plus.
|
||
|
||
<div id="rate-limits">
|
||
## Limites de débit
|
||
</div>
|
||
|
||
L’API de l’Assistant applique les limites suivantes :
|
||
|
||
* 10 000 requêtes par organisation Mintlify et par heure
|
||
* 10 000 requêtes par adresse IP et par jour |