This Post is under 軟體開發
前文 使用網路套件 – gemini-api-php 來實作在網站伺服器端呼叫 Google Gemini 生成內容(generate content),本文將繼續說明「文字嵌入(text embedding)」的實作。「嵌入(embedding)」在人工智慧領域非常重要,可以想像是把一個物件(object,實體物件或虛擬的概念皆可)轉換成多維度空間的向量(以gemini 來說,維度是768);轉換成向量後才可以被電腦程式當作輸入項以進一步套用到人工智慧的演算法模式再產生各種應用的輸出(如分類…)。
舉個例子來說,如果要說明一個人所處的地理位置,可以用經緯度來表示,這是二度空間;但如果該處是101大樓,可以再加上高度或樓層來表示更精確的所在,這是三度空間;如果又加上日期時間以說明是在何時到過該樓層,這是四度空間。那有沒有五度(或是更高維的)空間呢?想必有(但處在低維度的,通常想像不出高維度的世界模樣)。有人說人的心理狀態也是一個維度,譬如「我的心遺留在愛情海」,現實現地身體與心靈同時處在不同的三度空間。
或許,神鬼也是處在比我們更高維度的空間,祂想讓我們看到就會出現。我則猜想,每對時間的一次微分就會增加一個維度(譬如速度、加速度…)。關於觀察者的心理狀態與時間的感知,可參考愛因斯坦美女與火爐的巧妙譬喻。總之,這裡想表達的是,如果一個物件能轉成更高維度向量就會被越精準的描述。於是兩個物件是不是處在相近的地方,只要比對這兩個物件的向量之餘弦相似性即可。又譬如「某個人的『頻率』(可能是性情、嗜好…)跟你相近,所以你們很合得來」、「比對『DNA』來確認血緣關係」,這裡所說的『頻率』、『DNA』都必須是很具體的基本單元所組合而成,因此也都可以用來表示一種總和概念(concept)或是一個獨立個體。





