OpenAI / text-embedding-3-small
Milvus & Zilliz Cloud Integrated
Задача: Встраивание
Модальность: Текст
Метрика сходства: Любой (нормализованный)
Лицензия: Собственные
Размерности: 1536
Максимальное количество входных токенов: 8191
Цена: $ 0,02/1M токенов
Введение в text-embedding-3-small
text-embedding-3-small - это небольшая модель встраивания текста OpenAI, создающая вкрапления с 1536 размерами. По сравнению с другими моделями встраивания текста OpenAI, такими как text-embedding-ada-002 и text-embedding-3-large, text-embedding-3-small является наиболее экономичной моделью с повышенной точностью и эффективностью. Она отлично подходит для приложений векторного поиска общего назначения.
Давайте вкратце рассмотрим некоторые основы.
| Модель | Размеры | Max Tokens | Модель MIRACL avg | METB avg | Цена |
|---|---|---|---|---|---|
| text-embedding-3-large | 3072 | 8191 | 54.9 | 64.6 | $0.13 / 1M tokens |
| text-embedding-ada-002 | 1536 | 8191 | 31.4 | 61.0 | $0.10 / 1M tokens |
| text-embedding-3-small | 1536 | 8191 | 44.0 | 62.3 | $0.02 / 1M tokens |
Как генерировать векторные вкрапления с помощью text-embedding-3-small
Существует два основных способа создания векторных вкраплений:
- PyMilvus: Python SDK для Milvus, который легко интегрирует модель
text-embedding-3-small. - OpenAI Embedding: Python SDK, предлагаемый OpenAI.
После того как векторные вкрапления сгенерированы, их можно хранить в Zilliz Cloud (полностью управляемый сервис векторных баз данных на базе Milvus) и использовать для поиска семантического сходства. Вот четыре ключевых шага:
- Зарегистрируйтесь для получения бесплатной учетной записи Zilliz Cloud.
- Настройте бессерверный кластер и получите Публичную конечную точку и ключ API.
- Создайте коллекцию векторов и вставьте в нее свои векторные вкрапления.
- Запустите семантический поиск по сохраненным вкраплениям.
Генерировать векторные вкрапления с помощью PyMilvus и вставлять их в Zilliz Cloud для семантического поиска
из pymilvus import model, MilvusClient
OPENAI_API_KEY = "your-openai-api-key"
ef = model.dense.OpenAIEmbeddingFunction(
model_name="text-embedding-3-small",
api_key=OPENAI_API_KEY,
)
# Генерируем вкрапления для документов
docs = [
"Искусственный интеллект был основан как академическая дисциплина в 1956 году",
"Алан Тьюринг был первым человеком, который провел серьезные исследования в области искусственного интеллекта",
"Тьюринг родился в Майда-Вейл, Лондон, и вырос на юге Англии".
]
docs_embeddings = ef.encode_documents(docs)
# Генерируем вкрапления для запросов
запросы = ["Когда был основан искусственный интеллект",
"Где родился Алан Тьюринг?"]
query_embeddings = ef.encode_queries(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.
Генерировать вкрапления с помощью OpenAI's Python SDK и вставлять их в Zilliz Cloud для семантического поиска
from openai import OpenAI
from pymilvus import MilvusClient
OPENAI_API_KEY = "your-openai-api-key"
client = OpenAI(api_key=OPENAI_API_KEY)
# Генерируем вставки для документов
doc_response = client.embeddings.create(
input=[
"Искусственный интеллект был основан как академическая дисциплина в 1956 году",
"Алан Тьюринг был первым человеком, который провел серьезные исследования в области искусственного интеллекта",
"Тьюринг родился в Майда-Вейл, Лондон, и вырос на юге Англии".
],
model="text-embedding-3-small"
)
doc_embeddings = [data.embedding for data in doc_response.data]
# Создание вкраплений для запросов
query_response = client.embeddings.create(
input=["Когда был основан искусственный интеллект",
"Где родился Алан Тьюринг?"],
model="text-embedding-3-small"
)
query_embeddings = [data.embedding for data in query_response.data]
# Подключение к облаку 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=1536,
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"])
Для получения дополнительной информации обратитесь к OpenAI's Embedding Guide.
- Введение в text-embedding-3-small
- Как генерировать векторные вкрапления с помощью text-embedding-3-small
Контент
Беспрерывные AI рабочие процессы
От встраиваний до масштабируемого AI поиска—Zilliz Cloud позволяет вам хранить, индексировать и извлекать встраивания с непревзойденной скоростью и эффективностью.
Попробуйте Zilliz Cloud Бесплатно

