logo
Développement
Rechercher
Envoyer un Message

Envoyer un Message

Envoyez un message à l'ID de conversation spécifié et obtenez la réponse de l'agent. Prend en charge la soumission de texte et/ou d'images comme contenu du message.

Méthode de Requête

POST

URL de la Requête

https://api-${endpoint}.gptbots.ai/v1/conversation/message

Authentification de la Requête

Consultez la section Présentation pour les détails d'authentification.

Requête

Exemple de Requête

curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/conversation/message' \ -H 'Authorization: Bearer ${API Key}' \ -H 'Content-Type: application/json' \ -d '{ "text": "HI!", "conversation_id": "xxxxxx", "response_mode": "streaming", "short_term_memory": true, "long_term_memory": false, "files":[ { "url": "https://res.srcgptbots.com/ailab/botchat/file/38f13465ad5246190b759b3289ecba51.jpg", "name": "something.jpg", "width": 200, "height": 200 }, { "base64_content": "Your_file_base64_content", "name": "something.pdf" } ], "knowledge": { "data_ids": [ "48c70da0403cc812641b934f", "48c70da0403cc812641df35k" ] } }'
                      
                      curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/conversation/message' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
      "text": "HI!",
      "conversation_id": "xxxxxx",
      "response_mode": "streaming",
      "short_term_memory": true,
      "long_term_memory": false,
      "files":[
          {
            "url": "https://res.srcgptbots.com/ailab/botchat/file/38f13465ad5246190b759b3289ecba51.jpg",
            "name": "something.jpg",
            "width": 200,
            "height": 200
          },
          {
            "base64_content": "Your_file_base64_content", 
            "name": "something.pdf"
          }
      ],
      "knowledge": {
        "data_ids": [
          "48c70da0403cc812641b934f",
          "48c70da0403cc812641df35k"
        ]
      }
}'

                    
Ce bloc de code dans la fenêtre flottante
Champ Type Description
Authorization Bearer ${token} Utilisez Authorization: Bearer ${token} pour l'authentification. Récupérez la clé sur la page Clés API en tant que token.
Content-Type application/json Type de données, à définir sur application/json.

Corps de la Requête

Champ Type Obligatoire Description
text string Oui Le texte ou les fichiers doivent être saisis.
Le message texte de l'utilisateur, la longueur du contenu ne peut pas dépasser la limite de tokens définie par la configuration de l'agent.
files Tableau JSON Non text et files doivent comporter au moins une entrée. Les fichiers servent à soumettre des images, des fichiers audio et des documents à l'agent. L'agent prend en charge deux schémas de reconnaissance de fichiers : « Reconnaissance de fichiers système » et « Reconnaissance de fichiers LLM ». Différents schémas prennent en charge différents types de fichiers. Les chemins réseau pour la soumission de fichiers sont pris en charge, avec un maximum de 9 fichiers téléchargés. Documents ≤20 Mo, images ≤10 Mo, audio ≤5 Mo.
Reconnaissance de fichiers LLM
  • Les types de fichiers pris en charge dépendent des capacités de chaque LLM. S'il s'agit d'un agent des flux, l'intersection de tous les types de fichiers pris en charge par les LLM est prise.
  • Reconnaissance de fichiers système
  • Le système GPTBots reconnaît les fichiers téléchargés et les convertit en texte.
  • Types de documents : .pdf, .txt, .docx, .csv, .xlsx, .html, .c, .cpp, .java, .json, .md, .php, .pptx, .py, .rb, .tex, .css, .js, .ts, .xml
  • Types d'images : .jpg, .jpeg, .png, .gif, .webp
  • Types audio : .mp3, .wav, .acc
  • Spécifications de soumission de fichiers
  • base64_content, chaîne, flux de fichier (choisir avec le lien URL du fichier)
  • url, chaîne, lien URL du fichier (choisir avec le flux de fichier)
  • name, chaîne, nom du fichier
  • width, int, largeur de l'image (requis pour les images)
  • height, int, hauteur de l'image (requis pour les images)

  • conversation_id string Oui ID de la conversation, à renseigner pour poursuivre une conversation précédente.
    response_mode string Oui blocking :
  • Blocking : attendre la fin avant de retourner le résultat. (Les requêtes longues peuvent être interrompues)
  • streaming : Réponse en streaming, basée sur SSE (Server-Sent Events).
  • webhook : Les messages de l'agent et du service client humain seront envoyés à l'adresse webhook configurée sur la page API.
  • short_term_memory boolean Non Ce message transporte-t-il la mémoire à court terme dans la conversation comme contexte ? Si non renseigné, suivre les paramètres de mémoire de l'agent.
    long_term_memory boolean Non Ce message transporte-t-il la mémoire à long terme dans la conversation comme contexte ? Si non renseigné, suivre les paramètres de mémoire de l'agent.
    knowledge object Non Personnalisez le périmètre de récupération des connaissances pour ce message. Si ce champ n'existe pas, la configuration par défaut de l'agent sera utilisée pour la récupération.
    data_ids array Non data_ids est un tableau d'ID de documents de connaissances.
    Si ce paramètre est un tableau vide, par exemple "data_ids": [], cela revient à ne récupérer aucun document de connaissances.
    Si ce paramètre contient des valeurs, la récupération sera limitée à la plage d'ID de documents spécifiée.

    Réponse

    Exemple de Réponse

    { "message_id": "65a4ccfC7ce58e728d5897e0", "message_type": "ANSWER", "text": "Hi, is there anything I can help you?", "flow_output": [ { "content": "Hello", "branch": "1", "from_component_name": "User Input" } ], "create_time": 1679587005, "conversation_id": "657303a8a764d47094874bbe" }
                          
                          {
      "message_id": "65a4ccfC7ce58e728d5897e0",
      "message_type": "ANSWER",
      "text": "Hi, is there anything I can help you?",
      "flow_output": [
        {
          "content": "Hello",
          "branch": "1", 
          "from_component_name": "User Input"
        }
      ],
      "create_time": 1679587005,
      "conversation_id": "657303a8a764d47094874bbe"
    }
    
                        
    Ce bloc de code dans la fenêtre flottante

    Réponse de Succès (Blocking)

    Champ Type Description
    message_id string ID unique du message.
    message_type string Type de message, valeur : ANSWER, QUESTION.
    text string Texte de la réponse.
    flow_output Tableau JSON contenu de la réponse de l'agent des flux.
    content string texte de réponse du composant de l'agent des flux.
    branch string branche de l'agent des flux.
    from_component_name string nom du composant amont de l'agent des flux.
    create_time long Horodatage de création du message de réponse.
    conversation_id string ID de la conversation.

    Réponse de Succès (Streaming)

    Champ Type Description
    code int Code du type de message, 3-Texte, 10-FlowOutput, 0-Fin.
    message string Type de message, valeur : Texte, FlowOutput, Fin.
    data object Contenu de la réponse.

    Les données en streaming sont retournées en plusieurs fragments :

    {"code":11,"message":"MessageInfo","data":{"message_id":"6785dba0f06d872bff9ee347"}} {"code":3,"message":"Text","data":"I"} {"code":3,"message":"Text","data":"can"} {"code":3,"message":"Text","data":"help"} {"code":3,"message":"Text","data":"you"} {"code":3,"message":"Text","data":"?"} {"code":10,"message":"FlowOutput","data":[{"content":"Hello","branch":null,"from_component_name":"User Input"}]} {"code":0,"message":"End","data":null}
                          
                          {"code":11,"message":"MessageInfo","data":{"message_id":"6785dba0f06d872bff9ee347"}}
    {"code":3,"message":"Text","data":"I"}
    {"code":3,"message":"Text","data":"can"}  
    {"code":3,"message":"Text","data":"help"}
    {"code":3,"message":"Text","data":"you"}
    {"code":3,"message":"Text","data":"?"}
    {"code":10,"message":"FlowOutput","data":[{"content":"Hello","branch":null,"from_component_name":"User Input"}]}
    {"code":0,"message":"End","data":null}
    
                        
    Ce bloc de code dans la fenêtre flottante

    Réponse de Succès (webhook)

    Lorsque le développeur a configuré l'adresse webhook, après une réponse réussie, le système GPTBots enverra les messages de l'agent et du support client humain à l'adresse webhook. Pour le format détaillé du message, voir Mode Webhook.

    Réponse d'Échec

    Champ Type Description
    code int Code d'erreur.
    message string Détails de l'erreur.

    Codes d'Erreur

    Code Message
    40000 Paramètre invalide
    40127 Échec de l'authentification du développeur
    40356 La conversation n'existe pas
    50000 Erreur interne du serveur
    40364 Cet agent n'utilise pas de LLM prenant en charge le mode image
    20059 Agent supprimé
    20040 Limite de questions dépassée
    40358 conversation_id ne correspond pas à l'agent ou à l'utilisateur
    20022 Crédit insuffisant