Sentence Transformers: all-MiniLM-L12-v2
Sentence Transformers all-MiniLM-L12-v2 mengekod ayat dan perenggan pendek kepada vektor 384 dimensi untuk carian, keserupaan dan pengelompokan. Kaedah rujukannya menggunakan mean pooling dan penormalan, dengan pemotongan lalai pada 256 unit word piece.
Tentang model
Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.
all-MiniLM-L12-v2 ialah pengekod Sentence Transformers untuk ayat dan perenggan pendek. Ia menghasilkan satu vektor padat 384 dimensi bagi setiap teks untuk carian semantik, pemerolehan semula maklumat, pengelompokan dan keserupaan ayat. Model menggunakan seni bina asas MiniLM-L12-H384-uncased dan ditala halus dengan pembelajaran kontrastif pada koleksi satu bilion pasangan ayat.
Kodkan unit yang mahu diperoleh semula
Gunakan ayat atau perenggan pendek yang menyatakan satu idea berguna. Untuk koleksi penerangan produk, kekalkan ciri dan syarat yang membezakan item: “The adapter connects a wired headset to a USB-C port” lebih bermaklumat daripada “Audio accessory.” Simpan pengecam rekod dan penerangan asal di sisi vektornya.
Pertanyaan carian kemudian boleh dibandingkan dengan penerangan yang dikodkan. Periksa calon yang dikembalikan untuk keperluan tepat seperti jenis penyambung atau keserasian peranti sebelum membentangkan pilihan akhir. Vektor mewakili makna teks; aplikasi carian di sekelilingnya mendapatkan rekod yang sepadan.
Mean pooling dan vektor ternormal
Contoh pengekodan yang diterbitkan mempuratakan perwakilan token menggunakan topeng perhatian supaya kedudukan padding tidak menyumbang kepada purata. Kemudian ia menggunakan penormalan L2. Langkah ini sebahagian daripada kaedah rujukan mendapatkan vektor ayat, bukannya arahan mengambil token sembarangan daripada transformer asas.
Pastikan konfigurasi model, pooling dan penormalan konsisten antara teks berindeks dan pertanyaan baharu. Perwakilan 384 komponen yang terhasil boleh dibandingkan menggunakan keserupaan kosinus. Simpan rekod konfigurasi itu bersama koleksi; pengekod 384 dimensi lain tidak menjadi serasi hanya kerana vektornya sama panjang.
Panjang input lalai dan skop latihan
Pembuat menetapkan pemotongan lalai melebihi 256 unit word piece. Ini had tokenizer, bukan bilangan perkataan biasa atau aksara. Untuk rekod lebih panjang, pilih bahagian pendek yang koheren dan simpan tajuk atau perincian pengenal yang diperlukan untuk mentafsir setiap satunya.
Prosedur latihan model menggunakan jujukan sehingga 128 token. Tetapan latihan itu berasingan daripada tetapan lalai 256 unit word piece yang diterbitkan untuk pengekodan. Petikan yang muat dalam tetapan lalai masih boleh berbeza dengan ketara daripada bahan ayat pendek semasa latihan, maka nilai penerangan panjang atau khusus menggunakan contoh yang mewakili tugas.
Aliran kerja keserupaan dan pengelompokan
Untuk set mesej sokongan, embedding boleh membekalkan input berangka kepada peringkat pengelompokan. Semak beberapa mesej daripada setiap kumpulan cadangan dan mesej berhampiran sempadannya sebelum memberikan label yang mudah dibaca manusia. Untuk semakan kandungan pendua, dapatkan rekod serupa dan bandingkan ungkapan sebenar; dua petikan mungkin membincangkan subjek sama sambil memberikan arahan berbeza.
Edisi L12-v2 tepat ini ialah profil embedding ayat bahasa Inggeris. Ia berbeza daripada all-MiniLM-L6-v2 dan checkpoint paraphrase-MiniLM. Nama keluarga yang dikongsi tidak memindahkan konfigurasi jujukan atau kaedah poolingnya. Gunakan vektor padat kompaknya bersama rekod sumber dan penilaian khusus tugas, bukannya menganggap nilai keserupaan sebagai jawapan yang disahkan atau keputusan editorial akhir.
Ailoot Ultra · Pembenaman POST /v1/embeddings sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2Pengenalan
Sentence Transformers all-MiniLM-L12-v2 mengekod ayat dan perenggan pendek kepada vektor 384 dimensi untuk carian, keserupaan dan pengelompokan. Kaedah rujukannya menggunakan mean pooling dan penormalan, dengan pemotongan lalai pada 256 unit word piece.
- Input yang diterima
- Teks · token_ids
- Hasil
- embedding
Tersedia di Ailoot · input & kaedah
Ailoot Ultra · Pembenaman POST /v1/embeddings
- Input
text,token_ids- Output
embedding- Format output
- json
| Medan | Jenis | Keperluan | Nilai & had | Lalai |
|---|---|---|---|---|
Medanmodel | Jenisstring | KeperluanDiperlukan | Nilai & had sentence-transformers/all-minilm-l12-v2 | Lalai— |
Medaninput | Jenisstring|string[]|integer[]|integer[][] | KeperluanDiperlukan | Nilai & had Item minimum: 1 Syarat: Kelompok homogen yang tidak kosong. ID token ialah integer bukan negatif. Bajet input: Maksimum: 512 · Unit teks: bait UTF8 · Unit token: elemen tatasusunan token | Lalai— |
Medanencoding_format | Jenisstring | KeperluanPilihan | Nilai & had float | Lalaifloat |
Medandimensions | Jenisinteger | KeperluanTidak disokong | Nilai & had Minimum: 1 | Lalai— |
Medanuser | Jenisjson_value | KeperluanPilihan | Nilai & had Syarat: Sumber membenarkan medan metadata JSON ini; semantik tepat di pihak huluan bergantung pada model. | Lalai— |
Medansession_id | Jenisjson_value | KeperluanPilihan | Nilai & had Syarat: Sumber membenarkan medan metadata JSON ini; semantik tepat di pihak huluan bergantung pada model. | Lalai— |
Medantrace | Jenisjson_value | KeperluanPilihan | Nilai & had Syarat: Sumber membenarkan medan metadata JSON ini; semantik tepat di pihak huluan bergantung pada model. | Lalai— |
Medanprovider | Jenisobject | KeperluanPilihan | Nilai & had Syarat: provider.options ditolak | Lalai— |
Gabungan bahan input
text_to_embedding
Parameter kaedah dan kitar hayat
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, input |
Parameterinput_shapes | Kontrakstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontrakfloat |
Parameterdimensions_override | Kontrakfalse |
Parametermax_input_budget_units | Kontrak512 |
Parametermultimodal_objects | Kontrakfalse |
Parametermaterial_types | Kontraktext, token_ids |
Kitar hayat: synchronous_json
Simpan setiap indeks dan dimensi vektor.
Nama model multimodal tidak bermakna objek imej dibenarkan pada laluan khusus ini.
Pelan harga
Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.
- Mod pantas
- Tidak dinyatakan Apabila mod pantas dipilih
- Mod flex
- Tidak dinyatakan Apabila mod flex dipilih
- Usaha penaakulan maksimum
- Tidak dinyatakan Apabila usaha penaakulan maksimum menggunakan pelarasan default
Kadar Ailoot
Harga mengikut konfigurasi
| Konfigurasi | Jadual kadar | Caj |
|---|---|---|
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Caj Input · Token input $0.00001 / 1K token Output · Token output $0 / 1K token Input · Bacaan cache — / 1K token Input · Penulisan cache — / 1K token Input · Penulisan cache, 1 jam — / 1K token |
Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. Cara rizab dan penyelesaian caj berfungsi →
Contoh permintaan
Ailoot Ultra · Pembenaman
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)
Terima dan simpan hasil
Ailoot Ultra · Pembenaman
json
Simpan semua hasil yang selesai
Simpan setiap respons lengkap, fail dan bahagian kandungan yang dikembalikan.
Simpan setiap vektor bersama indeksnya. Bilangan vektor mesti sama dengan bilangan input; dimensi mesti konsisten.
Jika respons asal perlu disemak
Tiada titik akhir tugas pembenaman diperkenalkan.
Medan respons
| Medan | Jenis |
|---|---|
Medanobject | Jenisstring |
Medanmodel | Jenisstring |
Medandata[].index | Jenisinteger |
Medandata[].embedding | Jenisfinite float[] |
Medanusage | Jenisobject |
Ralat dan langkah seterusnya
| Respons | Syarat | Langkah seterusnya |
|---|---|---|
Respons400 · invalid_request_error | SyaratMedan wajib, perwakilan bahan atau nilai parameter tidak sah | Langkah seterusnyaBetulkan medan yang ditunjukkan sebelum permintaan penciptaan baharu. |
Alias
Alias model
Ailoot Ultra sentence-transformers/all-minilm-l12-v2
Alias laluan kaedah
Gunakan laluan kaedah yang dipaparkan di atas.
ID pemanggil berkaitan
FAQ · Sentence Transformers: all-MiniLM-L12-v2
- Apakah input dan hasil yang tersedia?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:text,token_ids→embedding- Apakah medan yang digunakan oleh permintaan?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:model,input,encoding_format,provider- Apakah had yang terpakai?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:input.budget.maximum:512(bait UTF8);input.min_items:1