Passer au contenu principal

Intégration avec useChat

Le hook useChat du SDK AI de Vercel est la méthode recommandée pour intégrer l’API de l’Assistant à votre application.
L’API de l’Assistant Mintlify est compatible avec AI SDK v4. Si vous utilisez AI SDK v5 ou une version ultérieure, vous devez configurer un transport personnalisé.
1

Installer le SDK AI v4

npm i ai@^4.1.15
2

Utiliser le hook

import { useChat } from 'ai/react';

function MyComponent({ domain }) {
  const { messages, input, handleInputChange, handleSubmit, isLoading } = useChat({
    api: `https://api-dsc.mintlify.com/v1/assistant/${domain}/message`,
    headers: {
      'Authorization': `Bearer ${process.env.MINTLIFY_TOKEN}`,
    },
    body: {
      fp: 'anonymous',
      retrievalPageSize: 5,
    },
    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).
Consultez useChat dans la documentation du SDK AI pour en savoir plus.

Limites de débit

L’API de l’Assistant applique les limites suivantes :
  • 10 000 utilisations par key et par mois
  • 10 000 requêtes par organisation Mintlify et par heure
  • 10 000 requêtes par adresse IP et par jour