Sentence Transformers: paraphrase-MiniLM-L6-v2
Sentence Transformers paraphrase-MiniLM-L6-v2 mapuje zdania i krótkie akapity na wektory o 384 wymiarach do wyszukiwania semantycznego i grupowania. Opublikowana konfiguracja używa uśredniania reprezentacji i długości sekwencji 128 tokenó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.
paraphrase-MiniLM-L6-v2 to model osadzeń Sentence Transformers dla zdań i krótkich akapitów. Mapuje każdy tekst na gęstą przestrzeń wektorową o 384 wymiarach, a wyszukiwanie semantyczne i grupowanie należą do zadań wskazanych przez producenta. Opublikowana architektura łączy transformer z uśrednianiem reprezentacji; skonfigurowana długość sekwencji wynosi 128 tokenów.
Reprezentuj fragment, który chcesz porównać
Przygotuj rzeczywiste zdanie lub krótki akapit, zachowując temat i ważne warunki. Praktyczny zbiór może zawierać różnie sformułowane pytania lub krótkie opisy powiązanych tematów. Osadź każdy rekord i zachowaj jego pierwotne sformułowania oraz identyfikator, aby późniejsze porównanie mogło zwrócić sam tekst.
Na przykład kilka pytań do działu wsparcia może opisywać tę samą trudność różnymi terminami. Etap oceny podobieństwa może zebrać takich kandydatów, po czym ich sformułowania można sprawdzić pod kątem rzeczywistego problemu. Osadzenie jest reprezentacją liczbową używaną w tym porównaniu; samo nie pisze parafrazy ani nie przypisuje ostatecznej etykiety grupy.
Uśrednianie i wykorzystanie wektorów
Bezpośredni przykład kodowania producenta uwzględnia maskę uwagi podczas uśredniania reprezentacji tokenów, wykluczając pozycje dopełnienia. Architektura jawnie wybiera uśrednianie i nie wybiera agregacji CLS ani maksimum. Zachowaj tę recepturę agregacji z modelem przy przygotowaniu porównywalnych wektorów.
Każda zwrócona reprezentacja ma 384 składowe. Etap indeksowania lub grupowania pracuje z tymi wektorami przy wybranej konfiguracji podobieństwa, a źródłowy rekord pozostaje dostępny do przeglądu. Zachowaj ten sam model, przygotowanie wejścia i ustawienia porównania dla porównywanych elementów. Inny model zwracający 384 wartości nie jest na podstawie samego kształtu tą samą przestrzenią osadzeń.
Krótkie wejścia w opublikowanej konfiguracji
Referencyjna konfiguracja Sentence Transformer używa maksymalnej długości sekwencji 128 tokenów. Przygotuj długie źródło jako krótkie spójne jednostki, a nie jeden zbyt długi akapit. Zdanie zawierające regułę może potrzebować wyjątku z następnego zdania; zachowaj tę małą jednostkę razem, jeśli się mieści. Liczba słów lub znaków nie określa bezpośrednio długości w tokenach.
W zbiorze krótkich opisów zachowaj nazwy i cechy odróżniające, które mają znaczenie dla porównania. Rekord zawierający tylko niejasną kategorię może być trudny do oddzielenia od innych rekordów tego typu. Przechowuj powiązanie ze źródłem poza wektorem, aby zwróconego kandydata dało się sprawdzić względem pierwotnego materiału.
Wyniki wyszukiwania i grupowania
W wyszukiwaniu semantycznym reprezentuj zapytanie i materiał korpusu tym samym modelem oraz zwracaj rekordy kandydatów z tekstem źródłowym. Przy grupowaniu inny etap tworzy grupy z wektorów. Analizuj rekordy blisko granicy grupy, zanim użyjesz grupowania do decyzji produktowej lub automatycznej etykiety.
Użyteczne wyjście to kompaktowa reprezentacja krótkiego tekstu powiązana z pierwotnym rekordem. Ten konkretny punkt kontrolny paraphrase-MiniLM-L6-v2 ma własną konfigurację agregacji i sekwencji. Warianty all-MiniLM i wielojęzyczne paraphrase są odrębnymi profilami modeli; ich trening, zakres językowy i ustawienia wejścia nie wynikają ze wspólnej nazwy MiniLM.
Ailoot Ultra · Reprezentacje wektorowe POST /v1/embeddings sentence-transformers/paraphrase-minilm-l6-v2
sentence-transformers/paraphrase-minilm-l6-v2
sentence-transformers/paraphrase-minilm-l6-v2Start
Sentence Transformers paraphrase-MiniLM-L6-v2 mapuje zdania i krótkie akapity na wektory o 384 wymiarach do wyszukiwania semantycznego i grupowania. Opublikowana konfiguracja używa uśredniania reprezentacji i długości sekwencji 128 tokenó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/paraphrase-minilm-l6-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/paraphrase-minilm-l6-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/paraphrase-minilm-l6-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/paraphrase-minilm-l6-v2
Aliasy ścieżek metod
Użyj ścieżek metod podanych powyżej.
Powiązane ID modeli
FAQ · Sentence Transformers: paraphrase-MiniLM-L6-v2
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/embeddings·sentence-transformers/paraphrase-minilm-l6-v2:text,token_ids→embedding- Jakich pól używa żądanie?
POST /v1/embeddings·sentence-transformers/paraphrase-minilm-l6-v2:model,input,encoding_format,provider- Jakie limity obowiązują?
POST /v1/embeddings·sentence-transformers/paraphrase-minilm-l6-v2:input.budget.maximum:512(bajty UTF8);input.min_items:1