Microsoft / e5-large-v2
Milvus Integrated
Задача: Встраивание
Модальность: Текст
Метрика сходства: Любой (нормализованный)
Лицензия: Apache 2.0
Размерности: 1024
Максимальное количество входных токенов: 512
Цена: Бесплатно
Введение в модель встраивания e5-large-v2
e5-large-v2 - это улучшенная версия модели e5-base-v2, обеспечивающая превосходную производительность в различных задачах обработки естественного языка (NLP), включая семантический поиск, retrieval augmented generation (RAG) и кластеризацию. Он также основан на слабом контрастном предварительном обучении и особенно эффективен для работы с беспорядочными данными и короткими запросами, возвращающими отрывки текста средней длины.
Модель требует, чтобы входные тексты были снабжены префиксом "query: " для запросов и "passage: " для отрывков. Модель может быть использована с помощью таких библиотек, как Hugging Face's Transformers и Sentence Transformers, что позволяет легко интегрировать ее в приложения.
Сравнение e5-large-v2 и e5-base-v2:
| Характеристика/возможности | e5-base-v2 | e5-large-v2 |
| Слои | 12 | 24 |
| Размер вставки | 768 | 1024 |
| Макс токенов | 512 | 512 |
| Производительность | Хорошо подходит для общих задач встраивания текста | Сильная производительность в таких бенчмарках, как BEIR и MTEB, часто превосходящая более мелкие модели |
| Требования к входному префиксу | "query: " для запросов, "passage: " для отрывков | "query: " для запросов, "passage: " для отрывков |
Как создавать векторные вкрапления с помощью модели e5-large-v2
Существует два основных способа создания векторных вкраплений:
- PyMilvus: Python SDK для Milvus, в который легко интегрируется модель
e5-large-v2. - Библиотека SentenceTransformer: библиотека Python `sentence-transformer.
После того как векторные вкрапления сгенерированы, их можно хранить в Zilliz Cloud (полностью управляемый сервис векторных баз данных на базе Milvus) и использовать для поиска семантического сходства. Вот четыре ключевых шага:
- Зарегистрируйтесь для получения бесплатной учетной записи Zilliz Cloud.
- Настройте бессерверный кластер и получите Публичную конечную точку и ключ API.
- Создайте коллекцию векторов и вставьте в нее свои векторные вкрапления.
- Запустите семантический поиск по сохраненным вкраплениям.
Генерировать векторные вкрапления с помощью PyMilvus и вставлять их в Zilliz Cloud для семантического поиска
from pymilvus.model.dense import SentenceTransformerEmbeddingFunction
из pymilvus import MilvusClient
ef = SentenceTransformerEmbeddingFunction("intfloat/e5-large-v2")
docs = [
"Искусственный интеллект был основан как академическая дисциплина в 1956 году",
"Алан Тьюринг был первым человеком, который провел серьезные исследования в области искусственного интеллекта",
"Тьюринг родился в Майда-Вейл, Лондон, и вырос на юге Англии".
]
# Генерируем вкрапления для документов
docs_embeddings = ef(docs)
запросы = ["Когда был основан искусственный интеллект",
"Где родился Алан Тьюринг?"]
# Генерируем вкрапления для запросов
query_embeddings = ef(queries)
# Подключение к облаку Zilliz с помощью публичной конечной точки и ключа API
client = MilvusClient(
uri=ZILLIZ_PUBLIC_ENDPOINT,
token=ZILLIZ_API_KEY)
КОЛЛЕКЦИЯ = "документы"
if client.has_collection(collection_name=COLLECTION):
client.drop_collection(collection_name=COLLECTION)
client.create_collection(
имя_коллекции=COLLECTION,
dimension=ef.dim,
auto_id=True)
для doc, embedding в zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vector": embedding})
results = client.search(
имя_коллекции=КОЛЛЕКЦИЯ,
data=query_embeddings,
consistency_level="Strong",
output_fields=["text"])
Для получения дополнительной информации обратитесь к нашей документации PyMilvus Embedding Model.
Генерируем векторные вкрапления с помощью библиотеки SentenceTransformer и вставляем их в Zilliz Cloud для семантического поиска
from sentence_transformers import SentenceTransformer
из pymilvus import MilvusClient
model = SentenceTransformer("intfloat/e5-large-v2")
docs = [
"Искусственный интеллект был основан как академическая дисциплина в 1956 году",
"Алан Тьюринг был первым человеком, который провел серьезные исследования в области искусственного интеллекта",
"Тьюринг родился в Майда-Вейл, Лондон, и вырос на юге Англии".
]
# Генерируем вкрапления для документов
docs_embeddings = model.encode(docs, normalize_embeddings=True)
запросы = ["Когда был основан искусственный интеллект",
"Где родился Алан Тьюринг?"]
# Генерируем вкрапления для запросов
query_embeddings = model.encode(queries, normalize_embeddings=True)
# Подключение к облаку Zilliz с помощью публичной конечной точки и ключа API
client = MilvusClient(
uri=ZILLIZ_PUBLIC_ENDPOINT,
token=ZILLIZ_API_KEY)
КОЛЛЕКЦИЯ = "документы"
if client.has_collection(collection_name=COLLECTION):
client.drop_collection(collection_name=COLLECTION)
client.create_collection(
имя_коллекции=COLLECTION,
dimension=1024,
auto_id=True)
для doc, embedding в zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vector": embedding})
results = client.search(
имя_коллекции=КОЛЛЕКЦИЯ,
data=query_embeddings,
consistency_level="Strong",
output_fields=["text"])
Дополнительную информацию можно найти в Документация SentenceTransformer.
- Введение в модель встраивания e5-large-v2
- Как создавать векторные вкрапления с помощью модели e5-large-v2
Контент
Беспрерывные AI рабочие процессы
От встраиваний до масштабируемого AI поиска—Zilliz Cloud позволяет вам хранить, индексировать и извлекать встраивания с непревзойденной скоростью и эффективностью.
Попробуйте Zilliz Cloud Бесплатно

