Yandex CloudCompatible with Milvus 2.6.x
Topik ini menjelaskan cara mengonfigurasi dan menggunakan fungsi embedding Yandex Cloud di Milvus.
Pilih model embedding
Milvus mendukung model vektorisasi teks Yandex Cloud AI Studio melalui penyedia yc. Pada parameter Fungsi, atur ` model_name ` ke URI model Yandex Cloud yang harus dipanggil oleh Milvus.
Misalnya, Yandex Text Embeddings untuk dokumen menggunakan URI model seperti emb://<folder_ID>/text-search-doc/latest dan mengembalikan vektor berdimensi 256. Untuk URI model dan dimensi yang tersedia, lihat Model vektorisasi teks.
Konfigurasikan kredensial
Milvus harus mengetahui kunci API Yandex Cloud Anda sebelum dapat meminta embeddings. Anda dapat mengonfigurasi kunci API di milvus.yaml atau melalui variabel lingkungan.
Opsi 1: Berkas konfigurasi
Simpan kunci API Anda di milvus.yaml dan arahkan penyedia Yandex Cloud ke label kredensial.
# milvus.yaml
credential:
yandex_apikey:
apikey: <YOUR_YC_API_KEY>
function:
textEmbedding:
providers:
yc:
credential: yandex_apikey
# url: https://llm.api.cloud.yandex.net/foundationModels/v1/textEmbedding
Opsi 2: Variabel lingkungan
Jika tidak ada kredensial yang sesuai yang dikonfigurasi di milvus.yaml, Milvus dapat membaca kunci API Yandex Cloud dari variabel lingkungan berikut:
Variabel |
Wajib? |
Deskripsi |
|---|---|---|
|
Ya |
Kunci API Yandex Cloud yang digunakan oleh layanan Milvus untuk memanggil Yandex Cloud AI Studio. |
Gunakan fungsi embedding
Setelah kredensial dikonfigurasi, tentukan skema dengan bidang teks masukan dan bidang vektor keluaran, lalu tambahkan Fungsi embedding Yandex Cloud ke skema tersebut.
from pymilvus import MilvusClient, DataType, Function, FunctionType
client = MilvusClient(uri="http://localhost:19530")
schema = client.create_schema()
schema.add_field("id", DataType.INT64, is_primary=True, auto_id=False)
schema.add_field("document", DataType.VARCHAR, max_length=9000)
schema.add_field("dense", DataType.FLOAT_VECTOR, dim=256)
text_embedding_function = Function(
name="yandex_cloud_embedding",
function_type=FunctionType.TEXTEMBEDDING,
input_field_names=["document"],
output_field_names=["dense"],
params={
"provider": "yc",
"model_name": "emb://<folder_ID>/text-search-doc/latest",
"credential": "yandex_apikey",
"dim": "256",
},
)
schema.add_function(text_embedding_function)
Parameter khusus Yandex Cloud
Parameter |
Wajib? |
Deskripsi |
Nilai / Contoh |
|---|---|---|---|
|
Ya |
Penyedia model embedding yang akan digunakan. |
|
|
Ya |
URI model Yandex Cloud yang akan dipanggil. |
|
|
Tidak |
Label kredensial yang didefinisikan di bagian tingkat atas |
|
|
Tidak |
Dimensi vektor keluaran. Jika diatur, nilainya harus sesuai dengan dimensi bidang vektor keluaran. |
|
Langkah selanjutnya
Setelah mengonfigurasi fungsi embedding, lihat Ikhtisar Fungsi Embedding untuk panduan mengenai pembuatan indeks, penyisipan data, dan menjalankan pencarian semantik.