forked from Archives/langchain
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
2.0 KiB
Python
59 lines
2.0 KiB
Python
"""Test mosaicml embeddings."""
|
|
from langchain.embeddings.mosaicml import MosaicMLInstructorEmbeddings
|
|
|
|
|
|
def test_mosaicml_embedding_documents() -> None:
|
|
"""Test MosaicML embeddings."""
|
|
documents = ["foo bar"]
|
|
embedding = MosaicMLInstructorEmbeddings()
|
|
output = embedding.embed_documents(documents)
|
|
assert len(output) == 1
|
|
assert len(output[0]) == 768
|
|
|
|
|
|
def test_mosaicml_embedding_documents_multiple() -> None:
|
|
"""Test MosaicML embeddings with multiple documents."""
|
|
documents = ["foo bar", "bar foo", "foo"]
|
|
embedding = MosaicMLInstructorEmbeddings()
|
|
output = embedding.embed_documents(documents)
|
|
assert len(output) == 3
|
|
assert len(output[0]) == 768
|
|
assert len(output[1]) == 768
|
|
assert len(output[2]) == 768
|
|
|
|
|
|
def test_mosaicml_embedding_query() -> None:
|
|
"""Test MosaicML embeddings of queries."""
|
|
document = "foo bar"
|
|
embedding = MosaicMLInstructorEmbeddings()
|
|
output = embedding.embed_query(document)
|
|
assert len(output) == 768
|
|
|
|
|
|
def test_mosaicml_embedding_endpoint() -> None:
|
|
"""Test MosaicML embeddings with a different endpoint"""
|
|
documents = ["foo bar"]
|
|
embedding = MosaicMLInstructorEmbeddings(
|
|
endpoint_url="https://models.hosted-on.mosaicml.hosting/instructor-xl/v1/predict"
|
|
)
|
|
output = embedding.embed_documents(documents)
|
|
assert len(output) == 1
|
|
assert len(output[0]) == 768
|
|
|
|
|
|
def test_mosaicml_embedding_query_instruction() -> None:
|
|
"""Test MosaicML embeddings with a different query instruction."""
|
|
document = "foo bar"
|
|
embedding = MosaicMLInstructorEmbeddings(query_instruction="Embed this query:")
|
|
output = embedding.embed_query(document)
|
|
assert len(output) == 768
|
|
|
|
|
|
def test_mosaicml_embedding_document_instruction() -> None:
|
|
"""Test MosaicML embeddings with a different query instruction."""
|
|
documents = ["foo bar"]
|
|
embedding = MosaicMLInstructorEmbeddings(embed_instruction="Embed this document:")
|
|
output = embedding.embed_documents(documents)
|
|
assert len(output) == 1
|
|
assert len(output[0]) == 768
|