Gemini API 中的嵌入服務會產生字詞、詞組和語句最先進的嵌入功能。產生的嵌入隨後可用於自然語言處理工作,例如語意搜尋、文字分類和分群。本頁說明嵌入功能,並重點介紹嵌入服務的一些重要用途,協助您快速上手。
什麼是嵌入?
文字嵌入是一種自然語言處理 (NLP) 技術,可將文字轉換為數值向量。嵌入功能會擷取語意含義和背景資訊,進而導致具有相似意義的文字在嵌入較接近嵌入。舉例來說,「I take my dog to the vet」(我帶狗去) 和「I 帶 my cat to the vet」(我帶貓去) 這句話在向量空間中,內嵌的嵌入會彼此相近,因為兩者都是描述相似的背景資訊。
這點很重要,因為可以解鎖多種可在向量上作業的演算法,但無法直接處理文字。
您可以使用這些嵌入或向量來比較不同文字,並瞭解兩者之間的關係。舉例來說,如果「cat」和「dog」這兩個文字的嵌入相近,您就能推斷這些字詞在意義或上下文中,或兩者兼具。這項功能可讓您使用下一節所述的各種用途。
用途
文字嵌入功能支援多種自然語言處理用途。例如:
- 資訊擷取:目標是在一段輸入文字中,擷取語意相似的文字。各種資訊檢索系統都支援各種應用程式,例如語意搜尋、回答問題或摘要。如需範例,請參閱文件搜尋筆記本。
- 分類:您可以使用嵌入來訓練模型,將文件分類。舉例來說,如要將使用者留言歸類為負面或正面,您可以使用嵌入服務取得每則留言的向量表示法以訓練分類器。詳情請參閱 Gemini 分類器範例。
- 分群:比較文字向量可顯示兩者的相似或不同程度。這項功能可用於訓練將類似文字或文件分組的分群模型,以及偵測資料中的異常狀況。
- Vector DB:您可以將產生的嵌入儲存在向量資料庫中,提高 NLP 應用程式的準確率和效率。請參閱本頁,瞭解如何使用向量資料庫將文字提示轉譯為數字向量。
彈性嵌入
自 text-embedding-004
起的 Gemini 文字嵌入模型提供在 768 以下的彈性嵌入大小。您可以使用彈性嵌入來產生較小的輸出維度,有機會在稍微損失效能的情況下,節省運算和儲存費用。
後續步驟
- 如果您已準備好開始開發,可以在 Python、Go、Node.js 和 Dart (Flutter) 的快速入門導覽課程中找到完整的可執行程式碼。