Sentence Transformers: all-MiniLM-L6-v2
Sentence Transformers all-MiniLM-L6-v2 representa frases e parágrafos curtos como vetores de 384 dimensões para pesquisa semântica, agrupamento e similaridade. A sua receita publicada combina mean pooling com normalização L2 e um valor predefinido de 256 segmentos de palavra.
Sobre o modelo
Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.
all-MiniLM-L6-v2 é um codificador de frases e parágrafos curtos de Sentence Transformers. Converte cada texto num vetor denso de 384 dimensões para recuperação, agrupamento e similaridade entre frases. O modelo foi ajustado a partir da arquitetura de base MiniLM-L6-H384-uncased, utilizando aprendizagem contrastiva numa coleção de mil milhões de pares de frases.
Prepare registos concisos e significativos
Escolha a frase ou o parágrafo que deve aparecer num resultado de pesquisa. Numa coleção de perguntas frequentes, conserve a pergunta e a explicação curta que distingue o seu tema. Uma passagem sobre a reposição de uma palavra-passe esquecida deve manter o procedimento de reposição, em vez de ser reduzida a uma palavra isolada como «Conta».
Para um artigo longo, indexe secções curtas e coerentes e mantenha as respetivas localizações de origem. Recupere secções candidatas comparando o vetor da consulta com as representações armazenadas e, depois, apresente as passagens originais, para que o leitor possa examinar as instruções reais.
Obtenha a representação da frase
A receita de codificação direta do fabricante calcula a média das representações dos tokens com a máscara de atenção, excluindo as posições de preenchimento da média. Depois aplica normalização L2. Esses passos produzem o embedding de frase utilizado na comparação; as representações de tokens individuais do transformer subjacente têm um papel diferente.
Cada saída tem 384 componentes. Utilize o mesmo checkpoint, pooling e normalização ao construir a coleção e ao codificar consultas posteriores. A similaridade do cosseno pode comparar os vetores resultantes. Um valor de similaridade é útil para ordenar candidatos nessa configuração, enquanto o texto original determina se um candidato responde à pergunta.
Limites de comprimento e de edição
O valor predefinido publicado trunca entradas com mais de 256 segmentos de palavra, ou word pieces. Esta unidade do tokenizador não corresponde diretamente a uma palavra ou carácter normal. Mantenha as condições importantes dentro da unidade indexada e divida um procedimento extenso em limites significativos antes de o codificar.
As sequências de treino foram limitadas a 128 tokens. Essa definição de treino é distinta do valor predefinido de 256 segmentos de palavra utilizado na codificação. Para passagens invulgarmente longas ou especializadas, utilize exemplos representativos de consulta e passagem para avaliar o comportamento de recuperação, em vez de assumir que respeitar o limite de entrada garante igual tratamento de todos os detalhes.
A edição exata L6-v2 é um perfil de embeddings em inglês. As edições L12-v2 e paraphrase-MiniLM têm identidades e configurações de modelo separadas. O nome MiniLM em comum ou a saída de 384 dimensões não demonstram que os vetores sejam intercambiáveis.
Pesquisa, similaridade e agrupamento
Para rever perguntas duplicadas, recupere perguntas semelhantes e compare a formulação real antes de fundir registos. «Posso repor a minha palavra-passe?» e «Pode um administrador repor a palavra-passe de outro utilizador?» dizem respeito a assuntos relacionados, mas a permissões diferentes. Preserve essa distinção no texto codificado e na etapa de revisão.
Para agrupamento, utilize os embeddings como entradas numéricas de um processo de formação de grupos e, depois, examine registos representativos antes de dar um nome a um grupo. Este modelo fornece vetores, em vez de etiquetas de grupos escritas ou de uma resposta gerada a uma pergunta frequente. O seu resultado útil é uma representação compacta de uma passagem curta de origem que permanece ligada ao registo original.
Ailoot Ultra · Embeddings POST /v1/embeddings sentence-transformers/all-minilm-l6-v2
sentence-transformers/all-minilm-l6-v2
sentence-transformers/all-minilm-l6-v2Introdução
Sentence Transformers all-MiniLM-L6-v2 representa frases e parágrafos curtos como vetores de 384 dimensões para pesquisa semântica, agrupamento e similaridade. A sua receita publicada combina mean pooling com normalização L2 e um valor predefinido de 256 segmentos de palavra.
- Entradas aceites
- Texto · token_ids
- Resultados
- embedding
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · Embeddings POST /v1/embeddings
- Entrada
text,token_ids- Saída
embedding- Formato de saída
- json
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites sentence-transformers/all-minilm-l6-v2 | Predefinição— |
Campoinput | Tipostring|string[]|integer[]|integer[][] | RequisitoObrigatório | Valores e limites Número mínimo de elementos: 1 Condições: Lote homogéneo não vazio. Os IDs de tokens são números inteiros não negativos. Orçamento de entrada: Máximo: 512 · Unidade de texto: bytes UTF8 · Unidade de tokens: elementos do array de tokens | Predefinição— |
Campoencoding_format | Tipostring | RequisitoOpcional | Valores e limites float | Predefiniçãofloat |
Campodimensions | Tipointeger | RequisitoNão suportado | Valores e limites Mínimo: 1 | Predefinição— |
Campouser | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Camposession_id | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Campotrace | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores e limites Condições: provider.options rejeitado | Predefinição— |
Combinações de materiais de entrada
text_to_embedding
Parâmetros e ciclo de vida do método
| Parâmetro | Contrato |
|---|---|
Parâmetrocontent_type | Contratoapplication/json |
Parâmetrorequired | Contratomodel, input |
Parâmetroinput_shapes | Contratostring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parâmetroencoding_format | Contratofloat |
Parâmetrodimensions_override | Contratofalse |
Parâmetromax_input_budget_units | Contrato512 |
Parâmetromultimodal_objects | Contratofalse |
Parâmetromaterial_types | Contratotext, token_ids |
Ciclo de vida: synchronous_json
Guarde o índice e a dimensão de cada vetor.
O nome do modelo multimodal não permite objetos de imagem neste caminho exato.
Tarifários
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Não especificado Quando o modo rápido está selecionado
- Modo flex
- Não especificado Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Não especificado Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
Tarifas Ailoot
Preços por configuração
| Configuração | Tabela de tarifas | Custo |
|---|---|---|
| ConfiguraçãoTarifas base dos tokens | Tabela de tarifasTarifa base | Custo Entrada · Tokens de entrada $0.00001 / 1K tokens Saída · Tokens de saída $0 / 1K tokens Entrada · Leitura da cache — / 1K tokens Entrada · Escrita na cache — / 1K tokens Entrada · Escrita na cache, 1 hora — / 1K tokens |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
Ailoot Ultra · Embeddings
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-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/all-minilm-l6-v2',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Receber e guardar os resultados
Ailoot Ultra · Embeddings
json
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Guarde cada vetor com o respetivo índice. O número de vetores tem de ser igual ao número de entradas; as dimensões têm de ser consistentes.
Se for necessário verificar a resposta original
Não é introduzido nenhum endpoint de tarefas de embeddings.
Campos da resposta
| Campo | Tipo |
|---|---|
Campoobject | Tipostring |
Campomodel | Tipostring |
Campodata[].index | Tipointeger |
Campodata[].embedding | Tipofinite float[] |
Campousage | Tipoobject |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Aliases
Aliases do modelo
Ailoot Ultra sentence-transformers/all-minilm-l6-v2
Aliases dos caminhos dos métodos
Use os caminhos dos métodos indicados acima.
IDs de chamada relacionados
FAQ · Sentence Transformers: all-MiniLM-L6-v2
- Que entradas e resultados estão disponíveis?
POST /v1/embeddings·sentence-transformers/all-minilm-l6-v2:text,token_ids→embedding- Que campos utiliza o pedido?
POST /v1/embeddings·sentence-transformers/all-minilm-l6-v2:model,input,encoding_format,provider- Que limites se aplicam?
POST /v1/embeddings·sentence-transformers/all-minilm-l6-v2:input.budget.maximum:512(bytes UTF8);input.min_items:1