Джина А.И. / jina-embeddings-v2-base-code
Milvus Integrated
Задача: Встраивание
Модальность: Текст
Метрика сходства: Любой (нормализованный)
Лицензия: Apache 2.0
Размерности: 768
Максимальное количество входных токенов: 8192
Цена: Бесплатно
Введение в модели Jina Embedding v2
Модели Jina Embeddings v2 предназначены для работы с длинными документами с расширенным максимальным размером входных данных 8 192 лексем. По состоянию на октябрь 2024 года, Jina AI Embedding V2 имеет следующие варианты, каждый из которых удовлетворяет различные потребности во встраивании.
Что такое jina-embeddings-v2-base-code
jina-embeddings-v2-base-code - это многоязычная модель встраивания, которая понимает английский и 30 популярных языков программирования, поддерживая последовательности длиной до 8192 лексем. Она использует архитектуру на основе BERT, в частности JinaBERT, которая включает симметричный двунаправленный вариант ALiBi для управления более длинными последовательностями. Изначально натренированная на наборе данных кода GitHub, эта модель была усовершенствована с помощью обширной коллекции Jina AI, содержащей более 150 миллионов пар вопросов-ответов по кодированию и пар исходных кодов docstring из различных доменов.
Сравнение jina-embeddings-v2-base-code с другими моделями встраивания Jina.
| Модель | Размер параметра | Размерность встраивания | Текст |
|---|---|---|---|
| jina-embeddings-v3 | 570M | гибкий размер встраивания (по умолчанию: 1024) | многоязычные встраивания текста; поддерживается 94 языка в целом |
| jina-embeddings-v2-small-en | 33M | 512 | монолингвальных вкраплений на английском языке |
| jina-embeddings-v2-base-en | 137M | 768 | английских одноязычных вкраплений |
| jina-embeddings-v2-base-zh | 161M | 768 | Китайско-английские двуязычные вкрапления |
| jina-embeddings-v2-base-de | 161M | 768 | Немецко-английские двуязычные вкрапления |
| jina-embeddings-v2-base-code | 161M | 768 | Английский и языки программирования |
Как создавать вкрапления с помощью jina-embeddings-v2-base-code
Существует два основных способа создания векторных вкраплений:
- PyMilvus: Python SDK для Milvus, который легко интегрирует модель
jina-embeddings-v2-base-code. - Библиотека SentenceTransformer: библиотека Python `sentence-transformer.
После создания векторных вкраплений их можно хранить в векторной базе данных, например Zilliz Cloud (полностью управляемая векторная база данных на базе Milvus), и использовать для поиска семантического сходства.
Вот четыре основных этапа:
- Зарегистрируйтесь для бесплатной учетной записи Zilliz Cloud.
- Настройте бессерверный кластер и получите Публичную конечную точку и ключ API.
- Создайте коллекцию векторов и вставьте в нее свои векторные вкрапления.
- Запустите семантический поиск по сохраненным вкраплениям.
Создание вкраплений с помощью PyMilvus и вставка их в Zilliz Cloud для семантического поиска
from pymilvus.model.dense import SentenceTransformerEmbeddingFunction
из pymilvus import MilvusClient
ef = SentenceTransformerEmbeddingFunction("jinaai/jina-embeddings-v2-base-code", trust_remote_code=True)
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 documentation](За подробностями обращайтесь к нашей документации PyMilvus Embedding Model documentation.).
Создание вкраплений с помощью библиотеки SentenceTransformer и вставка их в Zilliz Cloud для семантического поиска
from sentence_transformers import SentenceTransformer
из pymilvus import MilvusClient
model = SentenceTransformer("jinaai/jina-embeddings-v2-base-code", trust_remote_code=True)
docs = [
"Искусственный интеллект был основан как академическая дисциплина в 1956 году",
"Алан Тьюринг был первым человеком, который провел серьезные исследования в области искусственного интеллекта",
"Тьюринг родился в Майда-Вейл, Лондон, и вырос на юге Англии".
]
# Генерируем вкрапления для документов
docs_embeddings = model.encode(docs, normalize_embeddings=True)
запросы = ["запрос: Когда был основан искусственный интеллект",
"query: Wo wurde Alan Turing geboren?" ]
# Генерируем вкрапления для запросов
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=768,
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"])
- Введение в модели Jina Embedding v2
- Что такое jina-embeddings-v2-base-code
- Как создавать вкрапления с помощью jina-embeddings-v2-base-code
Контент
Беспрерывные AI рабочие процессы
От встраиваний до масштабируемого AI поиска—Zilliz Cloud позволяет вам хранить, индексировать и извлекать встраивания с непревзойденной скоростью и эффективностью.
Попробуйте Zilliz Cloud Бесплатно

