August
9th,
2025
說出影響力(新編版)- 3分鐘說一個好故事,不說理也能服人
作者: 謝文憲 出版社:春光
出版日期: 2015/12/22 語言:繁體中文
買書推薦網址:
Readmoo: 由此去購買。
前言:
這是 2025 年第 6 本讀完的書。 這其實也是今年上過的一堂課程,謝文憲,憲哥的演講課程。我在上課之前,將這本書買來讀了一些,上課起來真的覺得吸收的更好。這一次演講課程也是一次公司給我們難有的體驗,因為聽說這個講師在業界的知名度相當的高。 課堂上對於大家的要求也很高,上課的成員其實大多數對外需要有演講的夥伴們,但是也都覺得收穫良多。
大綱
長篇大論,比不過一段3分鐘的故事,更能打動人心。
再多道理,勝不過分享人生經歷,更被聽者記憶。
透過說一段好故事,不僅能說服他人,還能引起共鳴、交到朋友。
雅虎媒體、富邦金控、台新金控、台哥大等公司都在學,一堂價值二十萬的說話課。
《商業周刊》、《蘋果日報》專欄作者 謝文憲
繼《行動的力量》之後傾囊相授
想要讓別人聽你的,先學會「說一個好故事」。
訣竅是:要打動別人,先感動你自己。
加州柏克萊大學十年觀察研究結果指出,
一場談話或簡報,一週後,人們只記得當中的5%,
這5%,是演說者或講者所提供的故事、例子和親身經歷。
三分鐘的好故事,勝過三十分鐘的長篇大論。
很會說話,不等於會說好故事。
口才好可以說服人,但別人不會真正記得你、信服你。
一則好故事、一段簡要的開場與結論,
分享自己所見、所得,讓人甘願被你影響,真心接受你的論點。
本書教你如何說一個讓人印象深刻、能起共鳴的故事。
即使沒有高職位、沒有雄厚背景,
平凡人物也能使人印象深刻、讓別人聽從你。
新版自序:始料未及的影響力
重點:
成功的語言具有影響力,失敗的語言則容易被忽視。持續增強自身能力、相信內心意志,並把握每次公開表達的機會,能讓個人影響力超乎預期。
建議找到志同道合的夥伴,朝共同目標努力,並珍惜每一次上台或掌握麥克風的機會,展現自己的潛力。
前言
重點:
口語表達是強化個人表現和影響力的重要工具,無論職位、地位或專業背景如何,都能透過簡報或演說展現價值。
類比棒球選手:不論年薪高低,打中球後都要全力跑向一壘,證明價值。同樣地,口語表達需要努力和練習來實現影響力。
沒有人天生具備口語魅力,無論天資如何,透過持續練習都能提升表達能力,成為「武林高手」,靠一張嘴影響他人。
第09章:觀察聽眾的肢體語言
重點:
分析聽眾需求:成功的簡報需要事前做功課,敏銳觀察聽眾的心理和需求,針對性地呈現內容,增強口語表達的魅力和影響力。
建立連結(Connection):演說如同「撒網」,透過與聽眾的互動建立連結,影響力取決於能「網住」多少人。
實例分享:以股票投資為例,演講者透過具體數據(公司股票從30元漲到50元)與聽眾建立共鳴,吸引注意力並導入主題。
第10章:組織構思最好的內容
重點:
簡報時間:職場中最常見的簡報長度是20分鐘,這是老闆或客戶能接受的最長時間,需精準傳達重點。
破題與結尾:
破題如剪刀:開場需明確點出簡報目的,清楚說明「我要講什麼」與「不講什麼」,聚焦聽眾注意力。
結尾如棒槌:結尾需強而有力,留下深刻印象,讓聽眾在離開時記住核心訊息。
第13章:三要六不要的開場白原則
重點:
開場原則:
三要:
前兩分鐘要與聽眾建立緊密連結。
第一句話使用金句,吸引注意力。
以故事開場,用金句收尾,增強記憶點。
六不要(未完全列出,但可推測包括避免冗長、無趣或不相關的開場)。
避免過度熱情:不需大聲喊「早安」等問候,應以自然音量與聽眾互動,避免因聽眾反應冷淡導致尷尬,破壞現場氣氛。
第14章:收尾一句話,勝過一堆話
重點:
結尾需簡潔有力,促使聽眾採取行動。例如:
明確要求行動(如「記得下訂單!」或指定時間完成)。
提供選擇方案,讓聽眾有參與感。
表達對聽眾行動的信心,激勵他們執行。
一句話的結尾比冗長的總結更能打動聽眾,強化影響力。
第18章:恐懼也是你的好幫手
重點:
管理緊張情緒:演講時若感到緊張,可透過簡單動作(如動動腳趾)分散注意力,緩解緊張感。
緊張並非負面情緒,可視為激發表現的動力,幫助提升演說效果。
第19章:簡報不能過於冗長
重點:
簡報的核心目的:不是傳遞所有資訊,而是聚焦於讓聽眾理解重點、產生認同並採取行動,與訓練課程不同。
合作分工的理念:
相較於傳統「分工合作」,作者提倡「合作分工」,強調先建立團隊合作基礎,再進行分工,能發揮更大團隊實力。
此方法適用於簡報準備與團隊協作,提升整體效果。
第24章:用職位發揮影響力
重點:
資訊權的影響力:某些職位(如HR或編輯)因掌握獨特資訊(如講師費用、書籍成本)而具備權威,這些資訊賦予職位持有者影響力。
善用職位帶來的資訊優勢,能讓下屬或相關人員更願意服從與配合。
推薦序:說出影響力,提昇競爭力
重點:
書中提供完整的表達架構與心法,包括:
「三點全露」:強調簡報內容的清晰與完整性(具體內容未在劃線中詳述)。
「破題如剪刀,結尾如棒槌」:開場聚焦主題,結尾強烈震撼。
不同簡報類型的差異與應用。
核心心法:專心投入、分析聽眾、建立連結,以及構思與組織內容,這些技巧能提升簡報與演說的競爭力。
心得
印象很深刻的一句話:「如果要來一場三十分鐘的演講,我可以馬上上場:但是如果要來一場三分鐘的演講,我需要準備一個禮拜」。往往一場三分鐘的演講,要如何「說出你的影響力」讓每一個聽眾都能夠感同身受,並且在短時間中能獲得共鳴就變得更難。因為需要注意到以下幾件重要的事情:
取得聽眾的注意力。
鋪陳本場演講重點。
總結重點,並且變成 takeaway 。
這一本書有許多在演講內容編排上的技巧,並且可以幫助你對於聽眾迅速取得好感。很推薦大家來看。
繼續閱讀
August
5th,
2025
前言
抓取 YouTube 字幕一直是很痛苦的事情,除了我之前有寫過文章來分享相關方法外。後來都會發現 Google 會有各種限制:
LangChain API -> 直接檔。
Transcript API -> 一直被阻擋,需要花錢去弄 Resident IP 來弄。
YouTube Data API -> 需要 OAuth 流程,弄完只能抓自己的影片字幕。
後來最後發現 Gemini 2.5 模型支援抓取 YouTube URL 來分析(撒花!自己的服務就是不會阻擋啊~~)
加入 n8n 流程來讓傳送訂閱最喜歡的影片摘要
幾件事情可以分享一下:
YouTube RSS Node
首先 https://www.youtube.com/feeds/videos.xml?channel_id= 這樣的網址就是一個頻道的 RSS 。這個可以當作 RSS Trigger Node
如何取得 YouTube Channel ID
使用 YouTube Node - Get A Video ,放入影片或是 video ID 就可以看到 Channel ID 。
如何使用 “Gemini 2.5 YouTube 影片字幕總結“ 變成一個 Node
直接透過 HTTP Node
其中 Header Auth 可以幫助你避免將密碼複製給其他人。其實可以右上角 “import cURL” 就可以直接放入。 參考:
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{"text": "Please summarize the video in 3 sentences."},
{
"file_data": {
"file_uri": "https://www.youtube.com/watch?v=9hE5-98ZeCg"
}
}
]
}]
}'
成果
繼續閱讀
August
3rd,
2025
別把你的錢留到死
懂得花錢,是最好的投資——理想人生的9大財務思維
Die with Zero : Getting All You Can from Your Money and Your Life
作者: 比爾.柏金斯
原文作者: Bill Perkins
譯者: 吳琪仁 出版社:遠流出版
買書推薦網址:
Readmoo: 由此去購買。
前言:
這是 2025 年第 5 本讀完的書。 今年讀書的節奏大多是一本看一下,馬上跳過去看另外一本。 最近陸陸續續開始把一些書籍讀完,接下來讀完書籍的速度也會更快了吧。
大綱
第1章:最佳化你的人生
核心觀念:人生財富的分配應以最大化「生命活力」為目標。每個人積攢財富的方式不同,但核心問題在於如何在有生之年最佳化資源分配,以活出最充實的人生。
重點:書中強調「死前讓財產歸零」是一個值得追求的目標,這種思維能改變人們對金錢的慣性,從單純累積財富轉向追求有意義的體驗,進而實現最佳人生。
第2章:投資自己的人生體驗
核心觀念:提早投資於人生體驗能帶來「記憶股息」(memory dividend),即長期的情感與心理回報。
重點:
越早開始投資人生體驗(如旅行、學習等),越能享受記憶股息的「長尾效益」,因為年輕時的投資能產生更長久的回憶與滿足感。
隨著年齡增長,記憶股息的累積時間縮短,因此應儘早行動,將資源轉化為有意義的體驗。
第3章:為什麼死的時候要什麼都不剩
核心觀念:死前財產歸零的理念旨在避免浪費生命活力,鼓勵在有能力享受時積極使用資源,而不是留到無法使用的時候。
重點:
案例分析(如伊莉莎白的故事)顯示,過度儲蓄可能導致未能在生前充分享受財富,留下遺憾。例如,伊莉莎白在85歲去世時仍留有13萬美元,這些錢未能在她有能力享受時使用。
若熱愛工作,應尋找在工作之餘花錢從事喜愛活動的方式,平衡工作與生活樂趣。
心理抗拒「財產歸零」可能源自恐懼或習慣,建議反思抗拒根源,以更開放的心態面對這一目標。
幽默但深刻的建議:若賺到1500萬美元仍繼續工作,可能需要被「提醒」重新評估人生優先級。
第6章:生活要平衡
核心觀念:金錢的時間價值與個人利率(personal interest rate)隨著年齡增長而上升,因此應在生命早期或中期使用財富,以獲得最大享受。
重點:
金錢的時間價值:50多歲時的10萬美元比80多歲時更有價值,因為年輕時有更多精力與機會享受。
50/30/20法則:建議將收入分配為50%必要花費(房租、生活用品等)、30%個人需求(旅遊、娛樂等)、20%儲蓄與償債,作為簡單有效的財務管理方法,特別適合難以控制花費的人。
時間有限的觀念:人們常忽略生命的有限性,誤以為有「無限」的時間。提醒自己生命有限,才能更珍惜當下,充分使用資源。
第7章:開始為你的人生設定時間表
核心觀念:人生由多個階段組成,每個階段的「你」都會「死亡」,無法回頭,因此應為每個階段設定明確的目標與時間表。
重點:
每個人生階段(如青少年、大學生、單身時期等)結束後,該階段的你即「死亡」,無法重來。這提醒人們應及時行動,抓住當下機會。
設定時間表有助於將資源(時間與金錢)分配到最適合的階段,避免後悔。
第9章:要大膽,但不要愚蠢
核心觀念:年輕時應勇於承擔風險,因為時間充裕,允許失敗與恢復。
重點:
年輕時的風險承受能力較高,因為有時間從錯誤中恢復。隨著年齡增長,風險容忍度降低,因此應在早期大膽嘗試,但避免魯莽。
心得
這一本書就像是書籍封面一樣,先透過分享給你為什麼不要把錢留到死,該如何將錢能夠「儘量」的花完。最後再來討論,花錢是為了要讓自己人生的每一刻都要能完美,得到最大的滿足感。不要只是因為金錢的因素,而不斷地壓抑自己的快樂。這是一本讓你開始面對死亡,並且認真面對自己的內心的一本書。 讓自己要真誠追求自己想要的生活方式,不要因為想要將錢「存到老」而壓抑了自己整個人生的花費。
繼續閱讀
July
30th,
2025
»»» 想像力很重要 «««<
就像《葬送的芙莉蓮》裡的「尤貝爾」,產品開發時的「想像力」其實非常關鍵。這有點像「庖丁解牛」,你要能預想怎麼拆解問題,並且有效率地完成。Vibe Coding 就是這樣一個「已完成」的工具。(這比喻有點老派 XD)
舉個例子(這幾天應該會寫成文章),如果你想用 Agent 大軍來協助開發產品:
不能只有一句話的需求。
必須詳細描述你希望達成的功能(類似 PRD)。
最好補充相關的背景知識,比如 Github App 或 Github Webhook,這樣可以省下好幾百塊的討論費用。
個人對 Vibe Coding 的一些感想:
一套好的開發流程和部署方式,能讓 Vibe Coding 發揮更大效益。這也是資深工程師和懂系統架構的人最明顯的差異。
不要全然相信 AI,還是要扮演品質把關者的角色(無論你是老闆還是甲方)。
資深工程師通常對 Vibe Coding 很樂觀,因為他們懂得檢查甚至修正 AI 的開發方式。
現在我的習慣是,開會前先讓 Vibe Coding 進 YOLO 模式跑一輪,再來檢查它做了什麼。其實用來開發 side-project,真的滿享受的!
繼續閱讀
July
27th,
2025
教練 - 價值兆元的管理課,賈伯斯、佩吉、皮查不公開教練的高績效團隊心法
Trillion Dollar Coach : The Leadership Playbook of Silicon Valley’s Bill Campbell
作者: 艾力克.施密特 強納森.羅森柏格 亞倫.伊格爾 原文作者: Eric Schmidt Jonathan Rosenberg Alan Eagle
譯者: 許恬寧 出版社:天下雜誌出版
買書推薦網址:
Readmoo: 由此去購買。
前言:
這是 2025 年第 4 本讀完的書,今年讀完的書,真的有點少。不過這一本書還蠻有趣的,雖然不是 Bill Campbell 本人寫的團隊心法,反而是他過世後,由幾位作者找了許多矽谷的領導人訪談之後的一些心得整理,反而更加的珍貴。 讓人閱讀起來有許多相關的人物與背景,也更容易帶入相關的情境之中。
大綱
從球場到商場,超凡的高績效人士的身後,都有個教練。
即使是身經百戰的戰將,也有連自己都不知道的潛力;
面對沒有標準答案的選項,也需要指引,重新聚焦最重要的事!
從蘋果的庫克、Alphabet的漢尼斯與皮查,到臉書的祖克柏與桑德伯格,當今許多頂尖創業家、CEO、高階主管心中有疑惑時,他們都去問比爾.坎貝爾。
谷歌執行長皮查說︰「他總會適時協助我看清什麼才是最重要的事。」
YouTube執行長沃西基說︰「他能助人發揮潛能,促成團隊同心協力。」
矽谷創投之父杜爾說︰「比爾.坎貝爾是我見過最有智慧的人。」
蘋果執行長庫克說︰「他對蘋果的貢獻難以估算,也無可取代。每個人都可以向我們這個產業最偉大的教練學習。」
優秀的主管,必須先是優秀的教練;
一個人的職位愈高,他的成功就愈取決於能否幫助他人成功!
比爾從大學足球教練出身,四十三歲才進入矽谷。從帶球隊到教企業團隊,比爾都備受敬愛,因為他深諳每個人都希望被尊重、有價值的人性。他的教練之道不曾出現在任何官方文件,他也很少出現在主流媒體上。親密學徒施密特等人歷時超過兩年,採訪近百位業內頂尖人士,總結這位傳奇商業教父的管理智慧和領導哲學,闡釋建立信任、打造團隊、促進成長的32個管理黃金法則。
.不論個人發展或公司命運,都取決於人際關係的品質
.尋求最好的點子,若以達成共識為目標,只會導致團體迷思與較差決策
.每個人想要被喜愛、不想被背叛,激發正面的人性價值就會帶來正面的商業成果
.經理人的權威,來自部屬、同儕與長官的信任,而非權威式管理
.只指導願意受教的人,不必有教無類,不然你會很累
「教練就是跟你說你不想聽的話,要你看你不想看的事,最後讓你成就你想成就的關鍵人物」。每個人都可以從這本書學習如何教練自己和周圍的人變得更好。
這個世界面臨眾多挑戰,唯有靠團隊才能解決,而團隊都需要教練。在亟需領導力的時代,當今最有權力的CEO、創投家、創業者、高階主管們的共同教練,提供你突圍、成功的祕訣。
摘要聚焦於比爾·坎貝爾(Bill Campbell)的教練之道,涵蓋其領導哲學、社交能力、同理心、團隊管理及董事會運作等核心理念,強調信任、心理安全感及有效溝通的重要性。
1. 社交能力與人際連結
比爾強調建立人際關係是領導的基礎,鼓勵管理者主動與同事互動,關心他們的生活,並以真誠的問候建立連結。
重要句子
「試著培養這種人際關係對我來說並不容易,但我努力做到了。幸運的是,愈做就會愈覺得簡單。」
「我曾試著記住大家的名字,在電梯裡碰到人的時候,我會試著開口和旁邊的同事聊聊,問候他們,問問他們最近如何?在忙什麼?」
「善待身邊的人,是人生最有價值的投資。」
比爾以簡單問候(如「家裡的人都好吗?」)拉近距離,先建立關係再處理工作,展現人性化領導風格。
2. 同理心與心理安全感
比爾的領導風格強調同理心,他以傾聽和觀察為基礎,提供適切建議,並創造讓團隊成員敢於表達的心理安全感。
重要句子
「比爾會傾聽與觀察。這是教練的能力,他能夠提供不一樣的觀點,帶你站在制高點看問題。」
「在團隊中培養心理安全感,建立信任是關鍵。康乃爾大學曾在1999年研究中首次對心理安全感下了定義:『團隊成員一致認為可以在團隊中直言不諱,不必害怕會冒犯誰,那是一種團隊氣氛,讓人可以安心做自己。』」
「信任是企業成功的基礎,但今日許多商業書已不再談論它……大家從比爾身上感受到最深刻的就是信任。」
他鼓勵管理者以真誠回饋,承認問題並激勵團隊前進,確保成員感到被尊重和信任。
3. 解決問題與直面挑戰
比爾擅長找出並解決「房間裡的大象」,即那些被忽視的棘手問題,強調領導者應直面挑戰並優先處理。
重要句子
「找出大家避而不談的棘手問題,把它擺到所有人面前,然後優先解決,以免這些問題因辦公室政治繼續在公司裡悶燒,造成更大傷害。」
「比爾會明確提出問題,強迫所有人都關注它,『不留任何空間給人搞辦公室政治』。」
「只要有比爾在,房間裡永遠不會有大象。」
他強調領導者應果斷承諾,專注於對團隊最好的選擇,並避免個人利益凌駕於團隊之上。
4. 有效溝通與積極聆聽
比爾推崇積極聆聽,強調專注傾聽、提問以釐清問題,並激發對方的效能感與歸屬感。
重要句子
「與人溝通時,首先要專注,把所有注意力放在聆聽對方說話;不要一邊聽,一邊想著自己接下來要講什麼。」
「他從比爾那裡學到最重要的一件事,就是『把注意力放在面前的人,仔細聆聽,接著才開始討論,要達到真正有效的溝通,專注、聆聽、對話,是有先後順序的。』」
他以說故事的方式引導他人自行做出最佳決定,而非強行命令。
5. 團隊管理與人才培養
比爾認為優質團隊是成功的關鍵,管理者應提供資源、尊重與信任,幫助人才成長並釋放潛能。
重要句子
「人才是任何公司的成功基礎。管理者的主要工作,就是協助部屬以更有效的方式完成工作,並從過程中有所成長。」
「比爾是團隊教練,他的職責是建立團隊、型塑團隊,把合適的人放在合適的位置(以及讓不合適的人離開不合適他的位置)。」
「做任何事都需要團隊的齊心協力。」
他強調管理者應視部屬如孩子,引導他們走上正確道路,並以慷慨和尊重的態度處理離職事宜。
6. 董事會與高績效人才管理
比爾建議董事會應由具備營運實務經驗的人組成,並強調管理高績效但難相處的人才需平衡其貢獻與團隊和諧。
重要句子
「比爾告訴科斯托洛,你要有其他能仰仗的經營者。比爾也明確指出什麼樣的人是不好的董事:『那種人大搖大擺走進來,想當全場最聰明的人,而且話很多。』」
「如何管理公司裡那些高績效、但難以相處的團隊成員,是管理者最頭痛的問題之一。」
「如果這些恃才傲物的人,不斷把自己的利益看得比團隊更重要,就算再有才華,也不可容忍。」
7. 展現真誠與完整的人格
比爾以真誠和人性化領導聞名,強調管理者應展現完整的自己,並以信任和鼓勵激發他人潛能。
重要句子
「比爾從來不會在工作中刻意去除他的人情味。他也把每個人都當成一個完整的人來看待,有專業的一面、私下的一面、家庭的一面、情緒的一面,是全部面向加起來的一個完整的人。」
「教練就是跟你說你不想聽的話,要你看你不想看的問題,最後讓你成就你想成就的人。」
「比爾總是能把勇氣傳遞給我,而我也總是會因此受到鼓舞。我從比爾身上學到一點:要做一個給予別人能量的人,而不是一直消耗別人能量的人。」
8. 領導者的角色與責任
比爾認為領導者的核心在於做事並帶來影響力,而非僅靠頭銜或個人成就。他強調管理者應以公司利益為先,並以身作則。
重要句子
「你以前做什麼不重要,你現在想什麼也不重要,重點是你每天做了什麼。」
「頭銜使你成為管理者,部屬使你成為領導人。」
「管理者的第一要務,就是確保自己帶領的人既幸福又成功。」
心得
當初會看到這本書,只是沒有想到一個足球教練出身的比爾,竟然能成為百大 CEO 們的團隊導師。
這一本書給我很大的啟發,主要是領導團隊的方面。裡面有許多部分給我很多新的想法:
帶領團隊,從「人」開始:
很多時候,會覺得是制度對了。團隊應該會往正確的方向走下去,但是看起來,團隊中的人還是最大的因素。
找出團隊問題中的「屋裡的大象」:
「屋裡的大象」就是團隊中很明顯的問題,但是往往大家會忽略他。或是以為不需要去處理它,
這些案例,還有我上面相關書籤的文字其實都給我蠻多的想法的。也讓我知道,團隊中的重要問題,可能需要在許多會議前去解決掉。也很推薦許多想要領導團隊的人一起來看這一本書。
繼續閱讀
July
26th,
2025
前情提要 之前 [Python] 在 LangChain 中將 Gemini 換成使用 Vertex AI 曾經有分享給大家該如何使用 LangChain 中的 Vertex AI 的相關功能。它具有以下的優點: 如果你專案放在 GCP CloudRun ,不需要額外放 Gemini API Key。可以更安全處理自己程式碼的安全性。 使用了 VertexAI 還有許多相關進階功能可以使用,之後也可以慢慢分享。 這一篇文章主要寫程式的部分都是使用 Gemini CLI :p ,但是有一些地方也跟大家講一下如何跟 AI 來溝通才能避免錯誤卡住。 範例程式碼: https://github.com/kkdai/linebot-gemini-python (大家可以參考 ) (透過這個程式碼,可以快速部署到 GCP Cloud Run) 關於 Vertex AI 上面使用 Gemini 來做圖形偵測的架構圖 這一張網路的圖解釋得很清楚,這邊要記得由於 VertexAI 使用到 Gemini 圖片相關處理的時候,必須要使用到 GCS (Google Cloud Storage) ,所以你不能只是放某個網路圖片網址給他,而是必須要將圖片放入 Google Cloud Storage 的 Bucket 之中,才能處理。 這裡程式碼會有一些相關的修改,就會有以下的相關部分來解釋: 如何將圖片上傳到 GCS 記得先到 GCS 建立一個新的 Bucket ,並且把這個名稱保持下來。放在環境變數上。 (這裡使用 GOOGLE_STORAGE_BUCKET ) 由於我們偵測完圖片後,就不會再次使用到他,所以可以馬上從 GCS 刪除,避免不小心沒刪除到,然後記得到 Lifecycle 設定一天的生命週期。 要小心 Gemini CLI 使用 LINE Bot 套件造成不段重複錯誤 這邊要小心,即便我的 Gemini CLI 已經有使用了 Contex7 這個 MCP Server ,使得 Gemini CLI 永遠會去讀取最新的套件資訊。但是有時候,還是會卡住,這邊舉一個例子: 這是一個 我請 Gemini CLI 直接去開發如何使用 LangChain 中的 Vertex AI 來直接將 LINE Bot 圖片直接放到 GCS (Refer commit) 這邊會發現,其中會發現,他從 line_bot_api.get_message_content(event.message.id) 取得的物件,一直無法成功的取得相關的 stream 資訊。這邊我大改跑了三~四次的 prompt 都無法成功,所以只好人工下來請他修改一下: 其實我本來有先複製正確的寫法,請他幫我順一下之後: message_content = await line_bot_api.get_message_content(event.message.id) # Asynchronously read all content chunks into a byte string image_bytes = b'' async for chunk in message_content.iter_content(): image_bytes += chunk # Create an...
繼續閱讀