logo
Développement
Rechercher
AppariementSimilaritéVecteur

Récupérez et rappelez des fragments de connaissances issus de la base de connaissances Agent/Workflow en fonction du contenu de la requête ou des mots-clés fournis. Les développeurs peuvent spécifier le périmètre de recherche via group_ids ou data_ids, définir le paramètre top_k, et personnaliser la recherche grâce au scoring de pertinence des connaissances et au reranking pour des capacités personnalisées de génération augmentée par la recherche (RAG).

Méthode de requête

POST

Endpoint

https://api-${endpoint}.gptbots.ai/v1/vector/match

Authentification

Pour plus de détails, consultez les instructions sur la méthode d'authentification dans la Vue d'ensemble de l'API.

Requête

Exemple de requête

curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/vector/match' \ -H 'Authorization: Bearer ${API Key}' \ -H 'Content-Type: application/json' \ -d '{ "embedding_rate": 0.9 , "prompt": "Quelles API propose GPTBots ?", "group_ids": ["1234567890","1230987654"], "data_ids": ["1234567890","1230987654"], "top_k": 10 , "rerank_version": "Jina-reranker-v2-base-multilingual", "doc_correlation": 0.70 }'
                      
                      
curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/vector/match' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json'  \
-d '{
        "embedding_rate": 0.9 ,
        "prompt": "Quelles API propose GPTBots ?",
        "group_ids": ["1234567890","1230987654"],
        "data_ids":  ["1234567890","1230987654"],
        "top_k": 10 ,
        "rerank_version": "Jina-reranker-v2-base-multilingual",
        "doc_correlation": 0.70
}'

                    
Ce bloc de code dans la fenêtre flottante

En-têtes de requête

Champ Type Description
Authorization Bearer ${API Key} Utilisez Authorization: Bearer ${API Key} pour l'authentification. Obtenez la clé API depuis la page Clé API.
Content-Type application/json Type de données ; la valeur doit être application/json.

Paramètres de la requête

Champ Type Obligatoire Description
embedding_rate float Non Spécifie le ratio de pondération entre la recherche par mots-clés et la recherche sémantique. Plage de valeurs : [0,1], la valeur par défaut est 1. Par exemple : 0 = uniquement mots-clés ; 1 = uniquement sémantique ; 0.4 = 40% mots-clés, 60% sémantique.
prompt string Oui Mots-clés ou contenu de la requête utilisés pour l'appariement par similarité de vecteurs avec les documents de l'Agent/Workflow.
group_ids array Non IDs de bases de connaissances pour la recherche vectorielle dans les bases spécifiées. Si un ou plusieurs IDs sont fournis, la recherche s'effectue dans leur union. Si null ou non fourni, la recherche s'effectue par défaut sur toutes les bases de connaissances. Si [], aucune base de connaissances n'est recherchée.
data_ids array Non IDs de documents pour la recherche vectorielle dans les documents spécifiés. Si un ou plusieurs IDs sont fournis, la recherche s'effectue dans leur union. Si null ou non fourni, la recherche s'effectue par défaut sur tous les documents de connaissances. Si [], aucun document de connaissances n'est recherché.
top_k int Oui Après l'appariement par similarité de vecteurs entre les mots-clés et les IDs de documents, retourne les K meilleurs résultats. Plage valide : [1,50].
rerank_version string Non Nom du modèle de reranking des connaissances pour une recherche plus précise. Options disponibles : BGE-Rerank, Jina-reranker-v2-base-multilingual, Jina-colbert-v2, BCE-Rerank.
doc_correlation float Non Score de pertinence des connaissances, représentant la similarité entre la question utilisateur et un fragment de connaissance. Un score élevé indique une plus grande pertinence, mais des valeurs trop élevées peuvent entraîner l'absence de fragments disponibles. Plage : [0.1,0.95].

Lorsque group_ids et data_ids sont tous deux fournis, la recherche s'effectue dans l'union de leurs périmètres respectifs. Si les deux sont null ou non fournis, toutes les bases de connaissances sont recherchées par défaut. Si les deux sont des tableaux vides ([]), aucune connaissance n'est récupérée.

Réponse

Exemple de réponse

{ "total": 2, "list": [ { "content": "Données de test", "data_id": "aS1CNvPK4XCckDKQNj7azC9a", "document_name": "demo.md", "score": 0.75 }, { "content": "Données de test", "data_id": "aS1CNvPK4XCckDKQNj7azC9a", "document_name": "demo.md", "score": 0.75 } ] }
                      
                      {
  "total": 2,
  "list": [
    {
      "content": "Données de test",
      "data_id": "aS1CNvPK4XCckDKQNj7azC9a",
      "document_name": "demo.md",
      "score": 0.75

    },
    {
      "content": "Données de test",
      "data_id": "aS1CNvPK4XCckDKQNj7azC9a",
      "document_name": "demo.md",
      "score": 0.75 
    }
  ]
}

                    
Ce bloc de code dans la fenêtre flottante

Réponse en cas de succès

Champ Type Description
total int Nombre total de fragments retournés.
list Tableau JSON Liste des fragments.
content string Contenu du fragment.
data_id string Document source.
score float Score de similarité.

Réponse en cas d'échec

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

Codes d'erreur

Code Message
40000 Erreur de paramètre
40127 Échec de l'authentification du développeur
20059 Agent/Workflow supprimé