LINE Corporation 於2023年10月1日成爲 LY Corporation。LY Corporation 的新部落格在這裏。LY Corporation Tech Blog

Blog


Tackle the infodemic of misinformation from LINE

前言

大家好,我是 LINE台灣的 TECH FRESH - Jimmy Huang,很高興今天有機會與 GDSC 的同學分享關於 LINE FACT CHECKER 與實習生活的經驗分享,以下將會透過文章帶大家了解一下當天分享的內容!

什麼是 LINE FACT CHECKER?

LINE FACT CHECKER 是一個由 LINE 推出的功能,旨在幫助使用者在使用 LINE 時可將 LINE 群組的訊息轉傳至該官方帳號,而官方帳號便會自動與查核平台比對,告知是否內容有誤,確認新聞或訊息的真實性。對網絡上的謠言、不實信息和虛假消息進行事實查證回覆給使用者。

使用 LINE FACT CHECKER 的好處在於幫助使用者避免相信不實訊息、防止流言蜚語和錯誤的判斷,從而確保使用者能夠接收到準確、可信的消息和資訊。特別是在當今數位時代,網絡上的訊息量龐大,有很多虛假信息和謠言,使用 LINE FACT CHECKER 能夠有效幫助使用者辨別信息的真假,提高其資訊素養和安全性。

為什麼要訊息查證?

  • 數位時代的大量訊息:面對資訊氾濫的網路年代,訊息傳播快速,閱聽眾每天都在接收龐大的資訊量,然而如何判斷訊息真偽,不光是現今國際社會議題,更是全球公民終生課題。
  • 防止不實訊息的傳播:不實訊息的傳播可能會導致公眾恐慌、對政府和企業的信任降低、社會穩定性下降等問題。因此,進行訊息查證可以防止不實訊息的傳播,保障社會的穩定與安全。
  • 提高訊息素養:進行訊息查證可以幫助人們更好地了解和分辨不同訊息的真假,提高其訊息素養和媒體識讀能力,從而更好地適應數位時代的訊息環境。

總之,進行訊息查證是維護公共利益和社會穩定重要的一環,也是提高大眾訊息素養的一大途徑。

什麼類型是假訊息?(引用來源)

假訊息是指意圖明確,刻意以傳統或社群媒體之新聞形式來傳播錯誤資訊,以誤導大眾並帶來政治或經濟利益,大致上可分為幾種類型:

  • 完全造假: 有意圖的捏造: 大阪機場事件
  • 移花接木: A 事件配 B 圖、甲地事件放到乙地、他說的變她說的、影音剪接(印尼大地震)
  • 以訛傳訛: 謠言恆久遠、一堆永流傳,包括時間錯置,拿之前之事件遭誤以為最近發生,毫無根源之文章(例某某名人說....),或生活健康文
  • 斷章取義: 操作標題(例學姐陪吃飯)、圖片角度(例遊行多少人)、採用有利的統計數字等。

聊聊實習生活

Developing Process

提到開發流程,以git flow 為例.

  1. 首先開發者先建立PR,將程式送到應用程式的程式庫(Application Repository)
  2. 當程式推上應用程式的程式庫後會觸發 test 的pipeline
  3. 將測試的結果和程式覆蓋率(code coverage),推到開源程式檢查平台 Sonarqube上面提供開發者參考程式碼引用的套件安全性等
  4. 第三者開發者-Reviewer進行code review 和檢查測試結果,如果皆有達標就可以將程式送到主要程式庫
  5. 觸發pipeline,將程式建立和打包成images
  6. 將image 推上 GitHub Harbor
  7. 將最新的image version 送到Development-manifest Repository
  8. 更新的image version 透過Argo CD 將image version 更新到Kubernetes 上
  9. 從Github Harbor 將image pull下來並且部署 到Kubernetes 上面

Cross-functional Teams

LINE FACT CHECKER 的團隊成員有:

  • Planner: 提出需求給Dev 進行開發
  • Dev:實作Planner 給出的需求
  • QA:測試Dev 撰寫的程式邏輯

Task Processing

過去訊息查證的內容,主要是以文字訊息為主,而當今文字訊息會放到圖片當中,為了因應照片盛行,於是有在著手進行光學文字辨識(OCR)的服務,完善LINE FACT CHECKER 訊息查證之功能.

Coding & Coding …?

在實習中,除了coding 和coding 以外,我在實習中還會做以下四件事,

  1. 考古(Archaeologists): 在維護舊有的服務時,會遇到大量的遺留程式碼(legacy code),要先理解,再進行修改.最怕的是更動幾行程式,這支程式便無法運作了.於是學習如何處理遺留程式碼是非常重要的.
  2. 程式開發(Coding): 在實作程式時,需要注意design pattern,將自己寫的程式寫好,讓後續開發的人更好維護.
  3. 寫測試(Writing test cases): 單元測試是測試程式碼每段的邏輯概念是否正確,節省除錯時間.
  4. 員工訓練(Internal Training): 在公司內部,不定期有員工訓練,以我參加過的其中一場工作坊-SbE(Specification By Example)為例,在不同團隊間如何正確溝通需求是非常重要的,若Dev對於Planner 給出的需求理解有誤,有可能就會得出截然不同的結果.藉由內部的員工訓練能持續提升工程師的自我能力.

結論

綜合以上,我在實習中得以運用過去學到的理論基礎,將其實作出來;也能接觸到許多新穎的技術,增強自身的開發能力。

最後,感謝陽明交大+清大GDSC的參訪,希望參訪的同學能收穫滿滿。

若您對 LINE TECH FRESH 有興趣,請參考以下介紹文章:

活動小結

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

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

關於「LINE 開發社群計畫」

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