只在交界講話
一趟最喘的時候不說話,只在開始前和結束時各說一次,而且結束那句已包含下一趟。
「這趟 4 分 08,就在目標裡。下一趟保持。」
賽車隊裡,車手只負責開。牆邊有一個工程師盯著遙測、賽道和天氣,把策略算出來, 然後用無線電丟兩句話進他的耳朵——不是唸數字,是「現在該做什麼」。
Pace4Me 把這件事搬到馬拉松上。手機在腰包裡讀 GPS、心率帶、坡度、風和你去年的成績, 手機上的規則決定什麼時候該開口, 教練決定要說什麼, 用中文直接講進你的骨傳導耳機。你只要跑。
跑步畫面,正在執行今天從 Garmin 讀回來的課表(熱身那一段)。頂端那排小字是遙測狀態:GPS ±5 公尺、心率、正在說話、喚醒詞待命。 這一張是用臺北馬賽道重播的模擬跑(10×),畫面上的「模擬 10×」就是在說這件事,不是一場真的比賽。
手機上的規則決定什麼時候開口,語言模型只負責說什麼。
GPS、心率帶、坡度、風、你過去的成績,全部在手機上。
手機 · 前景服務規則決定該不該開口。安靜是預設值。
規則引擎 · 離線可用規則決定開口後,教練用一兩句中文說。沒網路時改用手機內建語音。
即時語音 · 離線備援耳機長按、喚醒詞或按住說話,都能直接問。
耳機 · 喚醒詞 · 按住說話一趟間歇只有兩個開口的時機——起跑前和結束時;一趟 12 秒的坡衝刺,中途永遠不會被打斷。
(頁面上的引號句是示範說法,不是逐字稿。)
出門前先選今天是賽事還是訓練,教練的語氣和能說的東西跟著換。
目標配速可以留空——留空就不追配速,教練只看力氣、地形和風。
讀回 Garmin 或 COROS 行事曆裡今天的課表,逐段執行:報趟數、換目標、報成績。
二十個步驟折回成一句,教練會說「8 趟」,不會唸清單。游泳課表讀得到,但不會拿去帶跑。
跑步時的課表列。「這趟 --:--」是這一段才剛開始、GPS 還量不出來:寧可留白,也不給不準的數字。
一趟最喘的時候不說話,只在開始前和結束時各說一次,而且結束那句已包含下一趟。
「這趟 4 分 08,就在目標裡。下一趟保持。」
太短的段落不報距離、不催配速,短的一趟不會被打斷。
課表裡讀不懂的段落,就沒有配速目標,不會編一個。
連結哪一支,狀態、課表和過去的跑步就從那一支讀,隨時可切換。Android 和 iPhone 一樣。
睡眠、HRV、身體能量、VO2max、今天的課表;往年比賽可以變成影子跑者。
帳號密碼直接從手機送給 Garmin,不經過 Pace4Me 的伺服器。
訓練負荷、HRV、今天的課表;過去的跑步可以設成影子跑者。
手機直接向 COROS 讀取,伺服器看不到你的帳號。
「紀錄」頁把手錶過去一年的跑步和騎乘分成兩張卡,每頁 10 筆,可以搜尋名稱、地點或日期;COROS 的心率區間也讀得到。
只用手機的 GPS 和心率帶就能開始,少的只是手錶資料。
同樣的配速,上坡逆風和下坡順風差很多。教練先看前面的路,再給建議。Android 和 iPhone 一樣。
內建五條賽道:臺北馬、渣打臺北公益馬、長榮航空城市觀光馬、田中馬、新竹城市馬,在課表頁的「路線」下拉選。坡和折返提前預告;補給站目前只有臺北馬,其他四條確認官方路線圖後補上。
氣溫、體感、濕度,以及投影到你行進方向的逆風分量。沒載入賽道也有風。
把坡度和風換算掉之後,同樣力氣在平路無風的配速:4:35 爬 3% 的坡,是 4:12 的力氣。
「路線」下拉選單最下面的「新增路線…」:選一個路線檔(賽事官網、Garmin Connect、Strava 都能匯出 GPX),或用手錶上跑過的一趟; 在 LINE、檔案或瀏覽器點路線檔,也能直接用 Pace4Me 開啟。填上名稱、官方距離和水站在幾公里(例如 5、7.5、10), 爬坡和折返會自動找出來。自己加的路線只存在這支手機上。
賽前:賽道爬坡、折返與補給站,海拔剖面一眼看完。
賽前:對手往年比賽可從 Garmin 匯入,GPX 只存在手機裡。
賽前:狀態睡眠、HRV、身體能量會交給教練,沒睡好前段就保守。
匯入一場過去的比賽,全程有「影子跑者」告訴你領先或落後幾秒;有名字的路段結束時跟你的最佳成績比一次。騎車也有影子車手:在「紀錄」的手錶騎乘紀錄選一趟,同一條路線每 5 公里告訴你快或慢幾秒。
影子帶著當時的心率,教練分得出「狀況好」和「衝太快」。比去年慢,它不會責備你。
「你現在比去年快了大約 35 秒,這在起跑段有點太快了。心率跟去年差不多,先收一點。」
進入路段給一句戰術提醒,出來報成績,破個人最佳只慶祝一句。
手機鎖著、塞在腰包裡,一樣問得到。三條路:
Pace4Me 註冊成系統數位助理,接住長按那一下:不亮螢幕、不用解鎖、音樂繼續放。
辨識完全在手機上,聲音不離開手機。
畫面上一個大按鈕,按住問,放開聽。可以打斷正在說話的教練。
在「今天怎麼跑」選自行車,教練就換成看功率:30 秒功率、NP、IF、迴轉、心率和做功, 再加上 W′ 無氧儲備。設了 FTP 和目標強度,它才會講目標瓦數;沒設,它只報數字,不替你猜一個。
Android 和 iPhone 都能騎:標準藍牙功率計(踏板、曲柄、蜘蛛,例如 Magene P515)直接配對;每 10 分鐘報一次功率、途中查天氣、 可以暫停;問教練「現在幾瓦」會回答當下的數字。開始前如果心率帶或功率計沒連上,會先問你要不要配對。
Garmin、COROS 的自行車課表也能帶;跑步課表會標示「非騎車課表,無法帶騎」。
模擬騎乘(30 倍速),不是真的在騎。目標功率來自課表當下這一段。
手機留在腰包、不用解鎖、不用看螢幕。喚醒詞在風聲和喘氣聲裡較不靈敏。
1. 耳機配對好;在 Shokz App 把想用的鍵設成「語音助理」。
2. Pace4Me →「更多」→「耳機長按叫教練」→ 選 Pace4Me。
3. 跑步中長按,聽到提示音就直接問。
選了之後全系統的數位助理都換成 Pace4Me,可隨時在系統設定改回,也可開「只在跑步中接手」。
任何能長按叫出語音助理的藍牙耳機都可以,做法相同。沒有這個鍵的話,用喚醒詞或「按住說話」。
iOS 不讓 App 取代 Siri,所以長按還是 Siri。改用單按播放/暫停鍵: 「更多」→「耳機按鍵叫教練」打開後,開跑時會聽到三聲提示音,代表按鍵交給 Pace4Me 了。按一下、聽到上升音就說, 說完停一下就會自動送出(聽到下降音)。跑步期間其他 App 的音樂會暫停。
每公里分段、一趟一趟的結果、完整的教練對話,都可以往回翻。
每公里的配速、心率和跟目標差幾秒;不足一公里照實標成不完整。
課表逐段列出配速、心率和跟目標的差距;量不出來的寫「太短,無法測量」。
每一句都標著公里數和觸發原因。
每公里分段。橘色那一公里是八趟坡衝刺加走回起點;最後 0.42 公里標成 9.42K。
同一趟的對話共 58 則。第二則是教練承認麥克風被腰包蓋住、聽不到。
朋友不用登入、不用裝 App。連結固定,發一次就好;沒在跑時只顯示「目前沒有在跑步」。
LiveTrack 已經做好地圖;這裡補的是它沒有的:跑到第幾趟、目標對實際、跟影子差幾秒,還有(如果你願意)教練說了什麼。
設定畫面。代碼已遮蓋——它等於鑰匙。
朋友看到的頁面。示範畫面,用測試資料產生。
路線、距離、配速、心率。
加上第幾趟、目標配速、跟影子差幾秒。
加上教練說的每一句。每一趟要自己再打開一次。
傳出去的資料裡沒有你說的話的欄位,「我肚子怪怪的」不會出現在那一頁。
顯示的是手機最後送出的數值和時間,不往前推算,斷線時看起來也不會像出事。
耗電大戶是行動網路本身,所以整場只開一條連線,約每 12 秒送一批,斷線時排隊補送。
填上自己的金鑰,教練就用你的 OpenAI 帳戶說話、費用由你負擔。金鑰只存在手機裡,直接連 OpenAI。沒有金鑰一樣能跑,只是教練只說離線的固定句子。
Pace4Me,其他維持預設,按 Create。sk- 開頭的金鑰。它只會顯示這一次,關掉就看不到了,請立刻複製。不要把金鑰貼到群組或公開的地方。外流的話,到 API keys 刪掉那一把,再建新的。
Pace4Me 還在測試中。試用之後有任何問題或建議,都很歡迎告訴我們:iPhone 在 TestFlight 的 Pace4Me 頁面按「傳送意見」(可以附上截圖);Android 請直接告訴邀請你的人。
1. 在 App Store 安裝 Apple 官方的 TestFlight。
2. 用 iPhone 點下面的按鈕,按「接受」,再按「安裝」。
需要 iOS 17 以上。之後有新版本,TestFlight 會通知你更新。
1. 用 Android 手機點下面的按鈕,填你的 email,加入測試。
2. 收到 Firebase 的邀請信後按「開始使用」,照指示安裝 App Tester,再從 App Tester 安裝 Pace4Me。
3. 手機若問「允許安裝不明來源的應用程式」,請允許 App Tester(找不到的話,在設定裡搜尋「不明」)。
需要 Android 10 以上。之後有新版本,App Tester 會通知你更新。
會編數字的工程師比沒有更糟。以下幾條寫進了程式和教練指令。
一場 8 趟 12 秒的坡衝刺裡,有兩趟被記成 0 公尺和 5.6 公尺,換算成 17:04 的配速。GPS 在 12 秒內解析不出這段距離。
所以這種段落不給配速,該出現的那一格寫「太短,無法測量」,教練改講力氣、動作、呼吸。
手機 GPS 會偏,段落越短越不準,錯的常常是我們。
教練承認不一樣、說一次自己看到的、然後把你帶回跑步;不吵、不替你的手錶編理由。你堅持你的數字,就照你的數字帶。
「好,我這邊顯示每公里 5 分 35,可能有誤差。我們以你的感覺為準,維持現在的力氣。」
第 8 趟衝刺開始時教練說的話:沒有配速、沒有目標區間,因為那些數字不存在。
趟數不自己數。一律照資料裡的欄位,不累加、不估。
資料裡沒有的課表內容不講。
目標不可能時不假裝。要改目標,得你自己開口。
安全高於一切。心率過高就放慢或走路,不做醫療診斷。