Feed on
Posts
Comments
Email訂閱

橘色移動 | 親友

(搭高鐵南下)

前幾天與爸媽聊天時,不知道聊到什麼讓老媽提起很久沒坐火車了。我因此想到原本周末的開車出遊或許可以改成搭乘高鐵(為何不是台鐵?因為火車站周邊停車不方便)。如果搭乘高鐵,又以到高雄最為快速便捷,因為只要15分鐘就可以到達高鐵左營站,且可轉乘台鐵或高捷到高雄各處去玩。就像十年前我常常帶著當時未滿六歲的兩個小孩進行「三鐵親子遊的創意與合聲的嘗試」,在兩種以上的交通工具進行轉乘,搭乘鐵道的過程,本身也就是旅行的目的;也因此真的到過許多平時比較少去的轉運站,如岡山、鳳山。

主意已定,首先是要找出兩老的一卡通敬老卡,但怎麼找都只找到老爸的;不過記得當初兩個老人家的敬老卡是同時辦的?有可能是當年老媽搭乘高捷時還沒滿65歲。老媽一直記得的是當時我家兩個小孩雖然年紀小卻已經會帶阿公阿嬤坐捷運旅行,但當時有可能是使用老妹給的一卡通。

這次策畫的鐵道旅行大概是這樣,開車到高鐵台南站,搭高鐵到左營站,轉高捷紅線,搭兩站到巨蛋站出來,走路到妹妹家;若老妹沒空,就再原路線回返台南。這次要實驗的就是這樣的接駁,對帶老人家出遊要注意哪些事情?行程會不會太趕?

繼續閱讀 »

This Post is under 軟體開發

前文以 php curl 來實作在網站伺服器端呼叫 Google Gemini 生成內容(generateContent),但網路上已經有前人把呼叫的細節與資料結構包裝成套件,呼叫Google Gemini API可以非常直覺,用幾行程式碼就打發了;本文使用套件跟前文的差別在於原本以curl呼叫API的部分被封裝程短短的兩行程式碼(以粗體字顯示)。此次要介紹的套件是 google-gemini-php,從安裝到使用。以下是在Windows作業系統安裝的注意事項:

  1. 使用 composer 安裝google-gemini-php套件,若不熟 composer ,可參考這一篇先安裝composer。注意 composer 安裝好了之後會需要 php,如果不想在系統 path 設置 php 路徑,可到 composer 安裝目錄(如 C:\ProgramData\ComposerSetup\bin) 修改 composer.bat,將最後一行:php “%~dp0composer.phar” %* 的 php 前頭加上你所安裝的 php 路徑,如C:\php8.3\bin\php “%~dp0composer.phar” %*
  2. 注意執行 composer 的Console(命令提示字元)其目錄需在你專案的目錄(或是你所設定的lib目錄)之下,以本文來說是在本地電腦測試網站根目錄下的lib目錄,執行 composer,爾後在程式碼的第一行將之include進來,如require ‘/lib/gemini-api-php/vendor/autoload.php’;。以後要發布到外部網站(如冬烘居)時,可以整個壓縮打包,FTP到遠端網站對應的目錄,再解壓縮即可。
  3. 套件可用的Model都宣告在 /vendor/gemini-api-php/client/src/Enums/ModelName.php。不過就在2024/7/12,Google已將其中的 gemini-pro-vision 廢棄,改用 gemini-1.5-flash。 截至本文發表之時,gemini-1.5-flash 尚未加入到 enum ModelName 之中,所以如果想使用 gemini-1.5-flash,可自行修改加入即可,如加入這一行:case GeminiFlash = ‘models/gemini-1.5-flash’;

繼續閱讀 »

Tags:

台南行腳

(重建曾文溪複線大橋記)

上個禮拜本來要跟爸媽去川文山,但東方天空雲層太厚,感覺雨就快要落下來,於是退回到西邊的黃金海岸,走了小美軍海濱步道。本周再度前往川文山,但最近都這樣,本來白日大晴天到了下午四點多天色就快速轉為黯淡,標準的夏日午後對流雲系旺盛。不過今日感覺天雖陰沉但有可能不會下雨,於是還是往川文山去了。或許是有一段時間沒去了,以為之前都是從國道一號轉84號快速道路(但其實是國道三號),所以這回就從西庄交流道下來到171市道,經過一處芒果樹綠色隧道。

來到川文山農場停車場停好車已經接近五點了,附近的攤販正在賣力地招攬為數不多的客人,爸媽也去一小貨車看了水蜜桃鳳梨與嬌小的木瓜。試吃了小木瓜,但老媽覺得水蜜桃鳳梨有點意思。這時我還在補拍台鐵第二代曾文溪橋紀念碑-「重建曾文溪複線大橋記」,這塊紀念碑原本位於第二代曾文溪橋北岸鐵道旁,為避免受到第三代曾文溪橋工程損毀而遷移至此。我來到小貨車與爸媽會合後,看他們還沒拿定主意要不要買,便說散步回來再買好了。然而老闆說,他等一下就要回去煮麵給兒子吃,「要不,你們先買了,放在旁邊?」

爸媽又來到另一頭的攤販對水果與蔬菜品頭論足一番,菜瓜一條50;老媽說家附近菜市場,兩條50。至於芒果有「黑香」的。最後我們還是都沒買,依然用「散步回來再看看。」做藉口先走一步。等到回來已經是半小時之後,快要五點半了,攤販果然都收了。只剩下一攤賣ㄅㄨˊ仔的,一條20。我有意交關一下,但老媽無情說不必了。附帶一提,賣芒果的阿嬤看到我陪爸媽出來遊山玩水,還稱讚我一番。

繼續閱讀 »

Tags:

This Post is under 軟體開發

「人工智慧」不是新奇的玩意,但近一兩年這個詞語如同「奈米」一詞被濫用。外界因為台灣電子大廠供應了許多AI伺服器的硬體而誇口說台灣是AI中心,但也有明眼人點出台灣其實只是AI「代工」中心(台灣是AI中心?童子賢:不要飄飄然 是少了代工二字)。現在的AI(尤其是生成式AI)就是人工智慧嗎?請先通過圖靈測試再說,不然只是「一本正經地胡說八道」。

「人工智慧」的極致應如愛因斯坦所說:「專家不過是訓練有素的狗」,但終究無法像人類那樣「對美和良善有生動的感受」;不過愛因斯坦的話恰巧點出「人工智慧」幾個必備重點:「專家的專業知識」(大量領域知識-domain knowledge)、「訓練有素」(機器學習、深度學習),以及像「狗」一樣永遠對人類忠誠的設定。台灣的強項主要在第二項的「一小部分」-提供機器深度學習的算力(藉由AI伺服器);至於學習的演算法發展(BERTGPT…),以及大量訓練後的成果-模型(model,用思維模式來形容生成式AI model更貼切),台灣則幾乎無能為力。我們可以把訓練「人工智慧」類比成「小孩養成」,如胡適所說:「種種從前,都成今我。 莫更思量更莫哀,從今後要怎麼收穫,先怎麼栽 !」我們可以想像從小注重孩子教育以及放牛吃草所養成的小孩未來的發展絕對是完全不同。

而落後多年之後,要靠「惡補」趕學習進度,就得付出代價請「補教名師」來加強。在「人工智慧」領域所謂的「補教名師」就是國外軟體大廠已經訓練好的「模型」(model),這些訓練有素的模型已經能透過網路來提供服務了,如Open AIGoogle Gemini…。本文就是要介紹如何透過熟悉的程式語言(以本部落格來說是PHP)開發接取Google Gemini的生成式AI服務。

繼續閱讀 »

Tags:

台南行腳

(喜樹沙灘入口附近的公廁與淋浴設施-如果沒專人維護,髒亂就難免了)

周末孝親行程本來想去有幾年時間沒去的川文山,但車開上了86號快速道路後,東方天空越來越暗,有風雨欲來之勢,這幾天都是這種午後雷陣雨的天氣;由於川文山路程稍遠,想把目的地改為虎形山,但雨滴竟然開始飄落擋風玻璃,於是馬上轉換目的地到西邊尚未下雨的地方,從高鐵閘道路口下86,又重上86,一直開到濱海公路出口,左轉,馬上就是黃金海岸停車場,沒有多做猶豫,就開進去停車。直到此時,我才決定等一下就從喜樹沿著海濱步道走往小美軍,這是上個禮拜因為天氣炎熱而放棄的路線。所以,我是不是很會通權達變?

停好車,往喜樹方面走,爸媽都覺得奇怪,怎麼不是往鯤喜灣遊客中心呢?我說,偶而也得換換口味啊。直到走入喜樹沙灘海邊的水泥步道,爸媽也才終於了解我是想走上禮拜沒走完的路,只不過方向相反而已。

由停車場上到堤岸後往南,經過雙博自行車道30K路標,86號快速道路出口,不多久就來到喜樹沙灘的入口。此處沙灘也常常有人在此踏浪、放風箏,路口也曾有飲料與香腸攤車,以前有幾次我跟小孩從喜樹老街旁(喜樂路、喜樹路340巷)騎腳踏車穿出來過濱海公路就是只到這裡的海灘玩,因為比起南邊不遠的遊客中心那邊,此處海灘比較少人。

不過我們大多只是打發晚餐前的一兩個小時所進行的輕鬆騎車,所以竟然沒有留下任何遊記。其實當年我們騎這條路線的其中一個重要原因是明興路619巷口有間「茶的魔手」,通常我們都會在那裏帶杯飲料再繼續騎到喜樹海邊玩沙,這是兩個小孩都還在國小階段的事了;如今小孩早就已經不跟騎了,而這才不過兩年多以前的事。難怪有人說跟小孩相處的美好時光只有十年而已。

繼續閱讀 »

Tags: ,

Older Posts »