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

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

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

  • Вояж

Voyage

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

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

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

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

from pymilvus.model.dense import VoyageEmbeddingFunction

voyage_ef = VoyageEmbeddingFunction(
    model_name="voyage-3", # Defaults to `voyage-3`
    api_key=VOYAGE_API_KEY # Provide your Voyage API key
)

Параметры:

  • model_name (string) Имя модели Voyage, которую необходимо использовать для кодирования. Вы можете указать любое из доступных имен моделей Voyage, например, voyage-3-lite, voyage-finance-2, и т. д. Если оставить этот параметр неуказанным, будет использоваться модель voyage-3. Список доступных моделей см. в официальной документации Voyage.
  • api_key (строка) API-ключ для доступа к API Voyage. Информацию о том, как создать API-ключ, см. в разделе API-ключ и Python-клиент.

Чтобы создать вкрапления для документов, используйте метод 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 = voyage_ef.encode_documents(docs)

# Print embeddings
print("Embeddings:", docs_embeddings)
# Print dimension and shape of embeddings
print("Dim:", voyage_ef.dim, docs_embeddings[0].shape)

Ожидаемый результат похож на следующий:

Embeddings: [array([ 0.02582654, -0.00907086, -0.04604037, ..., -0.01227521,
        0.04420955, -0.00038829]), array([ 0.03844212, -0.01597065, -0.03728884, ..., -0.02118733,
        0.03349845,  0.0065346 ]), array([ 0.05143557, -0.01096631, -0.02690451, ..., -0.02416254,
        0.07658645,  0.03064499])]
Dim: 1024 (1024,)

Для создания вкраплений для запросов используйте метод encode_queries():

queries = ["When was artificial intelligence founded", 
           "Where was Alan Turing born?"]

query_embeddings = voyage_ef.encode_queries(queries)

print("Embeddings:", query_embeddings)
print("Dim", voyage_ef.dim, query_embeddings[0].shape)

Ожидаемый результат похож на следующий:

Embeddings: [array([ 0.01733501, -0.0230672 , -0.05208827, ..., -0.00957995,
        0.04493361,  0.01485138]), array([ 0.05937521, -0.00729363, -0.02184347, ..., -0.02107683,
        0.05706626,  0.0263358 ])]
Dim 1024 (1024,)
Содержание

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

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

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

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