> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenAI Embeddings API demande et utilisation

> OpenAI generation 集成指南 - XHuoAPI

Le service de vecteurs de mots d'OpenAI, utilisé pour générer des résultats de vecteurs de mots représentant le texte d'entrée.

Ce document présente principalement le processus d'utilisation de l'API OpenAI Embeddings, grâce à laquelle nous pouvons créer des vecteurs d'intégration représentant le texte d'entrée.

## Processus de demande

Pour utiliser l'API OpenAI Embeddings, vous pouvez d'abord vous rendre sur la page [OpenAI Embeddings API](https://api.xhuoapi.ai/documents/0f2e63fa-5890-4bdd-84f0-1706b5c9a387) et cliquer sur le bouton « Acquire » pour obtenir les informations d'identification nécessaires à la demande :

![](https://cdn.xhuoapi.ai/nyq0xz.png)

Si vous n'êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion vous invitant à vous inscrire et à vous connecter. Après vous être connecté ou inscrit, vous serez automatiquement renvoyé à la page actuelle.

Lors de la première demande, un quota gratuit sera offert, vous permettant d'utiliser cette API gratuitement.

## Utilisation de base

Ensuite, vous pouvez remplir les informations correspondantes sur l'interface, comme indiqué sur l'image :

<p>
  <img src="https://cdn.xhuoapi.ai/4qtbvr.png" width="500" className="m-auto" />
</p>

Lors de la première utilisation de cette interface, nous devons remplir au moins trois informations : l'une est `authorization`, que vous pouvez sélectionner directement dans la liste déroulante. L'autre paramètre est `model`, `model` est la catégorie de modèle que nous choisissons d'utiliser sur le site officiel d'OpenAI, ici nous avons principalement 3 types de modèles, pour plus de détails, vous pouvez consulter les modèles que nous proposons. Le dernier paramètre est `input`, `input` est le texte de vecteur de mots que nous devons convertir.

Vous pouvez également remarquer qu'il y a un code d'appel correspondant généré à droite, que vous pouvez copier et exécuter directement, ou vous pouvez simplement cliquer sur le bouton « Try » pour effectuer un test.

Paramètres optionnels :

* `dimensions` : découpage de la dimension du vecteur, la sortie par défaut est la dimension complète.
* `encoding_format` : format de retour, optionnel `float` ou `base64`.

<p>
  <img src="https://cdn.xhuoapi.ai/gqulm9.png" width="500" className="m-auto" />
</p>

Exemple de code d'appel Python :

```python theme={null}
import requests

url = "https://api.xhuoapi.ai/v1/openai/embeddings"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "input": "The food was delicious and the waiter...",
    "model": "text-embedding-ada-002",
    "encoding_format": "float"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Après l'appel, nous constatons que le résultat retourné est le suivant :

```json theme={null}
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "index": 0,
      "embedding": [
        0.0022756963,
        -0.009305916,
        0.015742613,
        -0.0077253063,
        -0.0047450014,
        0.014917395,
        -0.009807394,
        -0.038264707,
        -0.0069127847,
        -0.028590616,
        0.025251659,
        ....
        -0.014079482,
        -0.015425222,
        0.0040753055,
        0.002727979,
        -0.03138366,
        0.041159317,
        -0.017608874,
        -0.018637223,
        0.014587308,
        0.010486611,
        -0.015387135,
        -0.019424353,
        -0.002800979
      ]
    }
  ],
  "model": "text-embedding-ada-002",
  "usage": {
    "prompt_tokens": 8,
    "total_tokens": 8
  }
}
```

Le résultat retourné contient plusieurs champs, décrits comme suit :

* `model`, le modèle utilisé pour la conversion du texte en vecteur de mots.
* `usage`, les informations sur les tokens utilisés pour la conversion du texte en vecteur de mots.
* `data`, le résultat du vecteur de mots après conversion du texte.

Parmi ceux-ci, `data` contient des informations spécifiques sur le vecteur de mots correspondant au texte, où `embedding` est le résultat concret du vecteur de mots généré.

## Gestion des erreurs

Lors de l'appel de l'API, si une erreur se produit, l'API renverra le code d'erreur et les informations correspondantes. Par exemple :

* `400 token_mismatched` : Mauvaise demande, probablement en raison de paramètres manquants ou invalides.
* `400 api_not_implemented` : Mauvaise demande, probablement en raison de paramètres manquants ou invalides.
* `401 invalid_token` : Non autorisé, jeton d'autorisation invalide ou manquant.
* `429 too_many_requests` : Trop de demandes, vous avez dépassé la limite de taux.
* `500 api_error` : Erreur interne du serveur, quelque chose s'est mal passé sur le serveur.

### Exemple de réponse d'erreur

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## Conclusion

Grâce à ce document, vous avez compris comment utiliser l'API OpenAI Embeddings pour utiliser facilement la fonctionnalité de génération de vecteurs de mots d'OpenAI. Nous espérons que ce document vous aidera à mieux intégrer et utiliser cette API. Si vous avez des questions, n'hésitez pas à contacter notre équipe de support technique.
