Hoppa till huvudinnehåll
OpenAI ordvektortjänst, som används för att generera ordvektorer som representerar inmatad text. Detta dokument beskriver huvudsakligen användningsflödet för OpenAI Embeddings API, där vi kan skapa inbäddade vektorer som representerar inmatad text.

Ansökningsprocess

För att använda OpenAI Embeddings API kan du först gå till OpenAI Embeddings API sidan och klicka på “Acquire”-knappen för att få de nödvändiga autentiseringsuppgifterna: Om du inte har loggat in eller registrerat dig kommer du automatiskt att omdirigeras till inloggningssidan där du blir inbjuden att registrera dig och logga in. Efter inloggning eller registrering kommer du automatiskt att återvända till den aktuella sidan. Vid första ansökan kommer det att finnas en gratis kvot som kan användas för att gratis använda API:et.

Grundläggande Användning

Därefter kan du fylla i motsvarande innehåll på gränssnittet, som visas i bilden:

Vid första användningen av detta gränssnitt behöver vi fylla i tre saker, en är authorization, som du direkt väljer från rullgardinsmenyn. Den andra parametern är model, model är den vi väljer att använda från OpenAI:s officiella modellkategorier, här har vi huvudsakligen 3 modeller, detaljer kan ses i de modeller vi tillhandahåller. Den sista parametern är input, input är den text som vi behöver konvertera till en ordvektor. Samtidigt kan du notera att det finns motsvarande kod för anrop på höger sida, du kan kopiera koden och köra den direkt, eller klicka på “Try”-knappen för att testa. Valfria parametrar:
  • dimensions: Beskär vektorens dimensioner, standardutgången är full dimension.
  • encoding_format: Återvändande format, valfritt float eller base64.

Python exempel på anropskod:
import requests

url = "https://api.acedata.cloud/openai/embeddings"

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

payload = {
    "input": "Maten var utsökt och servitören...",
    "model": "text-embedding-ada-002",
    "encoding_format": "float"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
Efter anropet upptäckte vi att returresultatet ser ut som följer:
{
  "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
  }
}
Returresultatet har flera fält, som beskrivs nedan:
  • model, modellen som användes för att konvertera text till ordvektor.
  • usage, tokeninformation som användes för att konvertera text till ordvektor.
  • data, resultatet av textens konvertering till ordvektor.
Där data innehåller den specifika informationen om ordvektorn som motsvarar texten, där embedding är det genererade ordvektorns specifika resultat.

Felhantering

Vid anrop av API:et, om ett fel uppstår, kommer API:et att returnera motsvarande felkod och information. Till exempel:
  • 400 token_mismatched: Felaktig begäran, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 400 api_not_implemented: Felaktig begäran, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 401 invalid_token: Obefogad, ogiltig eller saknad autentiseringstoken.
  • 429 too_many_requests: För många begärningar, du har överskridit hastighetsgränsen.
  • 500 api_error: Intern serverfel, något gick fel på servern.

Exempel på felrespons

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

Slutsats

Genom detta dokument har du fått en förståelse för hur du enkelt kan använda OpenAI Embeddings API för att använda den officiella OpenAI:s funktion för att generera ordvektorer. Vi hoppas att detta dokument kan hjälpa dig att bättre integrera och använda API:et. Om du har några frågor, tveka inte att kontakta vårt tekniska supportteam.