往右一滑,讓 AI 告訴你在聽什麼——播放頁旁邊那一頁的設計想法
- Lossic iPhone 的播放畫面往右翻一頁,有兩篇 AI 寫的短文:這位演奏者是誰、這首曲子是什麼,底下三個推薦的追問,一點就進聊天。很多人不知道——這篇就是為了這件事寫的。
- 它的隱喻是唱片內頁。串流把 liner notes 拿掉了;收藏家正是會讀內頁的人。我們想把那張紙放回口袋裡。
- 素材只有你檔案裡的 tag(用 Gemini 時加上封面),不是拿曲名去網路搜——除非你打開 Grounding with Google Search,那是給收藏裡的冷門碟準備的。所以古典樂的「演奏者」和「作曲家」會分開講,日文 tag 也會用你的語言講。
- 金鑰自備(Gemini 或 OpenRouter,免費額度就夠),存在 iOS 鑰匙圈,App 直接呼叫供應商,中間沒有 Lossic 的伺服器——跟播放器對 Google Drive 的態度一致。代價是多一步設定,我們接受。
- 一首歌只問一次,答案存在本機;追問的對話不存。它會說錯——把它當一位懂音樂的朋友,不是工具書。
它在哪裡、是什麼
在 Lossic iPhone 上播放任何一首歌,打開全螢幕播放頁,往右翻一頁。你會看到兩段文字:第一段介紹正在演奏的人(或樂團),第二段介紹這首曲子——背景、寫作年代、聽的時候可以注意什麼。段落底下有三個問題,是它猜你接下來最可能想問的;點任何一個,聊天視窗從底部滑上來,答案在幾秒後出現,你可以繼續問。
從上架到現在,我們收到不少「原來有這個」的回饋。這代表兩件事:功能本身有人喜歡,以及我們把它藏得太好。這篇筆記兩件事都談——它是怎麼想的,以及為什麼藏在那裡。
隱喻:唱片內頁
買 CD 的人有一個串流使用者沒有的儀式:拆封、抽出內頁、邊聽邊讀。誰演奏的、哪年錄的、製作人寫了什麼、這首曲子從哪裡來。串流把這張紙拿掉了——你得到一首歌的三行字:曲名、演出者、專輯。
Lossic 的目標用戶正是還在買 CD、還在 Bandcamp 付錢、還在收集現場錄音的人。他們是會讀內頁的人。所以這一頁的定位不是「AI 功能」,是把那張紙放回口袋——而且是為你手上這個檔案寫的那一張,不是平台為所有人寫的同一段簡介。
這也決定了它的語氣:一位懂音樂的朋友坐在旁邊,不是百科全書。三到五句,講重點,不確定就少講。
為什麼藏在右邊一頁,而不是一個按鈕
老實說,這是一個有代價的選擇,而這篇筆記本身就是代價的證明。
我們想保住播放頁的乾淨:封面、曲名、進度、三個按鍵。每多一顆按鈕,播放頁就少一分「就是在聽音樂」的感覺。而「翻到旁邊一頁」跟翻內頁的動作是同一個隱喻——它在那裡,你想看的時候翻過去,不想看它就不打擾你。
iOS 的分頁樣式在畫面底部留了兩個小點,那是唯一的線索。我們知道它不夠明顯;也知道如果放一顆「✨ AI」按鈕,發現率會高很多。我們還是選了乾淨。這不是最終答案——如果之後的回饋證明代價太高,我們會調整——但目前為止,我們寧可多寫一篇筆記,而不是多放一顆按鈕。
為什麼是兩篇短文,不是一篇
因為演奏者和作曲家經常不是同一個人,而且在我們的用戶的收藏裡,這是常態而不是例外。
我們自己 Drive 上有一張 Patrick Gallois 的長笛專輯:11 軌,9 位不同的作曲家,演奏者從頭到尾都是 Gallois。如果只寫一篇「關於這首歌」,它要嘛只講作曲家(那演奏者呢?你買的是他的演奏),要嘛混在一起講得都不深。所以拆成兩篇:第一篇專講演奏者——他是誰、以什麼聞名、哪個年代、什麼風格;第二篇專講曲子——背景、寫作動機、聽什麼。作曲家在第二篇裡。如果 tag 裡的 artist 看起來是一個樂團,第一篇就講樂團。
技術上,這兩篇是一次呼叫產生的,中間用一個標記分開。理由不只是省一半延遲和配額——兩篇出自同一次思考,才不會第一篇說他是冷派爵士、第二篇說這首是硬咆勃。
素材只有你檔案裡的 tag
這一頁不是拿曲名去網路上搜一段簡介貼過來。它給模型的是你這個檔案內嵌的 tag:曲名、演出者、專輯演出者、作曲家、專輯、年份。用 Gemini 時,封面圖也一起送——flash 系列是多模態的,而唱片封面上常有 tag 沒有的東西:唱片公司、版本、年代感。
這個選擇有兩個後果,一好一壞,都要說:
- 好的:它講的是「你手上這個版本」。Gallois 那張是日本 Virtus Classics 發行的,tag 是日文曲名——模型拿到的就是這些,寫出來的內頁是關於這張,不是關於「長笛名曲精選」。
- 壞的:tag 空的檔案,它就只有檔名可以看。我們測試用的 etree 現場錄音 FLAC,VORBIS_COMMENT 裡零個 tag——這種檔案的內頁會很薄,甚至猜錯。這是誠實的限制,不是 bug。用 Lossic PRO 轉錄的 CD 不會有這個問題,tag 和封面在轉錄時就寫進去了。
可選:Grounding with Google Search
用 Gemini 時,設定裡有一個開關:Grounding with Google Search。打開後,模型在寫這兩篇短文、回答追問之前,可以先查 Google 搜尋,把查到的內容當作依據。對 Lossic 的用戶,這帶來三個實際的好處:
- 冷門的東西講得準。我們的用戶收的正是模型訓練資料裡最稀薄的那一塊——小廠牌古典碟、同人音樂、絕版盤、現場錄音。沒有 grounding 時,模型對一位 1992 年 Forlane 小廠牌的長笛家可能只能講幾句籠統話,甚至把年代搞錯;有 grounding,它能找到唱片公司頁面、樂評、演奏家的官網,寫出的內頁是有出處的。
- 新鮮。模型的知識有截止日。演奏家近期的巡演、剛出的重發版、去年過世的消息——這些訓練資料裡沒有的事,查了才知道。
- 少編。「不確定就少說」的規則有了查證的手段,可以把「我不確定」變成「查到了,是這樣」——追問時尤其明顯,一個具體的年份或人名不再靠記憶。
它預設關閉,原因是兩個刻意的取捨。第一,我們希望「素材來自你的檔案」是預設行為,查網路應該是你主動要的,而不是默默發生的——開了之後,你的曲目 tag 會成為 Google 搜尋的查詢,這一步應該由你決定。第二,grounding 的請求比純生成慢一些、也算在你金鑰的配額裡。對大多數名盤,tag 加封面已經夠寫出像樣的內頁;grounding 是給你收藏裡那些「網路上幾乎沒人寫過」的碟準備的。開一次試試,你會知道自己的收藏需不需要它。
它用你的語言講,不管 tag 是什麼語言
一個實際踩到的問題:tag 是日文的專輯,模型會傾向用日文回答——因為它看到的「上下文」是日文。但讀者是你,你的語言是繁體中文。所以 prompt 裡有一條寫得很重的規則:整個回應只用讀者的語言,tag 是檔案的語言不是讀者的語言,不要跟著它走;專有名詞保持可辨認即可。
語言可以在設定裡選(跟隨系統、英文、繁中、簡中、日文、韓文)。快取是按語言分開存的——切換語言不會把另一個版本蓋掉,兩份都留著。
你的金鑰,你的 AI
Lossic 沒有內建 AI 額度。你到 Google AI Studio 或 OpenRouter 拿一把免費的 API 金鑰,貼進設定,就啟用了。金鑰存在 iOS 鑰匙圈(跟 Google Drive 的登入 token 同一個地方、同一個理由),App 直接呼叫供應商——中間沒有 Lossic 的伺服器。
這跟播放器對 Drive 的態度是同一件事:你的檔案、你的帳號、你的金鑰,我們只是那個把它們接起來的 app。如果我們內建額度,就得在中間放一台代理伺服器,你的曲目 tag 和封面會經過我們——那正是我們整個架構在避免的事。
預設模型是 gemini-flash-lite:夠快、夠便宜、寫三到五句綽綽有餘;Flash 一點就切。OpenRouter 那邊只給一個選項 openrouter/free,它是自動路由,每次挑一個當下免費的模型——我們試過維護一份「免費模型清單」,結果它比 app 的更新週期還快過期,所以不維護了。
代價很明確:多一步設定,而且「去申請 API 金鑰」對非開發者不是零門檻。沒有金鑰時這一頁會告訴你怎麼設,播放器其他一切照常——故事層是加分,不是門檻。
一首歌只問一次
第一次翻到某首歌的內頁,App 呼叫一次 AI,結果存到本機磁碟。之後再翻、重開 app、隔一個月再聽,讀的都是那一份,不會再打第二次。這既是省你的配額,也是讓體驗穩定——同一首歌不會今天講一套明天講另一套。
覺得寫得不好,右下角有重新生成的按鈕;設定裡也有一鍵清掉所有已生成的內容。清的是內容,不動金鑰和偏好。
追問:三個問題,和一個學到的教訓
兩篇短文的結尾,模型會順手給三個「好奇的聽眾最可能接著問」的問題——用你的語言、從你的角度問。點一個,聊天視窗從底部滑上來,問題已經送出去了。你也可以打自己的問題。
聊天有兩個刻意的限制。上下文有上限(最近 12 輪、6000 字),最新的訊息永遠保留,更早的靜默丟掉——免費模型在長對話上會退化,而且一段短文長度的回答就能吃掉不少 token。對話不存:關掉 app 就沒了。關於正在聽的這首歌的一段閒聊,本質上是即興的;值得留的是那兩篇短文,我們就只留那個。
一個真的踩到的設計教訓:第一版把聊天輸入框固定在內頁的底部。結果它正好落在分頁的翻頁手勢區——點輸入框,頁面翻回去的機率跟鍵盤跳出來一樣高。所以聊天搬進了一個獨立的 sheet,用一顆按鈕或點推薦問題打開。輸入框跟翻頁手勢不再共用同一塊螢幕。
它會說錯
會。每一篇短文底下都有一行小字:「由 AI 依你檔案的 tag 生成,可能有錯」。這不是免責聲明式的敷衍——是我們怎麼看這個功能的定位。
prompt 裡有一句:「不確定的事,寧可少說,不要編細節」。這降低了錯誤率,但不會歸零。所以請把它當成一位懂音樂的朋友的說法:大方向可信、細節值得查證,說錯了你會糾正他,不會因此不再跟他聊。
相對地,這個 app 裡另一類數字——播放速度——是實測的,不是生成的。那篇筆記裡每個毫秒都來自 log。兩種內容、兩種可信度,我們不想混在一起。
所以
下次在 Lossic 裡聽到一首讓你想知道更多的曲子,往右翻一頁。如果你還沒設金鑰,那一頁會告訴你怎麼做,五分鐘。
我們也想聽你的想法:兩篇短文夠不夠?三個問題猜得準嗎?藏在右邊一頁是對的嗎?寫信到 tautiu.dev+lossic@gmail.com。
動畫裡的文字是示意——那兩段介紹和那則回答是我們照著 prompt 的規格手寫的範例,不是某次真實生成的輸出。Bill Evans Trio、Village Vanguard 1961、LaFaro 的事實本身是對的。
你買下的音樂,值得比檔案管理器更好的家。