curl --request POST \
--url https://api.mintlify.com/discovery/v1/assistant/{domain}/message \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"fp": "<string>",
"messages": [
{
"id": "foobar",
"role": "user",
"content": "how do i get started",
"parts": [
{
"type": "text",
"text": "How do I get started"
}
]
}
],
"threadId": null,
"retrievalPageSize": 5,
"filter": null
}
'{}Génère un message de réponse de l’Assistant pour le domain spécifié. Compatible avec l’AI SDK v4.
curl --request POST \
--url https://api.mintlify.com/discovery/v1/assistant/{domain}/message \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"fp": "<string>",
"messages": [
{
"id": "foobar",
"role": "user",
"content": "how do i get started",
"parts": [
{
"type": "text",
"text": "How do I get started"
}
]
}
],
"threadId": null,
"retrievalPageSize": 5,
"filter": null
}
'{}useChatuseChat du SDK AI de Vercel est la méthode recommandée pour intégrer l’API de l’Assistant à votre application.
Utiliser le hook
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>
);
}
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).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.L’identifiant de domain à partir de votre URL domain.mintlify.app. Il se trouve à la fin de l’URL de votre Dashboard. Par exemple, dashboard.mintlify.com/organization/domain a un identifiant de domain de domain.
Identifiant de fingerprint pour le suivi des sessions de conversation. Utilisez « anonymous » pour les utilisateurs anonymes ou fournissez un identifiant utilisateur unique.
Tableau de messages représentant la conversation. Côté frontend, vous utiliserez probablement la fonction handleSubmit du hook useChat du package @ai-sdk pour ajouter les messages utilisateur et gérer les réponses en streaming, plutôt que de définir manuellement les objets de ce tableau, car ils comportent de très nombreux paramètres.
Afficher attributs enfants
Identifiant facultatif utilisé pour maintenir la continuité d’une conversation sur plusieurs messages. Lorsqu’il est fourni, il permet au système de rattacher les messages suivants au même fil de discussion. Le threadId est renvoyé dans la réponse sous la forme event.threadId lorsque event.type === 'finish'.
Nombre de résultats de recherche dans la documentation à utiliser pour générer la réponse. Des valeurs plus élevées fournissent davantage de contexte mais peuvent augmenter le temps de réponse. Valeur recommandée : 5.
Critères de filtrage facultatifs pour la recherche.
Afficher attributs enfants
Message généré avec succès.
Objet de réponse dont les parties du flux de données sont formatées avec le status, les en-têtes et le champ content spécifiés. Pour plus d’informations, consultez la documentation de l’AI SDK sur ai-sdk.dev/docs/ai-sdk-ui/streaming-data. Utilisez le hook useChat de ai-sdk pour gérer le flux de réponse.
Cette page vous a-t-elle été utile ?