Hub documentation

Usando Sentence Transformers no Hugging Face

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Usando Sentence Transformers no Hugging Face

sentence-transformers é uma biblioteca que fornece métodos simples para calcular embeddings (representações vetoriais densas) para frases, parágrafos e imagens. Os textos são incorporados em um espaço vetorial de modo que textos semelhantes fiquem próximos, o que permite aplicações como busca semântica, agrupamento e recuperação.

Explorando sentence-transformers no Hub

Você pode encontrar mais de 500 modelos sentence-transformer filtrando à esquerda na página de modelos. A maioria desses modelos suporta diferentes tarefas, como realizar feature-extraction para gerar o embedding e sentence-similarity como uma forma de determinar o quão semelhante uma frase é a outra. Você também pode encontrar um resumo dos modelos pré-treinados oficiais em os documentos oficiais.

Todos os modelos no Hub vêm com recursos:

  1. Um cartão de modelo gerado automaticamente com uma descrição, trechos de código de exemplo, visão geral da arquitetura e muito mais.
  2. Tags de metadados que auxiliam na descoberta e contêm informações como a licença.
  3. Um widget interativo que você pode usar para interagir com o modelo diretamente no navegador.
  4. Um widget de Inference Providers que permite fazer solicitações de inferência.

Usando modelos existentes

Os modelos pré-treinados no Hub podem ser carregados com uma única linha de código

from sentence_transformers import SentenceTransformer
model = SentenceTransformer('model_name')

Aqui está um exemplo que codifica frases e, em seguida, calcula a distância entre elas para realizar buscas semânticas.

from sentence_transformers import SentenceTransformer, util
model = SentenceTransformer('multi-qa-MiniLM-L6-cos-v1')

query_embedding = model.encode('How big is London')
passage_embedding = model.encode(['London has 9,787,426 inhabitants at the 2011 census',
                                  'London is known for its financial district'])

print("Similarity:", util.dot_score(query_embedding, passage_embedding))

Se você quiser ver como carregar um modelo específico, pode clicar em Use in sentence-transformers e receber um trecho de código funcional para carregá-lo!

Compartilhando seus modelos

Você pode compartilhar seus Sentence Transformers usando o método save_to_hub de um modelo treinado.

from sentence_transformers import SentenceTransformer

# Load or train a model
model.save_to_hub("my_new_model")

Este comando cria um repositório com um cartão de modelo gerado automaticamente, um widget de inferência, trechos de código de exemplo e muito mais! Aqui está um exemplo.

Recursos adicionais

  • Biblioteca library Sentence Transformers.
  • Sentence Transformers docs.
  • Integração com o anúncio do Hub.
Update on GitHub