[好書分享]非普通三國-寫給年輕人看的三國史

非普通三國-寫給年輕人看的三國史
作者: 普通人  插畫: 山本恩  
出版社:方寸文創事業有限公司 

買書推薦網址:

前言:

這是 2023 年第八本讀完的書。這類有趣的歷史書籍,都會是我書單裡面常備的休閒書籍,我大概都會交互著看,所以這一本跟上一本可以馬上緊接著看完。(其實手上還有五本以上讀了一半)

這是講解許多你不熟悉的三國時代的書籍,雖然說我們常玩電動的人對於三國時代的武將都如數家珍(可能更多是他的武力跟政治力),但是這邊介紹的往往是一些比較冷門的歷史故事:

  • 為何曹操會被稱為人妻殺手
  • 趙子龍的相關八卦

甚至是孔融相關故事,還有三國後期的一些人物典故也都有放上。其實也還蠻有趣的。

內容摘要:

數學家:「這應該是我最近最開心的一次閱讀。」
心理學家:「此書的唯一缺點,就是讓人欲罷不能。」
律師:「如果要理解簡明三國史,這本書是最好入手的工具。」
歷史學者:「用二十一世紀的人關心的重點,告訴你全新的三國!」
大學教授:「即使這幾年人文普及寫作當道,但普通人仍是其中翹楚。」
專欄作家:「這本書不只是在還原歷史,更是在補一般人認知上的空白。」
網站創辦人:「普通人的故事很不設限,就像豪邁的說書人,比喻即使誇張也一定能讓人秒懂。」
國小教師:「以各種新穎寫法還原歷史真相,藉由精心設計的安排勾勒出三國英雄們的真性情。」
歷史作家:「不管如何KUSO,文字如何誇張,內容都有憑有據,顯示作者的紮實基本功,看似普通,其實不簡單。」

連羅貫中都不知道的三國史!
超越傳統史學格局,融合電玩動漫戲劇時事鄉民哏,
上萬粉絲狂敲鍵盤催促,終於等到──
「故事:寫給所有人的歷史」網站超高人氣專欄《三國蜘蛛網》首度結集!
  • 人妻王曹孟德:
    • 因為當初三國時代其實很多地方的將領都喜歡取漂亮年輕的女子為老婆。
    • 再攻下相關領地後,曹操在佔領相關資源的時候就看上。
  • 趙子龍的八卦就是談他劉備很像很親密的樣子。
  • 提到袁紹的兩個大軍事:沮授跟田豐
  • 有提到心眼很小的曹丕:
    • 很愛記仇(曹洪)
    • 跟曹植的愛恨情仇
  • 臧霸(比較少人知道)但是其實在三國後期也是管理很多地方的將領。
  • 還有提到三國時代的鬼怪故事:蟲落族(頭會飛的怪民族)
  • 講到很猛但是運勢不好的馬超
  • 家裡好像犯太歲的孫權
  • 三國小白的孔融
  • 有提到其實孔明算是非常仁慈的軍師(很少在處死刑)

心得:

這一本真的算是很有趣的,作者也試著使用各種文筆寫法來講解一些通俗歷史。比如說是透過記者採訪的文筆,比如說透過類似藍色蜘蛛網的寫法,甚至是透過一些比喻來講解三國時代許多有趣的通俗歷史。

這一本相當適合閒暇時候翻一下,也可以讓我自己對於三國時代的武將數字後面有了更多的了解。甚至對於三國時代的相關歷史與生活習慣也有了更多的了解。

[好書分享]高效團隊都在用的奇蹟式提問 - 激發互動+建立心理安全感的最強提問公式,會議不沈默,討論不冷漠,每次協作都有成效

高效團隊都在用的奇蹟式提問
激發互動+建立心理安全感的最強提問公式,會議不沈默,討論不冷漠,每次協作都有成效
問いかけの作法 チームの魅力と才能を引き出す技術
 共 4 人評分
作者: 安齋勇樹  
譯者: 林佑純  
出版社:天下雜誌出版 

買書推薦網址:

前言:

這是 2023 年第七本讀完的書。偶然間看到這本書,想到老闆每次跟我 1 on 1 的時候都會提醒我要透過有效率的提問方式來做到團隊管理的方式,就不自主想買下這本書。 日本書籍經常有的特典,就是又薄又經典,可以很快速了解重點。 很適合我閱讀效率。

內容摘要:

一個公式X四個原則,以引導取代領導,
扭轉討論發散、沉默、沒效率的無力感,
掌握有效提問點方法,激發最高生產力。

你在主持會議、帶領小組討論時,是否經常碰到這樣的窘境:
請大家發言,結果是一片恐怖的死寂;
徵詢意見,大家你看我、我看你,就是每一個開口;
明明在討論新企劃,最後卻變成產品檢討⋯⋯

發散、沒進度、沒想法,不只讓負責人壓力山大,更嚴重影響團隊生產力。
這一切都可以改變!你需要「奇蹟式提問」。

本書作者安齋勇樹服務超過三千家企業導入「奇蹟式提問」建立具備心理安全感基礎的強大團隊。他發現,組織成員對於所屬團體常有「沒人提出好點子」、「沒有團隊精神」的無力感,這種無力感一旦蔓延,往往導致個人和團體停滯成長。

他以心理學與組織管理學為基礎,結合實戰經驗,歸納出「奇蹟式提問」的技巧,無論是在主持會議、小組討論,或是一對一溝通,都能透過這個方法,提升與人連結的能力,強化團隊生產力。

從工廠團隊到工作坊形團隊

  • 認知團隊潛力
  • 溝通不良,誰的錯?
  • 工廠型團隊:
    • 主管導向
    • 從上到下
    • 依規定做事

image-20230825212524451

  • 工作坊型團隊:
    • 從下到上
    • 自發性找尋問題,尋找解法
    • 經營層協助確定目標

image-20230825212509458

這故事就是「三個砌磚工人」,在中世紀的某個歐洲小鎮,於建築工地有三名工人在工作。當被問到「你在做什麼呢?」時,各個工人分別如此回答:

第一個工人說:「我在堆磚頭。」
第二個工人說:「我在賺錢啊。」
第三個工人開朗地抬起頭來說:「我在建造本鎮將流傳後世的大教堂啊!」

來源:https://www.managertoday.com.tw/articles/view/59101?utm_source=copyshare ©經理人

奇蹟提問的公式與原則

  • 提問會引導回答:
    • 單純事件提問 -> 回想
    • 一年前吃什麼 -> 搜尋資料
    • 有推薦的店家嗎? –> 分享資訊
  • 提問的四個原則:
    • 尊重成員個性,不否定。
      • 為什麼這樣做? –> 你這樣做想強調的是什麼?
      • 我明白了 –> 為什麼會這樣想?
    • 適度限制,給予思考空間。
      • 有什麼想法? –> 目前專案中,什麼讓你覺得浪費時間?
    • 避免過度嚴肅,給人樂意回答。
      • 你有好主意嗎? –> 如果要你拒絕提案,你的理由會是什麼?
    • 適度打破既定的規則。
      • 如何讓使用者更方便? –> 什麼樣的產品不太方便,但是你想擁有他?

提問公式:

觀察:

  • 與會人士姿勢
  • 為何特別在意某些內容?
  • 根據哪些價值觀的發言?

組合:

  • 會議中的角色
    • 提案型
    • 激勵型
    • 組織型
    • 共感型
  • 結合問題三步驟:
    • 定義未知問題
    • 調整方向
    • 給予限制

提問

  • 好提問,吸引注意力
    • 前情提要加提問
    • 共感突破武裝
      • 如果我們一起承擔風險,你想要選擇哪個方案?
    • 煽動情感
      • 我相信你的專業,想聽聽意見。
    • 留白空間:
      • 大家還記得今天會議主題嗎? (停三秒)…… 今天會議是….
  • 追蹤反饋:
    • 查看相關回應給予下一步。
    • 補充意義
    • 釋出善意

心得:

這本書透過三個大主軸:

  • 澄清提問的重要性
  • 好提問的相關原則
  • 如何進行一個好提問

來開始本書的結構,這一本書透過許多小句子可以很快速地了解每一個小章節的相關含義。也更容易去施行。

搭配著最後一個章節給予相關工作坊的施行辦法,可以讓參與的人可以更快地體會提問的方式與重要性。也可以很快速的施行。

[旅遊] 2023/08/11 ~ 08/23 法國與英國旅遊相關資訊

記錄一下,相關旅遊紀錄。

08/11 法國英國藝術之旅第一天:

很興奮到了法國第一餐找了附近的餐廳 「 La Musset」 結果評價很高。不過在法國吃飯真的會很花時間,服務生不能趕,上菜真的不快,也不能催他付錢。 下午先去凱旋門感受一下壯觀的景象,再來就是去「奧塞美術館」感受一下許多漂亮的雕像跟作品。至少有看過「拾穗」。 晚餐吃了飯店樓下的義大利餐廳。很雷。

  1. 飯店: Hôtel Louvre Saint-Honoré
  2. 早餐: Le Musset 3’ 凱旋門
  3. 奧塞美術館
  4. 晚餐太雷(省略)

08/12 法國跟愛丁堡藝術之旅 第二天 羅浮宮

  1. 先去是「聖心堂」感受莊嚴的美麗
  2. 再來去後面的「小丘廣場」看到藝術家部落的壯觀。

「午餐: La Vache et le Cuisinier 是個很棒的體驗。」

  1. 馬不停蹄趕去看「艾菲爾鐵塔」
  2. 最後到了「羅浮宮」感受跨千年的美麗。
  3. 傍晚去搭 「city tour」逛逛整個巴黎。
  4. 晚餐老婆跟小孩說吃膩了法國麵包,結果跑去吃法國的中國菜。

08/13 法國與英國藝術之旅

今天準備要飛到英國愛丁堡,參加爸媽很期待的「愛丁堡藝術節」。

因為是下午的飛機,早上馬不停蹄去趕行程。

先感受了 「聖徒修道院」美麗的馬賽克藝術,再來到了藝術與科技結合的巴黎古監獄。

巴黎古監獄透過與平板的互動,加上尋寶遊戲。讓本來還蠻空曠的巴黎古監獄多了很多有趣的感覺。他的商品街也是讓我們買不停。最後還是有經過大火過後的「巴黎聖母院」,雖然都不能進去,但是可以看到周圍人潮還是很多。也看到許多修復的進度表。

最後晚上終於「回到」愛丁堡,十多年前來跨年過後,讓我們念念不忘的城市。 因為太累,吃了一個比較安全的連鎖亞洲菜餐廳就結束今天行程。

  1. 聖徒修道院
  2. 巴黎古監獄
  3. 聖母院
  4. 巴黎戴高樂機場(機場三明治$
  5. 愛丁堡機場
  6. 晚餐: wagamama
  7. 飯店 : The Scotsman Hotel

08/14 法國英國藝術遊: 享受愛丁堡藝術節的路邊表演

早上起床享受了飯店的早餐之後,慢慢往「聖吉爾斯教堂」逛過去,也走到「愛丁堡大學」的後面 「underbelly 」會場享受這次有買票的 「Amazing bible man」真的很棒,很有趣。

後來走出來後到了旁邊的餐廳用餐整個 pizza 相當美味。查了之後才知道是當地 pizza. 名店、只是因為下午剛開。

後來去逛了 「Harry potter 的專賣店」東西其實不多,反而對面的綜合商品專賣店有滿滿的商品。

之後走回 Royal Miles 上面,發現有滿滿的街邊表演。真的都超有趣,結果就看到晚上九點多。😄。超讚的。

晚餐是街邊看到的店面,結果是飯店的餐廳。 牛排的口感超好, Fish and chips 也是一流。

  1. 飯店: Scotsman Hotel
  2. 聖吉爾斯教堂
  3. Underbelly
  4. 午餐: Paolozzi Restaurant & Bar
  5. Harry Potter 專賣店
  6. Royal Miles 表演

    A: 台灣來的魔術師

    B: The great mimic 超好笑的互動,跟超強的滾球。

    C: The James 一個街頭資深手法的魔術師。很多手法都看不出來。

D: Mr. Banana 一個雜耍人,最後用球包住自己超強。

E: 忘記名字,一個像是雜耍團的華人,真的很厲害欸。

  1. 晚餐: Luckenbooths

08/15 法國與英國藝術之旅 - 重頭戲: 愛丁堡城堡與軍樂節表演

早上吃完早餐就去愛丁堡城堡去逛。整個城堡相當的莊嚴與宏偉。也彌補了十幾年前來訪愛丁堡沒有機會進去看的遺憾。

逛完城堡後去了旁邊的「格紋工廠」。

中午在陽光下吃了一間義大利餐廳。算是中規中矩。享受陽光下的愛丁堡看著表演真的很棒。但是好日子沒有太久(笑) 接近傍晚就開始下大雨。

晚餐吃餐廳是「蘇格蘭菜」。我吃了一個馬鈴薯燉飯很喜歡。

到了軍樂節會場,雖然下著大雨相當不方便。但是全部還是滿場。全場活動有數個軍樂隊的表演。除了震撼人心的軍樂音樂外,還有許多串場的舞蹈與燈光煙火表演。

最後全部的大合唱 Story 真的太令人感動了。蘇格蘭風笛出現的時候,臉頰熱熱的。 原來是熱淚盈眶。

這幾天的感受是:

- 如果你還二十多歲: 千萬別錯過「愛丁堡藝術節」 Fringe 除了有各種有趣的表演,來看看各國人年輕人創意真的很棒。我希望我每年都能來。

- 不論你幾歲,千萬別錯過「愛丁堡軍樂節表演」 他說會感動人心,一輩子都不會忘記的體驗。

  1. 早餐: 飯店 Scotsman hotel
  2. 愛丁堡城堡
  3. 格紋工廠
  4. Royal Miles

6 午餐:O’Oliviero

  1. 飯店換成長袖外套。
  2. 晚餐: the cellar door
  3. 愛丁堡軍樂表演 21:30 - 23:00

08/16 法國與英國藝術之旅 - 休閒日

今天是待在愛丁堡最後一晚,準備來逛逛新城區走走。明天早上就要搭火車去倫敦。

先去「王子街」逛逛,然後去「王子街花園」悠閒的曬太陽😎

然後在街上的店家逛逛,買買東西。然後去買了麵包,在「羅斯噴泉」悠閒的享受。

愛丁堡有不少店家都很大很特別。最後去卡爾頓山看夕陽,遇到最多華人的一個景點。

  1. 飯店早餐: Scotsman hotel
  2. Prince street
  3. MOR Bakehouse
  4. 羅斯噴泉
  5. 羅斯街逛街
  6. 卡爾頓山看夕陽

08/17 法國英國藝術之旅-到倫敦

今天要離開愛丁堡到倫敦了。早上離開飯店後,就準備去 愛丁堡車站(Waverley station) 準備搭乘 LNER 特快車從愛丁堡到倫敦。 因為擔心位置不夠大,買了頭等艙來感受一下。整個路上都是不斷地被餵食,一直還問你要不要吃東西,喝熱飲,不然就來問冰飲。

到了倫敦之後,果然是個繁忙的都市。節奏很明顯變快許多,然後也都是樓梯要自己抬行李。

晚上到了「Royal Drury 劇場」 去看冰雪奇緣(Frozen) 的劇場版。整個劇場的特效相當的好,不論是冰宮出現的樣子,重點歌曲 Let it go 的變化都讓人相當難忘。

  1. 飯店: Scotsman Hotel
  2. Waverley station
  3. LNER to London
  4. Royal Drury Lane
  5. 晚餐: eat Tokyo

08/18 法國英國藝術之旅-大英博物館

今天是近幾天唯一有機會下雨的天氣,早上決定要來大英博物館享受心靈饗宴。(不過是我女兒想看埃及的木乃伊。)

訂了十二點多的入場時間,從飯店「The Clermont Hotel, Charing Cross」慢慢走過去,不過路上超級多的哈利波特相關商品店,每一家都逛也是花了一些時間。

大英博物館有個隱藏二號入口在後方完全不塞車。前方的大概要花半個多小時才能進去。透過線上 App 買了語音導覽,先去看了埃及區。真的是很壯觀。木乃伊跟石棺擺在路上真的猛。

中午在大英博物館吃,也買了很多周邊商品。出來後就去「柯芬園」感受氣氛,雖然說表演不錯,但是跟愛丁堡藝術節比起來就弱了一些。

  1. 飯店早餐: The Clermont Hotel, Charing Cross
  2. 大英博物館
  3. 柯芬園
  4. 晚餐:miscusi Covent Garden

08/19 法國英國藝術之旅-倫敦眼、大本鐘、蘇活區

今天就是要去(恐怖的)倫敦眼,跟蘇活區逛逛。

十年前來英國就沒有坐倫敦眼(因為我怕高),結果中間還遇到技術維修,卡在半空中大概十多分鐘(嚇死😦)。

下午去了蘇活區逛街,有一個 Hamleys Toy 幫女兒訂做一個熊。她倒是挑了很多衣服給熊。

蘇活區的金本家拉麵🍜讓我驚艷,很有日本口味。

  1. 倫敦眼
  2. 福楠梅森 Fortnum & Mason
  3. Make a bear: Hamleys Toy store
  4. 百年百貨: Liberty
  5. 晚餐: 金本家拉麵Kanada-Ya

08/20 法國英國藝術之旅-福爾摩斯博物館、利德賀市場、倫敦塔橋。

今天也是一個晴朗的好天氣,今天主要安排是去看「倫敦塔橋」,前面先安排了去「福爾摩斯博物館」,東西很少,票價不便宜。而且有太多的蠟像,我女兒會怕。接下來安排「利德賀市場」,但是週日的早上不僅僅是一堆市場沒開,連利德賀市場大部分商家都沒有開。

於是我們想說要去「波羅市場」吃午餐,結果不小心弄反了公車,到了很知名的印度菜餐廳「Dishoom」 等了大概二十多分鐘,有機會可以進去吃。真的有很多菜單都看不懂。店員推薦我們吃一種脆皮,我們還點了紅寶石咖喱雞肉,跟主廚推薦的蝦子跟烤餅。味道但真的不錯,但是不少口味都有點辣,小孩子不太能接受。

吃完之後因為來不及去波羅市場,於是去旁邊的 old spitalfield market 走走。真的很多有設計感的店家,跟很多好的食物。可惜已經吃飽了。

後來去倫敦塔球旁邊等五點半的塔橋升起,整套過程大概兩分鐘就過去加上降下來。真的很不錯,後來在橋旁邊逛逛,也搭了一次 Uber Boat 來感受。晚餐是旁邊買的韓國菜,還可以但是份量太多了。

這次來英國發現,雖然這邊買亞洲菜不便宜。 但是相較於英國菜,還是便宜上許多。

  1. 福爾摩斯博物館
  2. 利德賀市場
  3. 午餐: Dishoom 印度菜餐廳
  4. Old Spitalfield Market
  5. 倫敦塔橋
  6. 晚餐: Bunsik 韓國菜外帶

08/21 法國英國藝術之旅-牛津大學一日遊、基督學院、自然科學博物館

今天又是英國的一個重點旅遊,要去牛津感受一下歷史悠久的大學城鎮的感受。裡面最讓人覺得痛苦的就是訂購基督書院的門票。因為要前一週五才會開放,加上有開放的時候全部都搶購一空讓我整個傻眼,想說去不成。結果還好前天晚上看到票又都放出來。

牛津是一個歷史悠久的大學城鎮,其中包含三十個學院。並且學院間也是分分合合,才有現在的狀況。這次只逛基督書院。

基督書院真的很美,也有很好的語音導覽提供的許多資訊。真的很推薦逛逛。

先去自然科學博物館看恐龍化石,之後漫步在牛津城鎮中感受百年的氣息。

  1. 牛津自然科學博物館
  2. George and Denver 冰淇淋
  3. Covered market
  4. 基督書院
  5. The Ivy Oxford Brasserie

[TIL][Python]線上 PDF 逐頁查看比對導入資料的小工具(Python online PDF Viewer and comparison) 跟 Python 小碎念

小專案 Online PDF Viewer and Parse Data compare:

  • https://github.com/kkdai/pdf_online_editor
  • 比對你準備要導入的檔案,透過 PyPDF 。
  • 有在使用 PDF vector embedding 的人,但是又不知道導入資料長什麼樣子,可以透過這個小工具來查看 build by streamlit。

image-20230805094306589

最近由於在弄 LangChain 花了很多時間在玩 Python ,不過很多東西之前沒注意過。這裡稍微筆記一下:

  • PyPDF2 有 CVE 問題,其實切回PyPDF
  • 可以用 pip freezepipreqs搭配使用來打造 requirements.txt
  • Heroku 可以透過 Aptfile 來達到安裝 apt get 套件的方式:
    • 導入 "url": "heroku-community/apt" buildpack
    • 加入 Aptfile 裡面放你需要的套件清單 (e.g. pyimage 需要 poppler-utils)
    • 參考: How to add apt packages to Heroku 不然就是上面的 repo 。
  • Streamlit 是個好工具,對於我這種前端小白,提供了以下一些超好用東西:

[iThome Cloud Summit 2023] 結合生成式 AI 打造有趣的 LINE Bot 應用

前言

大家好,我是 LINE 台灣的資深技術推廣工程師的 Evan Lin 。前一段時間, OpenAI 將他們知名的 GPTv3 的 NLP Model 開放出來給大家使用,並且提供一個好用的介面 ChatGPT 。 在全世界受到相當多的注意,也看到有相當多社群的開發者有分享相關的開發案例。這一次我在 iThome 舉辦的 Cloud Summit 2023 擔任講者,並且分享「結合生成式 AI 打造有趣的 LINE Bot 應用」。

議程簡介

在現今智慧手機普及的時代,LINE 已成為人們溝通的主要管道之一,而 LINE Bot 更是其中一種廣受歡迎的應用方式。本演講將探討如何結合生成式人工智慧技術,打造有趣的 LINE Bot 應用。透過深度學習模型的訓練,我們可以讓 LINE Bot 具有更智能的對話能力,甚至可以幫助使用者解決問題、提供娛樂等多種應用場景。本演講將從實際案例入手,分享如何利用生成式 AI 技術開發 LINE Bot 應用,讓您了解如何運用 AI 技術,打造具有創意及趣味性的智慧應用。

投影片

生成式 AI 浪潮下社群有許多好玩的應用

這裡分享了幾個有趣的應用,大家可以參考看看:

  • 歷史名人 Bot: 加入好友
    • 還是會真的回覆相關內容,而且很堅持講日文。 XD
  • 拼盤小幫手: 加入好友
    • 原本是命理相當有研究的社群高手,透過生成式 AI 讓他的內容更加的口語化與人性化。
  • 就可妹妹:加入好友
    • 讓生成式AI 幫你講笑話,不過好像不太好笑XD
  • Cofacts 真的假的: 加入好友
    • 透過生成式AI 快速幫使用者檢查訊息是否是假的機率。

而透過 LINE 的生態系中,有著許多文字的相關應用。有哪一些有趣的應用可能會出現呢?

訊息摘要小幫手

大家是否都有類似的問題? 常常加入一個群組內,有太多的訊息在裡面跑來跑去,一回頭來看,發現已經有太多未讀的訊息在裡面了。 常常需要進去後,慢慢地追每一個訊息來避免自己錯過太多 (FOMO) ? 大家可以參考一下這篇文章如何透過生成式AI 來打造聊天室中的訊息摘要小幫手。

透過 LangChain 來打造自主性的 LINE Bot

透過基本的生成式AI 打造一個聊天機器人之後,我們可以進階的透過一些有系統的架構來打造「自主性」的 LINE Bot 。 所謂的自主性會是什麼意思:

  • 具有基本思考與處理能力,知道資料要去哪裡尋找。
  • 有相關的記憶能力,能記住使用者的相關需求。
  • 可以有效的回覆使用者的疑問,或是可以啟動相關的服務。

這裡就要介紹如何透過 LangChain 來打造一個具有「自主性」的 LINE Bot 小幫手。

什麼是 LangChain?

要讓你的 LINE Bot 做出以上的事情,你需要很多很多的相關 Prompt 。不論是定義 LLM 的模型該如何解讀你的文字,該如何挑選即將要執行的動作,或是如何將結果作為有效的拆解,到把以往訊息得內容加以存在 Prompt 之中。

但是透過 LangChain 你可以將這些工作拆解成一個個的小方塊,讓你打造相關服務與應用的時候不用在重複使用那些的 Prompt ,就可以快速打造出來。 以下透過一些簡單的程式碼範例來講解使用了 LangChain 之後,你的程式碼會變得多簡潔。

關於如何自主性挑選適合的 Tool 去做的能力 Function Calling

這個部分很建議看一下這篇文章,裡面有相當多的說明。

透過這個流程的解釋,你可以很了解到為什麼 LLM 可以了解使用者的內容。並且知道要如何去拆解變成參數。這就是如何讓「自主性」這件事情成真的重點。

LangChain 的程式碼

根據以上的程式碼,你可以看到定義一個工具的重點,就是要跟 LLM 模型講:

  • 這麼工具是做什麼的?(他是一個查詢股價的工具)
    • "Useful for when you need to find out the price of stock. You should input the stock ticker used on the yfinance API"
  • 他需要什麼樣的參數? 你需要給定股價的 ticker
    • stockticker就是股票代號,是一個字串。

透過這些資訊 LLM 可以透過剛剛提供的有效思考來幫你查詢股票。那結果會如何呢?

透過打包 LangChain 的小工具 - EmbedChain 打造客服機器人

EmbedChain 提供一個良好的打包工具,透過 LangChain 為底層打包出相關的文件解讀的套件。他支持的文件有:

  • PDF 檔案
  • YouTube 的字幕檔案(如果有)
  • 網頁
  • 甚至是透過程式碼把相關內容丟給他

他就會針對這樣的內容,將其做過 Split 與 Embeding 之後。可以透過一問一答的方式來查詢資料。 我也將相關的資料打包成一個 LINE Bot 的套件,大家可以看一下:

透過生成式 AI 打造 LINE Bot 的小訣竅

以下開始整理一些,你在打造生成式AI的時候可能會需要知道的小訣竅:

Tip1: 加上相關規則與規範式輸出

這篇可以參考教學影片(中文)

就像一開始在使用生成式 AI 開發相關的應用一樣,所有的工程團隊都在思考如何透過有效的「咒語」(也就是 Prompt) 跟 LLM 溝通。這邊有相當多的 prompt 可以有效地讓 LLM 盡可能地依照你的要求來做事,並且遇到其他額外的要求(比如說叫他寫一首詩)能避免掉。

要注意 Prompt 使用英文的效果會最好,雖然我們經常使用母語來問答。但是要走 API 的時候,建議還是要用英文。

Tip2: 教懂你的 LLM

第二個小訣竅,就是教導大家如何讓你的 LLM 更加的聰明。 雖然我們都知道現在使用的許多 LLM 都是相當的聰明,但是經常還是需要一些敘述來讓他更聰明,能夠有效地處理使用者的疑問。

這裡的案例是使用中央氣象局的天氣資料 API 的時候,在輸入地區的時候,由於官方系統規定使用的規定的縣市名稱來輸入。不能接受其他地區的輸入。比如說:墾丁,關西.. 這些不屬於台灣縣市的輸入。 甚至是「台北縣」「台北市」,因為他給的範例只接受「臺北縣」「臺北縣」。

這時候該怎麼辦呢? 只要在說明的 Prompt 中去詳細敘述即可,因為其實 Agent 的 說明 ‘Description’ 其實就是 Prompt 。詳細更多內容也可以參考這篇文章

Tip3: 專注的小幫手

最後給予大家一些小建議,建議儘量不要讓所有功能放在一個聊天機器人上。就像是開發 App 一樣,一個好的 LINE 官方帳號應該是盡可能的滿足使用者在一個方面的需求。 如此一來能將所有使用者體驗加以優化, 比如說:

讓你的 LINE 官方帳號創業夢實現

這裡跟大家分享,在沒有生成式AI 之前,其實許多交談對話的處理上都需要使用到 NLU(自然語言理解) 的技術。但是當時的 NLU 技術其實還有相當大的限制,造成許多的流程無法有效地改善整體使用者的體驗。

透過「生成式AI」的幫助,我們相信許多的流程會變得更加的簡單,不光只是將訊息丟給 LLM 來回答而已。更可以有相關更多的相關應用,比如說:

  • 一些行事曆的相關工具類別:
    • 透過 LangChain 的幫助,你可以快速打造一些打字就輸入相關記事的內容。透過將「新增記事」打造成一個工具,來連接到你的資料庫,或是一些雲端的工具來協助紀錄事項。 但是透過 LangChain 的 Agent 技術可以快速地去開發出透過口語化文字可以快速了解使用者的需求,再也不需要透過某一些「關鍵字」的處理方式來處理需求。
  • 一些文字導覽型的應用:
    • 透過文字導覽類型的應用,原本無法做成有效的 Q&A 。但是得力於 LangChain 甚至是 EmbedChain 的應用,我們可以將相關文件導入之後。讓生成式AI 聊天機器人來協助回答問題。

最後,生成式 AI 是一個很好的工具。可以讓你的 LINE 官方帳號更加的有溫度,我們也希望每一位開發者都可以嘗試將自己的 LINE 聊天機器人來加入相關的功能,讓我們的使用者與官方帳號能夠更加的「Closing The Distance」。

LINE Developers 相關技術文件與部落格:

活動小結

感謝最後一個議程的每一位聽眾。我相信我可能是前幾位在台灣大場地講 LangChain 的講者。 但是接下來開始自主性聊天機器人(Chat Bot) 或是代理人服務(Agent) 將會是市場上一個很主流的議題。

希望每一個開發者都能透過生成式AI 打造具有溫度的 LINE 官方帳號,一起來 Closing the Distance.

立即加入「LINE 開發者官方社群」官方帳號,就能收到第一手 Meetup 活動,或與開發者計畫有關的最新消息的推播通知。▼

「LINE 開發者官方社群」官方帳號 ID:@line_tw_dev

img

關於「LINE 開發社群計畫」

LINE 於 2019 年開始在台灣啟動「LINE 開發社群計畫」,將長期投入人力與資源在台灣舉辦對內對外、線上線下的開發者社群聚會、徵才日、開發者大會等,已經舉辦 30 場以上的活動。歡迎讀者們能夠持續回來查看最新的狀況。詳情請看:

[TIL] Knowledge Retrieval Architecture for LLM’s (2023)筆記

Knowledge Retrieval Architecture for LLM’s (2023)

在網路上尋找關於 RAG 跟 LangChain 相關的文章,偶然發現這篇好文: Knowledge Retrieval Architecture for LLM’s (2023)

摘要:

這一篇專門在講怎麼做一個 LLM Retrieval Architecture (中文不太會翻 XD) 從最簡單的 OpenAI Cookbook repo 到, RAG, RETRO 到 REALM 架構都有提到。

也有提出之前資料假象的問題,找了兩篇論文來討論 HyDEGenREAD

詳細解釋

查詢大型資料的問題:

  • 要小心 4000 token 的限制

  • Token 越多,處理速度越慢。

解決方式

img

  • (R: Retrieval)(上圖)透過外部資料的導入
  • 許多外部資料, txt/pdf/API 透過切開來後透過 Embedding 放入某些向量空間的 Embedding Store 之中。

img

  • (上圖)使用者問的問題,也透過 Embedding 來找到相關資料。 比如說: 問哪裡可以找到鍛鍊跟減肥的場地,就會跟健身房場地的「向量空間」相當的接近。
  • (A: Augment) 增強:
    • 將相關內容,跟使用者的問題,一起放在 Prompt 中去詢問。但是為了讓提問的答案效果會更好,可能需要有相關增強的相關語句。比如說:
    • 請用中文回覆
    • 請不要回覆你不知道的答案
    • 必要時候,請給我追問語句
    • 相關資料可以看: OpenAI Cookbook repo
  • G: Generative) 生成:
    • 就是把相關資料丟入 LLM 去生成解答。

優化設計

有一些方式可以優化以上的基本架構:

產生更有意義的 Retrieval 資料

  • Precise Zero-Shot Dense Retrieval without Relevance Labels: (a.k.a. HyDE: Hypothetical Document Embeddings~(HyDE).)
    • 論文摘要:
      • 本文提出了一種通過虛擬文件嵌入來解決零樣本情況下的密集檢索系統的困難。在沒有相關性標籤的情況下,HyDE通過指示模型生成虛擬文件,該文件捕捉了相關性模式,但仍然不真實且可能包含錯誤細節。然後,通過無監督對比學習的編碼器將該文件編碼為嵌入向量。該向量在嵌入空間中識別出一個近似的鄰域,根據向量相似性檢索出相似的真實文件。我們的實驗結果表明,HyDE明顯優於最先進的無監督密集檢索器Contriever,在各種任務(例如網絡搜索、問答、事實驗證)和語言(例如瑞典語、韓語、日語)上表現出強大的性能。
    • 透過 LLM 來增加文章本體的上下文,透過這樣的方式來增加整體回覆的完整性。也能進而提升回覆的正確性。
  • 名為“生成然後讀取”(GenRead): Generate rather than Retrieve: Large Language Models are Strong Context Generators
    • 論文摘要:
      • 本論文提出了一種解決知識密集型任務的新方法,該方法使用大型語言模型生成文檔,而不是使用文檔檢索器。這種方法首先給語言模型提供問題,生成相關的文檔,然後閱讀這些文檔以生成最終答案。此外,作者還提出了一種基於聚類的提示方法,從而選擇不同的提示,生成涵蓋不同觀點的文檔,從而提高答案的回收率。研究人員在三個不同的知識密集型任務上進行了廣泛實驗,包括開放領域問答、事實檢查和對話系統。其中,該方法在TriviaQA和WebQ上取得了71.6和54.4的精確匹配分數,明顯優於目前最先進的檢索-閱讀流程DPR-FiD的+4.0和+3.9,而且不需要從任何外部知識來源檢索文檔。最後,作者還演示了通過結合檢索和生成可以進一步提高模型性能。相關代碼和生成的文檔可以在https://github.com/wyu97/GenRead 找到。
    • 也是類似 HyDE 的方式,而是採取多個上下文的方式來確保內容更有意義。

相關資料