ミストラルAI
Mistral AI の埋め込みモデルは、テキスト入力を高密度の数値ベクトルに変換し、テキストの根本的な意味を効果的に捉えるように設計されたテキスト埋め込みモデルです。これらのモデルは、意味検索、自然言語理解、文脈認識アプリケーションなどのタスクに高度に最適化されており、AIを活用した幅広いソリューションに適しています。
MilvusはMistralAIEmbeddingFunctionクラスを通じてMistral AIの埋め込みモデルと統合します。このクラスは、Mistral AIの埋め込みモデルを用いて文書やクエリをエンコードし、Milvusのインデックスと互換性のある密なベクトルとして埋め込みを返すメソッドを提供します。この機能を利用するには、Mistral AIからAPIキーを取得してください。
この機能を利用するには、必要な依存関係をインストールします:
pip install --upgrade pymilvus
pip install "pymilvus[model]"
MistralAIEmbeddingFunctionをインスタンス化してください:
from pymilvus.model.dense import MistralAIEmbeddingFunction
ef = MistralAIEmbeddingFunction(
model_name="mistral-embed", # Defaults to `mistral-embed`
api_key="MISTRAL_API_KEY" # Provide your Mistral AI API key
)
パラメータ
model_name
(文字列)エンコードに使用する Mistral AI エンベッディングモデルの名前。デフォルトは
mistral-embed
です。詳細はEmbeddings を参照。api_key
(文字列)Mistral AI API にアクセスするための API キー。
ドキュメントのエンベッディングを作成するには、encode_documents()
メソッドを使います:
docs = [
"Artificial intelligence was founded as an academic discipline in 1956.",
"Alan Turing was the first person to conduct substantial research in AI.",
"Born in Maida Vale, London, Turing was raised in southern England.",
]
docs_embeddings = ef.encode_documents(docs)
# Print embeddings
print("Embeddings:", docs_embeddings)
# Print dimension and shape of embeddings
print("Dim:", ef.dim, docs_embeddings[0].shape)
期待される出力は以下のようなものです:
Embeddings: [array([-0.06051636, 0.03207397, 0.04684448, ..., -0.01618958,
0.02442932, -0.01302338]), array([-0.04675293, 0.06512451, 0.04290771, ..., -0.01454926,
0.0014801 , 0.00686646]), array([-0.05978394, 0.08728027, 0.02217102, ..., -0.00681305,
0.03634644, -0.01802063])]
Dim: 1024 (1024,)
クエリの埋め込みを作成するには、encode_queries()
メソッドを使用します:
queries = ["When was artificial intelligence founded",
"Where was Alan Turing born?"]
query_embeddings = ef.encode_queries(queries)
print("Embeddings:", query_embeddings)
print("Dim", ef.dim, query_embeddings[0].shape)
期待される出力は以下のようなものです:
Embeddings: [array([-0.04916382, 0.04568481, 0.03594971, ..., -0.02653503,
0.02804565, 0.00600815]), array([-0.05938721, 0.07098389, 0.01773071, ..., -0.01708984,
0.03582764, 0.00366592])]
Dim 1024 (1024,)