Comment utiliser ChatGPT dans N8N via WebHook sans API

Lorsque nous parlons d'automatisation et de workflow utilisant l'intelligence artificielle, la solution la plus courante est d'utiliser la API de GPT. Cependant, cette approche peut entraîner des coûts significatifs, notamment en fonction du modèle utilisé.

Mais s'il était possible d'utiliser le ChatGPT Plus, qui coûte seulement 20 USD par mois, pour envoyer des informations directement vers N8N ? Imaginez automatiser des tâches telles que la création d'un article rédigé par ChatGPT, l'enregistrement d'utilisateurs ou l'exécution d'autres actions qui nécessitaient auparavant des formulaires externes et le remplissage manuel de champs.

Heureusement, ChatGPT offre cette possibilité grâce à la communication via POST, en utilisant des Chats Personnalisés. Dans cet article, nous allons explorer comment configurer cette intégration de manière efficace.

Avantages d'utiliser ChatGPT

En plus des économies réalisées avec l'API de modèles plus chers, vous devrez peut-être déjà payer le ChatGPT Plus, donc vous devez en tirer le meilleur parti de l'abonnement à la plateforme. Un autre avantage est que les réponses de ChatGPT sont généralement meilleures que celles de l'API, même en configurant correctement la température.

Utiliser ChatGPT au lieu de l'API offre également plus de liberté pour modifier manuellement les invites. Si vous créez un Workflow avec l'API, il pourrait être nécessaire de modifier le Workflow chaque fois que vous souhaitez apporter des changements. Avec l'automatisation disponible dans le Chat, vous pouvez converser avec ChatGPT lui-même pour envoyer les données comme bon vous semble, permettant même d'utiliser un seul Chat pour déclencher plusieurs automatisations différentes.

Vous pouvez également envoyer des images et d'autres informations via Webhook, ce qui coûterait probablement beaucoup plus cher en utilisant l'API.

Connecter ChatGPT à N8N

Dans la vidéo ci-dessous, j'explique mieux comment j'ai réalisé cette automatisation, mais tout au long de l'article, je vais vous aider à la configurer. Tout ce que j'ai fait a été réalisé avec l'aide du propre GPT, alors demandez-lui comment générer le code et créer votre automatisation en fonction de vos besoins.

Configurer ChatGPT avec N8N via WebHook

1. Créer un chat personnalisé dans ChatGPT

  • Accédez à ChatGPT Plus.
  • Cliquez sur "Explorer les GPT" dans le menu latéral.
  • Sélectionnez "Créer un nouveau GPT".
  • Personnalisez le comportement du GPT en fonction de vos besoins.
  • Dans le rabat Actions, cliquez sur « Créer une nouvelle action » :
    • Donnez un nom à l'action (par exemple, "Envoyer à N8N").
    • Configurez la méthode HTTP comme POST.
    • Insérez l'URL du WebHook généré par N8N.

2. Configurer le WebHook dans N8N

  • Ouvrez le panneau de N8N et créez un nouveau flux.
  • Ajoutez un nœud WebHook:
    • Choisissez un nom pour le nœud.
    • Configurez la méthode comme POST.
    • Copiez l'URL du WebHook généré à utiliser dans le Chat Personnalisé.
  • Testez le WebHook en envoyant une requête directement via ChatGPT pour vérifier si les données sont reçues correctement.

3. Envoyer des données de ChatGPT au WebHook

  • Non ChatGPT, en interagissant avec le Chat Personnalisé, déclenchez l'action créée.
  • Les données traitées par ChatGPT seront automatiquement envoyées au WebHook de N8N.

4. Créer le flux dans N8N

  • Après avoir reçu les données dans le WebHook, configurez d'autres nœuds dans N8N pour traiter les informations. Exemples :
    • Stocker les données dans une feuille de calcul (Google Sheets).
    • Envoyer des notifications par e-mail.
    • Créer des tâches dans des outils de gestion comme Trello ou ClickUp.
    • Mettre à jour une base de données ou un système de CRM.

Code utilisé

Le code ci-dessous envoie à N8N à la fois la réponse et la question posée dans le chat, il vous appartient maintenant de configurer correctement le prompt et N8N pour utiliser les données comme vous le souhaitez. ChatGPT peut également être capable d'envoyer et de séparer plus de données, il suffit de configurer correctement de nouveaux codes et prompts.

openapi: 3.1.0
info:
  title: Enviar pergunta e resposta ao n8n
  description: Envia a pergunta e a resposta geradas pelo ChatGPT para o seu Webhook no n8n.
  version: 1.0.1
servers:
  - url: https://LINKDOWEBHOOKN8N
    description: Webhook configurado no n8n
paths:
  /:
    post:
      operationId: sendQuestionAndResponseToN8n
      summary: Envia a pergunta e a resposta para o n8n.
      description: Envia um JSON contendo a pergunta, a resposta gerada pelo ChatGPT e metadados opcionais.
      x-openai-isConsequential: false # Permite que o usuário autorize permanentemente sem confirmações futuras
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                question:
                  type: string
                  description: A pergunta enviada ao ChatGPT que será enviada ao n8n.
                response:
                  type: string
                  description: A resposta gerada pelo ChatGPT que será enviada ao n8n.
                metadata:
                  type: object
                  description: Metadados adicionais que podem ser usados para contexto.
                  properties:
                    userId:
                      type: string
                      description: Um identificador opcional para o usuário.
                    timestamp:
                      type: string
                      format: date-time
                      description: O horário em que a resposta foi gerada.
                    source:
                      type: string
                      description: A origem da solicitação, se aplicável.
      responses:
        '200':
          description: Dados enviados com sucesso.
        '400':
          description: Solicitação inválida.

x-openai-isConsequential: false

Dans certains cas, vous pouvez être confronté à une demande de permission pour vous connecter à un domaine externe chaque fois que ChatGPT souhaite effectuer une action. La façon de contourner cela est avec l'option x-openai-isConsequential: false, qui permet d'activer l'option Toujours Autoriser.

Il est essentiel d'utiliser cette fonction dans votre code pour accélérer encore le processus, étant donné qu'il s'agit d'une action manuelle de contacter le chat pour établir la connexion avec N8N et envoyer les informations.