Sentence Transformers: all-MiniLM-L12-v2
Sentence Transformers all-MiniLM-L12-v2 koduje zdania i krótkie akapity w wektory o 384 wymiarach do wyszukiwania, oceny podobieństwa i grupowania. Referencyjna receptura używa uśredniania i normalizacji, z domyślnym przycinaniem przy 256 fragmentach słów.
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.
all-MiniLM-L12-v2 to koder Sentence Transformers dla zdań i krótkich akapitów. Tworzy jeden gęsty wektor o 384 wymiarach na tekst do wyszukiwania semantycznego, wyszukiwania informacji, grupowania i oceny podobieństwa zdań. Model korzysta z architektury MiniLM-L12-H384-uncased i został dostrojony uczeniem kontrastywnym na zbiorze miliarda par zdań.
Koduj jednostkę, którą chcesz wyszukać
Używaj zdania lub krótkiego akapitu wyrażającego jedną użyteczną myśl. W zbiorze opisów produktów zachowaj cechę i warunek odróżniające przedmiot: „Adapter łączy przewodowy zestaw słuchawkowy z portem USB-C” dostarcza więcej informacji niż „Akcesorium audio”. Przechowuj identyfikator rekordu i oryginalny opis obok jego wektora.
Zapytanie wyszukiwawcze można następnie porównać z zakodowanymi opisami. Przed przedstawieniem ostatecznego wyboru sprawdź zwróconych kandydatów pod kątem dokładnych wymagań, takich jak typ złącza lub zgodność urządzenia. Wektor reprezentuje znaczenie tekstu; otaczająca aplikacja wyszukiwawcza pobiera odpowiadające rekordy.
Uśrednianie i znormalizowane wektory
Opublikowany przykład kodowania uśrednia reprezentacje tokenów z maską uwagi, dzięki czemu pozycje dopełnienia nie wnoszą wkładu do średniej. Następnie stosuje normalizację L2. Kroki te należą do referencyjnej receptury uzyskania wektora zdania, a nie instrukcji pobrania dowolnego tokenu z bazowego transformera.
Utrzymuj spójną konfigurację modelu, agregacji i normalizacji między indeksowanymi tekstami a nowymi zapytaniami. Wynikowe reprezentacje o 384 składowych można porównywać podobieństwem cosinusowym. Zachowaj zapis tej konfiguracji ze zbiorem; inny koder o 384 wymiarach nie staje się zgodny tylko dlatego, że jego wektory mają tę samą długość.
Domyślna długość wejścia i zakres treningu
Producent określa domyślne przycinanie po przekroczeniu 256 fragmentów słów. To limit tokenizera, a nie liczba zwykłych słów lub znaków. Dla dłuższego rekordu wybierz spójne krótkie sekcje i zachowaj nagłówek lub identyfikujący szczegół potrzebny do interpretacji każdej z nich.
Procedura treningu modelu używała sekwencji do 128 tokenów. To ustawienie treningu jest odrębne od opublikowanego domyślnego limitu 256 fragmentów słów podczas kodowania. Fragment mieszczący się w limicie domyślnym może nadal istotnie różnić się od krótkich zdań używanych w treningu, dlatego oceniaj długie lub specjalistyczne opisy na reprezentatywnych przykładach.
Procesy oceny podobieństwa i grupowania
Dla zbioru wiadomości wsparcia osadzenia mogą dostarczać wejścia liczbowe do etapu grupowania. Przed przypisaniem czytelnej dla człowieka etykiety przejrzyj kilka wiadomości z każdej proponowanej grupy i te blisko jej granicy. Przy przeglądzie powielonej treści wyszukuj podobne rekordy i porównuj ich rzeczywiste sformułowania; dwa fragmenty mogą omawiać ten sam temat, lecz podawać różne instrukcje.
To konkretne wydanie L12-v2 jest angielskim profilem osadzeń zdań. Jest odrębne od all-MiniLM-L6-v2 i punktów kontrolnych paraphrase-MiniLM. Wspólne nazwy rodzin nie przenoszą konfiguracji sekwencji ani receptury agregacji. Używaj jego kompaktowych gęstych wektorów z rekordami źródłowymi i oceną właściwą zadaniu, zamiast traktować wartość podobieństwa jako zweryfikowaną odpowiedź lub ostateczną decyzję redakcyjną.
Ailoot Ultra · Reprezentacje wektorowe POST /v1/embeddings sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2Start
Sentence Transformers all-MiniLM-L12-v2 koduje zdania i krótkie akapity w wektory o 384 wymiarach do wyszukiwania, oceny podobieństwa i grupowania. Referencyjna receptura używa uśredniania i normalizacji, z domyślnym przycinaniem przy 256 fragmentach słów.
- 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- Format wyjściowy
- json
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity sentence-transformers/all-minilm-l12-v2 | Domyślnie— |
Poleinput | Typstring|string[]|integer[]|integer[][] | WymaganieWymagane | Wartoś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: 512 · Jednostka tekstu: bajty UTF8 · Jednostka tokenów: elementy tablicy tokenów | Domyślnie— |
Poleencoding_format | Typstring | WymaganieOpcjonalne | Wartości i limity float | Domyślniefloat |
Poledimensions | Typinteger | WymaganieNieobsługiwane | Wartości i limity Minimum: 1 | Domyślnie— |
Poleuser | Typjson_value | WymaganieOpcjonalne | Wartoś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_id | Typjson_value | WymaganieOpcjonalne | Wartości i limity Warunki: Źródło dopuszcza to pole metadanych JSON; dokładna semantyka po stronie dostawcy zależy od modelu. | Domyślnie— |
Poletrace | Typjson_value | WymaganieOpcjonalne | Wartości i limity Warunki: Źródło dopuszcza to pole metadanych JSON; dokładna semantyka po stronie dostawcy zależy od modelu. | Domyślnie— |
Poleprovider | Typobject | WymaganieOpcjonalne | Wartości i limity Warunki: Odrzucono provider.options | Domyślnie— |
Kombinacje materiałów wejściowych
text_to_embedding
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, input |
Parametrinput_shapes | Kontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parametrencoding_format | Kontraktfloat |
Parametrdimensions_override | Kontraktfalse |
Parametrmax_input_budget_units | Kontrakt512 |
Parametrmultimodal_objects | Kontraktfalse |
Parametrmaterial_types | Kontrakttext, 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
- Nie określono Gdy wybrany jest tryb szybki
- Tryb flex
- Nie określono Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Nie określono Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Stawki Ailoot
Ceny według konfiguracji
| Konfiguracja | Tabela stawek | Opłata |
|---|---|---|
| KonfiguracjaPodstawowe stawki za tokeny | Tabela stawekStawka podstawowa | Opłata Wejście · Tokeny wejściowe $0.00001 / 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
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "sentence-transformers/all-minilm-l12-v2", "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='sentence-transformers/all-minilm-l12-v2',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
| Pole | Typ |
|---|---|
Poleobject | Typstring |
Polemodel | Typstring |
Poledata[].index | Typinteger |
Poledata[].embedding | Typfinite float[] |
Poleusage | Typobject |
Błędy i dalsze kroki
| Odpowiedź | Warunek | Następny krok |
|---|---|---|
Odpowiedź400 · invalid_request_error | WarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametru | Następny krokPopraw wskazane pola przed nowym żądaniem utworzenia. |
Aliasy
Aliasy modelu
Ailoot Ultra sentence-transformers/all-minilm-l12-v2
Aliasy ścieżek metod
Użyj ścieżek metod podanych powyżej.
Powiązane ID modeli
FAQ · Sentence Transformers: all-MiniLM-L12-v2
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:text,token_ids→embedding- Jakich pól używa żądanie?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:model,input,encoding_format,provider- Jakie limity obowiązują?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:input.budget.maximum:512(bajty UTF8);input.min_items:1