使用 google-gemini-php 實作 textEmbedding 比對文句相似度
Posted in 軟體開發 on 8 月 2nd, 2024
說明「文字嵌入(text embedding)」的實作。「嵌入(embedding)」在人工智慧領域非常重要,可以想像是把一個物件(object,實體物件或虛擬的概念皆可)轉換成多維度空間的向量(以gemini 來說,維度是768);轉換成向量後才可以被電腦程式當作輸入。
閱讀,旅行,玩創意-新冬烘先生運動
Posted in 軟體開發 on 8 月 2nd, 2024
說明「文字嵌入(text embedding)」的實作。「嵌入(embedding)」在人工智慧領域非常重要,可以想像是把一個物件(object,實體物件或虛擬的概念皆可)轉換成多維度空間的向量(以gemini 來說,維度是768);轉換成向量後才可以被電腦程式當作輸入。
Posted in 軟體開發 on 7 月 17th, 2024
網路上已經有前人把呼叫的細節與資料結構包裝成套件,呼叫Google Gemini API可以非常直覺,用幾行程式碼就打發了;本文使用套件跟前文的差別在於原本以curl呼叫API的部分被封裝程短短的兩行程式碼。此次要介紹的套件是 google-gemini-php,從安裝到使用。
Posted in 軟體開發 on 7 月 11th, 2024
落後多年之後,要靠「惡補」趕學習進度,就得付出代價請「補教名師」來加強。在「人工智慧」領域所謂的「補教名師」就是國外軟體大廠已經訓練好的「模型」(model),這些訓練有素的模型已經能透過網路來提供服務了,如Open AI、Google Gemini…。本文就是要介紹如何透過熟悉的程式語言(以本部落格來說是PHP)開發接取Google Gemini的生成式AI服務。
Posted in 軟體開發 on 4 月 11th, 2024
在前文實作了一個Say Hello的Controller,但其實這是一個RESTful API的Controller,離我們真正想要的MVC軟體架構還有一大段距離。因此本文將進一步實作MVC中的 “View”與”Controller”,以及它們之間的資料傳遞。同樣地,在參考網路資料時,因為開發軟體不斷更新與這些資料在撰寫時的時間落差仍然會讓後繼的開發者踩到一些坑
Posted in 軟體開發 on 3 月 21st, 2024
目的:在自學以Java開發Web應用程式時,我們會在網路上搜尋參考資料,但免不了仍會遇到很多坑。必須克服了這些坑才會好不容易看到HelloWorld。這些坑的來源是:第一,幾乎沒有單一份文件可以完全滿足你的需求,因此必須看很多文件,而這些文件可能描述的部分彼此難以串接,這難以串接的部分就是坑的所在。第二是,開發與執行環境常常在更新,這些文件所描述的可能半年之後就過期了,又產生了另一種坑。因此本文也只是將目前所整理到的相關資料做個統整,可以在目前為止順利地開發出一個Java Web MVC 應用程式。
目標:使用 IntelliJ IDEA Community 建立第一個 Spring Boot Web 應用程式,佈署到 Java Servlet Container(此例為Tomcat),以瀏覽器開啟,如下圖。意義是使用免費的Java開發環境,開發MVC web應用程式。