modele

OpenAI: Text Embedding 3 Small

Markdown · JSON

OpenAI: Text Embedding 3 Small

Mały model osadzeń tekstu trzeciej generacji OpenAI domyślnie zwraca wektory 1536-wymiarowe i obsługuje krótsze reprezentacje. Używaj wyniku liczbowego do wyszukiwania semantycznego, wyszukiwania kodu, grupowania, rekomendacji i klasyfikacji.

O modelu

Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.

text-embedding-3-small to mniejszy model osadzeń tekstu trzeciej generacji OpenAI. Zamienia materiały pisemne na wektory liczbowe o domyślnie 1536 składnikach. Wektory te mierzą relacje między tekstami na potrzeby kolejnego kroku wyszukiwania lub analizy; model nie generuje konwersacyjnej odpowiedzi na wejście.

Podobnie jak większy model trzeciej generacji obsługuje parametr dimensions producenta do tworzenia krótszych osadzeń. Trening zaprojektowano tak, aby zachowywać informacje reprezentujące pojęcia w skróconym wektorze, a wybór rozmiaru wpływa na jakość aplikacji i jej zapotrzebowanie na zasoby. Utrzymuj spójny model i wybraną liczbę wymiarów między porównywanymi rekordami i zapytaniami.

Praktycznym zastosowaniem jest wyszukiwanie kodu. Przewodnik producenta opisuje reprezentowanie funkcji źródłowych jako tekstu i tworzenie ich osadzeń, a następnie osadzenia zapytania w języku naturalnym tym samym modelem i porównywanie uzyskanych wektorów. Przykładowy wynik to uporządkowany zestaw odpowiednich funkcji powiązanych z ich położeniem w źródłach. Przy wyszukiwaniu dokumentów odpowiednikiem jest zestaw fragmentów, których tekst i oryginalne odwołania pozostają dostępne dla czytelnika lub następnego modelu.

Inne udokumentowane zastosowania obejmują grupowanie w klastry, rekomendacje powiązanych treści, klasyfikację, wykrywanie elementów odstających i mierzenie różnorodności. Proces pracy z wiadomościami o określonym zakresie może grupować podobne prośby lub porównywać je z opisami kategorii. Aplikacja definiuje, jak wynik podobieństwa staje się kategorią, rekomendacją lub elementem do przeglądu; samo osadzenie pozostaje danymi liczbowymi.

OpenAI określa maksymalne wejście 8192 tokenów na tekst. Jej API osadzeń przyjmuje ciągi lub wejście podzielone na tokeny oraz wiele wejść w jednym żądaniu, odrzuca puste ciągi i stosuje łączny limit 300 000 tokenów. Przygotuj długie materiały jako znaczące fragmenty i zachowaj tytuły lub definicje potrzebne do ich interpretacji. Stosuj spójny zestaw pól źródłowych, zamiast tworzyć osadzenia różnych rodzajów rekordów według niepowiązanych reguł przygotowania.

Producent domyślnie zwraca wektory float i dokumentuje także kodowanie base64. Przewodnik podaje, że osadzenia OpenAI są znormalizowane do jednostkowej normy, i zaleca podobieństwo kosinusowe; iloczyn skalarny może je obliczyć, a odległość euklidesowa daje ten sam ranking. Jeśli osadzenie trzeciej generacji zostanie ręcznie skrócone po zwróceniu, ponownie znormalizuj skrócony wektor zgodnie z przewodnikiem. Parametr dimensions pozwala uniknąć traktowania ręcznego obcinania jako zwykłego kroku przygotowania.

Zapisuj tożsamość modelu, liczbę wymiarów i odwołanie do źródła wraz z każdym wektorem. Użytecznym dalszym rezultatem jest uporządkowana lista, pogrupowana kolekcja lub zestaw cech klasyfikacyjnych powiązanych z tekstem, który je wytworzył. Sprawdzaj, czy wybrany materiał rzeczywiście wspiera zadanie, i odróżniaj brakujące fakty od semantycznego pokrewieństwa. Następny krok może wtedy wykorzystać reprezentację w konkretnym procesie wyszukiwania lub podejmowania decyzji.

Ailoot Ultra · Reprezentacje wektorowe POST /v1/embeddings openai/text-embedding-3-small

openai/text-embedding-3-small

OpenAI /openai/text-embedding-3-small
ID modelu
  • openai/text-embedding-3-small
  • text-embedding-3-small

Start

Mały model osadzeń tekstu trzeciej generacji OpenAI domyślnie zwraca wektory 1536-wymiarowe i obsługuje krótsze reprezentacje. Używaj wyniku liczbowego do wyszukiwania semantycznego, wyszukiwania kodu, grupowania, rekomendacji i klasyfikacji.

Akceptowane dane wejściowe
Tekst · token_ids
Wyniki
embedding

Dostępne w Ailoot · dane wejściowe i metody

Ailoot Ultra · Reprezentacje wektorowe POST /v1/embeddings
Wejście
text, token_ids
Wyjście
embedding
Kontekst
8192 tokens
Format wyjściowy
json
PoleTypWymaganieWartości i limityDomyślnie
PolemodelTypstringWymaganieWymaganeWartości i limity
openai/text-embedding-3-small
Domyślnie—
PoleinputTypstring|string[]|integer[]|integer[][]WymaganieWymaganeWartości i limity
Minimalna liczba elementów: 1
Warunki: Niepusta, jednorodna partia danych. Identyfikatory tokenów są nieujemnymi liczbami całkowitymi.
Budżet wejścia: Maksimum: 8192 · Jednostka tekstu: bajty UTF8 · Jednostka tokenów: elementy tablicy tokenów
Domyślnie—
Poleencoding_formatTypstringWymaganieOpcjonalneWartości i limity
float
Domyślniefloat
PoledimensionsTypintegerWymaganieNieobsługiwaneWartości i limity
Minimum: 1
Domyślnie—
PoleuserTypjson_valueWymaganieOpcjonalneWartości i limity
Warunki: Źródło dopuszcza to pole metadanych JSON; dokładna semantyka po stronie dostawcy zależy od modelu.
Domyślnie—
Polesession_idTypjson_valueWymaganieOpcjonalneWartości i limity
Warunki: Źródło dopuszcza to pole metadanych JSON; dokładna semantyka po stronie dostawcy zależy od modelu.
Domyślnie—
PoletraceTypjson_valueWymaganieOpcjonalneWartości i limity
Warunki: Źródło dopuszcza to pole metadanych JSON; dokładna semantyka po stronie dostawcy zależy od modelu.
Domyślnie—
PoleproviderTypobjectWymaganieOpcjonalneWartości i limity
Warunki: Odrzucono provider.options
Domyślnie—
Kombinacje materiałów wejściowych

text_to_embedding

Parametry i cykl życia metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, input
Parametrinput_shapesKontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parametrencoding_formatKontraktfloat
Parametrdimensions_overrideKontraktfalse
Parametrmax_input_budget_unitsKontrakt8192
Parametrmultimodal_objectsKontraktfalse
Parametrmaterial_typesKontrakttext, token_ids

Cykl życia: synchronous_json

Zachowaj indeks i liczbę wymiarów każdego wektora.

Nawet jeśli nazwa modelu wskazuje na multimodalność, ta konkretna ścieżka nie obsługuje obiektów obrazów.

Cennik

Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.

Tryb szybki
Stawka standardowa Gdy wybrany jest tryb szybki
Tryb flex
Stawka standardowa Gdy wybrany jest tryb flex
Maksymalna intensywność rozumowania
Stawka standardowa Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)

Stawki Ailoot

Ceny według konfiguracji

KonfiguracjaTabela stawekOpłata
KonfiguracjaPodstawowe stawki za tokenyTabela stawekStawka podstawowaOpłata
Wejście · Tokeny wejściowe $0.00004 / 1K tokenów
Wyjście · Tokeny wyjściowe $0 / 1K tokenów
Wejście · Odczyt cache — / 1K tokenów
Wejście · Zapis do cache — / 1K tokenów
Wejście · Zapis do cache, 1 godz. — / 1K tokenów

Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →

Przykładowe żądania

Ailoot Ultra · Reprezentacje wektorowe

curlPython SDK
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/text-embedding-3-small", "input": ["First document", "Second document"]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os

client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='openai/text-embedding-3-small',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)

Odbieranie i zapisywanie wyników

Ailoot Ultra · Reprezentacje wektorowe

json

Zachowaj wszystkie ukończone wyniki

Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.

Zachowaj każdy wektor wraz z jego indeksem. Liczba wektorów musi być równa liczbie elementów wejściowych; wszystkie wektory muszą mieć tę samą liczbę wymiarów.

Jeśli trzeba sprawdzić pierwotną odpowiedź

Nie wprowadzono endpointu zadań generowania osadzeń.

Pola odpowiedzi
PoleTyp
PoleobjectTypstring
PolemodelTypstring
Poledata[].indexTypinteger
Poledata[].embeddingTypfinite float[]
PoleusageTypobject
Błędy i dalsze kroki
OdpowiedźWarunekNastępny krok
Odpowiedź400 · invalid_request_errorWarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametruNastępny krokPopraw wskazane pola przed nowym żądaniem utworzenia.

Aliasy

Aliasy modelu

Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small

Aliasy ścieżek metod

Użyj ścieżek metod podanych powyżej.

Powiązane ID modeli

openai/text-embedding-3-small, text-embedding-3-small

Ailoot Ultra · Wektory osadzeń · text-embedding-3-small POST /v1/embeddings text-embedding-3-small

text-embedding-3-small

OpenAI /text-embedding-3-small
ID modelu
  • openai/text-embedding-3-small
  • text-embedding-3-small

Start

Mały model osadzeń tekstu trzeciej generacji OpenAI domyślnie zwraca wektory 1536-wymiarowe i obsługuje krótsze reprezentacje. Używaj wyniku liczbowego do wyszukiwania semantycznego, wyszukiwania kodu, grupowania, rekomendacji i klasyfikacji.

Akceptowane dane wejściowe
Tekst
Wyniki
embedding

Dostępne w Ailoot · dane wejściowe i metody

Ailoot Ultra · Wektory osadzeń · text-embedding-3-small POST /v1/embeddings
Wejście
text
Wyjście
embedding
Kontekst
8192 tokens
Format wyjściowy
json
PoleTypWymaganieWartości i limityDomyślnie
PolemodelTypstringWymaganieWymaganeWartości i limity
text-embedding-3-small
Domyślnie—
PoleinputTypstring|string[]|integer[]|integer[][]WymaganieWymaganeWartości i limity
Minimalna liczba elementów: 1
Warunki: Niepusta, jednorodna partia danych. Identyfikatory tokenów są nieujemnymi liczbami całkowitymi.
Budżet wejścia: Maksimum: 8192 · Jednostka tekstu: bajty UTF8 · Jednostka tokenów: elementy tablicy tokenów
Domyślnie—
Poleencoding_formatTypstringWymaganieOpcjonalneWartości i limity
float
Domyślniefloat
PoledimensionsTypintegerWymaganieNieobsługiwaneWartości i limity
Minimum: 1
Domyślnie—
PoleuserTypjson_valueWymaganieOpcjonalneWartości i limity
Warunki: Opcjonalne metadane JSON; dokładna semantyka po stronie dostawcy zależy od wybranego modelu.
Domyślnie—
Polesession_idTypjson_valueWymaganieOpcjonalneWartości i limity
Warunki: Opcjonalne metadane JSON; dokładna semantyka po stronie dostawcy zależy od wybranego modelu.
Domyślnie—
PoletraceTypjson_valueWymaganieOpcjonalneWartości i limity
Warunki: Opcjonalne metadane JSON; dokładna semantyka po stronie dostawcy zależy od wybranego modelu.
Domyślnie—
PoleproviderTypobjectWymaganieOpcjonalneWartości i limity
Warunki: Odrzucono provider.options
Domyślnie—
Kombinacje materiałów wejściowych

text_to_embedding

Parametry i cykl życia metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, input
Parametrinput_shapesKontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parametrencoding_formatKontraktfloat
Parametrdimensions_overrideKontraktfalse
Parametrmax_input_budget_unitsKontrakt8192
Parametrmultimodal_objectsKontraktfalse
Parametrmaterial_typesKontrakttext
Parametrtext_file_materialKontraktOdczytaj rzeczywisty dokument UTF-8 i umieść jego tekst we wskazanym polu input lub w ciągu treści wiadomości.

Cykl życia: synchronous_json

Wyślij dokładny identyfikator modelu i wymagane pola.

Zachowaj każdy zwrócony element i jego pierwotne identyfikatory.

Cennik

Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.

Tryb szybki
Stawka standardowa Gdy wybrany jest tryb szybki
Tryb flex
Stawka standardowa Gdy wybrany jest tryb flex
Maksymalna intensywność rozumowania
Stawka standardowa Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)

Stawki Ailoot

Ceny według konfiguracji

KonfiguracjaTabela stawekOpłata
KonfiguracjaPodstawowe stawki za tokenyTabela stawekStawka podstawowaOpłata
Wejście · Tokeny wejściowe $0.00004 / 1K tokenów
Wyjście · Tokeny wyjściowe $0 / 1K tokenów
Wejście · Odczyt cache — / 1K tokenów
Wejście · Zapis do cache — / 1K tokenów
Wejście · Zapis do cache, 1 godz. — / 1K tokenów

Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →

Przykładowe żądania

Ailoot Ultra · Wektory osadzeń · text-embedding-3-small

Kompletna minimalna treść żądania JSONcurl · użyj swojego dokumentu UTF-8Python · zapisz kompletny wynik
{
  "model": "text-embedding-3-small",
  "input": [
    "First document",
    "Second document"
  ],
  "encoding_format": "float"
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-small', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
    print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-small', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'Authorization': 'Bearer PLACEHOLDER_KEY', 'Content-Type': 'application/json'}
headers['Authorization'] = 'Bearer ' + api_key
request = Request('https://api.ailoot.ai/v1/embeddings', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
    print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))

Odbieranie i zapisywanie wyników

Ailoot Ultra · Wektory osadzeń · text-embedding-3-small

json

Zachowaj wszystkie ukończone wyniki

Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.

Zachowaj każdy wektor o skończonych wartościach wraz z pierwotnym indeksem. Zachowaj wszystkie wymiary i kompletny obiekt usage.

Jeśli trzeba sprawdzić pierwotną odpowiedź

Nie wprowadzono endpointu zadań generowania osadzeń.

Pola odpowiedzi
PoleTyp
PoleobjectTypstring
PolemodelTypstring
Poledata[].indexTypinteger
Poledata[].embeddingTypfinite float[]
PoleusageTypobject
Błędy i dalsze kroki
OdpowiedźWarunekNastępny krok
Odpowiedź400 · invalid_request_errorWarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametruNastępny krokPopraw wskazane pola przed nowym żądaniem utworzenia.

Aliasy

Aliasy modelu

Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small

Aliasy ścieżek metod

Użyj ścieżek metod podanych powyżej.

Powiązane ID modeli

openai/text-embedding-3-small, text-embedding-3-small

FAQ · OpenAI: Text Embedding 3 Small
Jakie dane wejściowe i wyniki są dostępne?

POST /v1/embeddings · openai/text-embedding-3-small: text, token_ids → embedding

POST /v1/embeddings · text-embedding-3-small: text → embedding

Jakich pól używa żądanie?

POST /v1/embeddings · openai/text-embedding-3-small: model, input, encoding_format, provider

POST /v1/embeddings · text-embedding-3-small: model, input, encoding_format, provider

Jakie limity obowiązują?

POST /v1/embeddings · openai/text-embedding-3-small: ctx: 8192; input.budget.maximum: 8192 (bajty UTF8); input.min_items: 1

POST /v1/embeddings · text-embedding-3-small: ctx: 8192; input.budget.maximum: 8192 (bajty UTF8); input.min_items: 1

Więcej szczegółów

Połącz Ailoot z Claude Code, OpenCode, Hermes albo własną aplikacją.

Firma i jej portfel projektów

Firma i jej portfel projektów: miliony klientów; miesięczna sprzedaż liczona w miliardach.

Kupuj tokeny z rabatem.

Rabat subskrypcji do regularnej pracy. Kody promocyjne — do 50% na tokeny.

Subskrypcja
Wybierz plan z rabatem do regularnych żądań.
Kod promocyjny do 50%
Wpisz kod przy zakupie. Cena zostanie przeliczona według aktualnej promocji.
Koszty w historii
Model, tokeny i kwota są zapisywane dla każdego żądania.

Wybierz subskrypcję · Sprawdź ceny modeli

Połącz API z produktem, który sprzedajesz.

SaaS, aplikacje i boty na warunkach oferty i umowy licencyjnej Ailoot. Do odsprzedaży poproś o licencję resellerską.

Aplikacja komercyjna
Wbuduj generowanie tekstu, obrazów, wideo i dźwięku w płatne funkcje usługi.
Licencja resellerska
Prześlij opis projektu i schemat dostępu. Poproś o pisemne warunki używania i odsprzedaży.
Dokumenty na stronie
Oferta, umowa licencyjna i polityka przetwarzania danych są dostępne przed połączeniem.

Poproś o licencję resellerską · Oferta i umowa licencyjna