Hub documentation

Hugging FaceでのSentence Transformersの使用方法

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Hugging FaceでのSentence Transformersの使用方法

sentence-transformers は、文、段落、画像の埋め込み(密集ベクトル表現)を計算するための簡単なメソッドを提供するライブラリです。テキストは、類似したテキストが近くなるようにベクトル空間に埋め込まれるため、セマンティック検索、クラスタリング、検索などのアプリケーションを可能にします。

Hubでのsentence-transformersの探索

モデルページの左側でフィルタリングを行うと、500以上のsentence-transformerモデルを見つけることができます。これらのモデルの多くは、埋め込みを生成するためのfeature-extractionや、特定の文が他の文とどの程度類似しているかを判定するためのsentence-similarityなど、さまざまなタスクをサポートしています。公式の事前学習モデルの概要は、公式ドキュメントで確認できます。

Hub上のすべてのモデルには、以下の機能が備わっています:

  1. 説明、コードの例、アーキテクチャの概要などが含まれる、自動生成されたモデルカード。
  2. 検索可能性を高め、ライセンスなどの情報を含むメタデータタグ。
  3. ブラウザ上でモデルを直接試すことができるインタラクティブなウィジェット。
  4. 推論リクエストを行うことを可能にするInference Providersウィジェット。

既存のモデルを使用する

Hub上の事前学習済みモデルは、1行のコードで読み込むことができます

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

文をエンコードし、セマンティック検索のためにそれらの間の距離を計算する例を以下に示します。

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))

特定のモデルの読み込み方法を確認するには、Use in sentence-transformers をクリックしてください。動作するスニペットが表示され、モデルを読み込むことができます。

モデルの共有

学習済みモデルのsave_to_hubメソッドを使用して、Sentence Transformersを共有できます。

from sentence_transformers import SentenceTransformer

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

このコマンドは、自動生成されたモデルカード、推論ウィジェット、サンプルコードスニペットなどを含むリポジトリを作成します。こちらが例です。

追加のリソース

Update on GitHub