Essayer

Outils personnalisés

Laissez l’assistant agir dans votre application

Donnez à votre assistant Masheev des outils typés qu’il peut appeler pendant une conversation. Ils s’exécutent dans votre application, peuvent renvoyer une carte ou des réponses rapides, et peuvent attendre l’approbation de la personne. Les outils côté client fonctionnent dans le chat web.

Dès $18/mois pour toute votre équipe après l’essai. Carte requise. Aucun débit si vous annulez sous 14 jours. Disponible pour les entreprises au Royaume-Uni et aux États-Unis.

Que sont les outils d’agent IA (function calling) ?

Les outils sont des fonctions que vous donnez à l’assistant pour qu’il puisse agir en plus de répondre. Pendant une conversation, il décide quand un outil est nécessaire, l’appelle avec des arguments validés et utilise le résultat pour poursuivre : consulter une commande, réserver un créneau ou mettre à jour un enregistrement.

Dans Masheev, vous définissez des outils côté client avec la fonction utilitaire clientTool, typés avec Zod ou JSON Schema. Leur fonction execute s’exécute dans votre application et peut renvoyer du texte, une carte ou des réponses rapides, avec une approbation facultative pour les actions sensibles. L’agent peut aussi utiliser des actions côté serveur et des intégrations connectées sur le backend.

L’outil, ligne par ligne

Trois blocs de code. Voilà un outil.

  1. import { clientTool, useMasheev } from "@masheev/embed-sdk/react";
    import { z } from "zod";
    
    const checkOrder = clientTool({
      name: "check_order_status",
      description: "Look up the status of a customer's order",
      parameters: z.object({ orderId: z.string() }),
      needsApproval: false,

    1

    Typés avec Zod ou JSON Schema

    Définissez le nom, la description et les paramètres d’un outil avec Zod ou du JSON Schema brut. L’assistant l’appelle avec des arguments validés.

  2.   execute: async ({ orderId }) => {
        const order = await myApi.getOrder(orderId);
        return {
          success: true,
          display: "card",
          components: {
            card: {
              title: `Order ${order.id}`,
              fields: [{ label: "Status", value: order.status }],
            },
          },
        };
      },
    });

    2

    S’exécute dans votre application

    Votre fonction execute s’exécute dans le navigateur. Elle peut appeler votre API, consulter un enregistrement ou réserver un créneau, puis renvoyer le résultat à la conversation.

  3. // Pass tools to the assistant
    useMasheev({ inboxId: "inb_123", tools: [checkOrder] });

    3

    Confiez-le à l’assistant

    Passez vos outils à useMasheev ou mettez-les à jour pendant une session. L’assistant les appelle quand ils sont pertinents.

Validation

Demander d’abord.

  1. ClientJe veux retourner ceci.
  2. AssistantJe lance le retour de la commande 1042. Vous confirmez ?
  3. Votre appexecute() ne s’exécute qu’après la confirmation du client.
Approbation avant exécution
Définissez needsApproval sur un outil et la personne confirme avant son exécution. Utilisez-le pour tout ce qui modifie des données ou coûte de l’argent.
Les résultats sont des données, pas des instructions
Les résultats des outils sont nettoyés et transmis au modèle comme des données, avec des limites de taille et de débit, ce qui protège contre l’injection de prompt.

Exemple illustratif

Plus

Ce qu’un outil peut faire d’autre.

Renvoie des cartes et des réponses rapides

Un résultat peut s’afficher sous forme de texte, de carte structurée ou de boutons de réponse rapide : on voit la commande ou la réservation elle-même, et non un paragraphe à son sujet.

Actions côté serveur

En plus des outils côté client, l’agent peut utiliser des actions côté serveur et des intégrations connectées, comme des calendriers, depuis le backend.

Pas encoreConnecter vos propres API côté serveur, et des outils hors du chat web.

Votre app fait le travail.

Questions fréquentes

Que sont les outils d’agent IA ?

Les outils, aussi appelés function calling, sont des fonctions que vous donnez à l’assistant pour qu’il puisse agir en plus de répondre. Pendant une conversation, il décide quand appeler un outil, envoie des arguments validés et utilise le résultat pour poursuivre. Dans Masheev, les outils côté client s’exécutent dans votre application et les actions côté serveur sur le backend.

Comment définir un outil ?

Utilisez la fonction utilitaire clientTool avec un nom, une description et un schéma de paramètres (Zod ou JSON Schema), plus une fonction execute qui fait le travail et renvoie un résultat. Transmettez vos outils à useMasheev, ou mettez-les à jour pendant une session. L’assistant les appelle lorsqu’ils sont pertinents.

Un outil peut-il exiger une approbation avant de s’exécuter ?

Oui. Définissez needsApproval sur l’outil et la personne doit confirmer avant que votre fonction execute ne s’exécute. Utilisez-le pour les actions qui modifient des données, passent des commandes ou coûtent de l’argent.

Les outils peuvent-ils afficher une interface riche, pas seulement du texte ?

Oui. Le résultat d’un outil peut s’afficher dans la conversation sous forme de texte simple, de carte structurée (titre, sous-titre et champs étiquetés) ou de boutons de réponse rapide.

Comment les outils sont-ils sécurisés ?

Les résultats des outils sont nettoyés et traités strictement comme des données, non comme des instructions pour le modèle, ce qui protège contre l’injection de prompt. Les données renvoyées ont des limites de taille, les appels sont soumis à des limites de débit et les actions sensibles peuvent exiger une approbation.

Donnez quelque chose à faire à l’assistant


Définissez des outils typés, décidez lesquels nécessitent une approbation, et laissez l’assistant gérer les consultations et les réservations.

Dès $18/mois pour toute votre équipe après l’essai. Carte requise. Aucun débit si vous annulez sous 14 jours. Disponible pour les entreprises au Royaume-Uni et aux États-Unis.