Przejdź do głównej treści
POST
/
v1
/
embeddings
from openai import OpenAI

client = OpenAI(
    base_url="https://api.cometapi.com/v1",
    api_key="<COMETAPI_KEY>",
)

response = client.embeddings.create(
    model="text-embedding-3-small",
    input="The food was delicious and the waiter was friendly.",
)

print(response.data[0].embedding[:5])  # First 5 dimensions
print(f"Dimensions: {len(response.data[0].embedding)}")
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "index": 0,
      "embedding": [
        -0.0021,
        -0.0491,
        0.0209,
        0.0314,
        -0.0453
      ]
    }
  ],
  "model": "text-embedding-3-small",
  "usage": {
    "prompt_tokens": 2,
    "total_tokens": 2
  }
}

Przegląd

API Embeddings generuje wektorowe reprezentacje tekstu, które odwzorowują znaczenie semantyczne. Te wektory mogą być używane do semantycznego wyszukiwania, klastrowania, klasyfikacji, wykrywania anomalii oraz retrieval-augmented generation (RAG). CometAPI obsługuje modele embeddingów od wielu dostawców. Przekaż jeden lub więcej ciągów tekstowych, a w odpowiedzi otrzymasz wektory liczbowe, które możesz przechowywać w bazie wektorowej lub używać bezpośrednio do obliczeń podobieństwa.

Dostępne modele

ModelWymiaryMaks. tokenówNajlepsze zastosowanie
text-embedding-3-large3,072 (regulowane)8,191Embeddings najwyższej jakości
text-embedding-3-small1,536 (regulowane)8,191Ekonomiczne i szybkie
text-embedding-ada-0021,536 (stałe)8,191Zgodność ze starszymi wersjami
Pełną listę dostępnych modeli embeddingów i cennik znajdziesz w liście modeli.

Ważne uwagi

Zmniejszanie wymiarów — Modele text-embedding-3-* obsługują parametr dimensions, który pozwala skrócić wektor embeddingu bez istotnej utraty dokładności. Może to obniżyć koszty przechowywania nawet o 75%, przy zachowaniu większości informacji semantycznych.
Batch Input — Możesz osadzić wiele tekstów w jednym żądaniu, przekazując tablicę ciągów znaków do parametru input. Jest to znacznie bardziej wydajne niż wykonywanie osobnych żądań dla każdego tekstu.

Autoryzacje

Authorization
string
header
wymagane

Bearer token authentication. Use your CometAPI key.

Treść

application/json
model
string
wymagane

The embedding model to use. See the Models page for current embedding model IDs.

Przykład:

"text-embedding-3-small"

input
wymagane

The text to embed. Can be a single string, an array of strings, or an array of token arrays. Each input must not exceed the model's maximum token limit (8,191 tokens for text-embedding-3-* models).

encoding_format
enum<string>
domyślnie:float

The format of the returned embedding vectors. float returns an array of floating-point numbers. base64 returns a base64-encoded string representation, which can reduce response size for large batches.

Dostępne opcje:
float,
base64
dimensions
integer

The number of dimensions for the output embedding vector. Only supported by text-embedding-3-* models. Reducing dimensions can lower storage costs while maintaining most of the embedding's utility.

Wymagany zakres: x >= 1
user
string

A unique identifier for your end-user, which can help monitor and detect abuse.

Odpowiedź

200 - application/json

A list of embedding vectors for the input text(s).

object
enum<string>

The object type, always list.

Dostępne opcje:
list
Przykład:

"list"

data
object[]

An array of embedding objects, one per input text. When multiple inputs are provided, results are returned in the same order as the input.

model
string

The model used to generate the embeddings.

Przykład:

"text-embedding-3-small"

usage
object

Token usage statistics for this request.