🚀 Попробуйте Zilliz Cloud, полностью управляемый Milvus, бесплатно — ощутите 10-кратное увеличение производительности! Попробовать сейчас>

milvus-logo
LFAI
Главная
  • Модели
  • Home
  • Docs
  • Модели

  • Встраивания

  • Nomic

Nomic

МоделиNomic - это серия передовых решений для встраивания текста и изображений, разработанных компанией Nomic AI и предназначенных для преобразования различных форм данных в плотные числовые векторы, передающие их семантический смысл.

Milvus интегрируется с моделями встраивания Nomic через класс NomicEmbeddingFunction. Этот класс предоставляет методы для кодирования документов и запросов с использованием моделей встраивания Nomic и возвращает встраивания в виде плотных векторов, совместимых с индексированием Milvus. Чтобы воспользоваться этой функцией, получите API-ключ от Nomic Atlas.

Чтобы воспользоваться этой функцией, установите необходимые зависимости:

pip install --upgrade pymilvus
pip install "pymilvus[model]"

Затем инстанцируйте NomicEmbeddingFunction:

# Before accessing the Nomic Atlas API, configure your Nomic API token
import nomic
nomic.login('YOUR_NOMIC_API_KEY')

# Import Nomic embedding function
from pymilvus.model.dense import NomicEmbeddingFunction

ef = NomicEmbeddingFunction(
    model_name="nomic-embed-text-v1.5", # Defaults to `mistral-embed`
)

Параметры:

  • model_name (string)

    Имя модели встраивания Nomic, которую следует использовать для кодирования. По умолчанию используется значение nomic-embed-text-v1.5. Для получения дополнительной информации обратитесь к официальной документации Nomic.

Чтобы создать вкрапления для документов, используйте метод 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([ 5.59997560e-02, 7.23266600e-02, -1.51977540e-01, -4.53491200e-02,
        6.49414060e-02, 4.33654800e-02, 2.26593020e-02, -3.51867680e-02,
        3.49998470e-03, 1.75571440e-03, -4.30297850e-03, 1.81274410e-02,
        ...
       -1.64337160e-02, -3.85437000e-02, 6.14318850e-02, -2.82745360e-02,
       -7.25708000e-02, -4.15563580e-04, -7.63320900e-03, 1.88446040e-02,
       -5.78002930e-02, 1.69830320e-02, -8.91876200e-03, -2.37731930e-02])]
Dim: 768 (768,)

Для создания вкраплений для запросов используйте метод 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([ 3.24096680e-02, 7.35473600e-02, -1.63940430e-01, -4.45556640e-02,
        7.83081050e-02, 2.64587400e-02, 1.35898590e-03, -1.59606930e-02,
       -3.33557130e-02, 1.05056760e-02, -2.35290530e-02, 2.23388670e-02,
        ...
        7.67211900e-02, 4.54406740e-02, 9.70459000e-02, 4.00161740e-03,
       -3.12805180e-02, -7.05566400e-02, 5.04760740e-02, 5.22766100e-02,
       -3.87878400e-02, -3.03649900e-03, 5.90515140e-03, -1.95007320e-02])]
Dim 768 (768,)
Содержание

Попробуйте Managed Milvus бесплатно

Zilliz Cloud работает без проблем, поддерживается Milvus и в 10 раз быстрее.

Начать
Обратная связь

Была ли эта страница полезной?