使用 Outlines 工具結構化模型的輸出
在將大型語言模型(Large Language Model, LLM)應用於實際場景時,經常不僅僅是讓模型自由發揮、任意生成文句 —— 我們也可能會希望模型返回特定的結構,比方說做選擇題、或是給一個評分。在這樣的情況下,transformers 架構的模型可以直接使用 outlines 這個工具。
Read More »使用 Outlines 工具結構化模型的輸出在將大型語言模型(Large Language Model, LLM)應用於實際場景時,經常不僅僅是讓模型自由發揮、任意生成文句 —— 我們也可能會希望模型返回特定的結構,比方說做選擇題、或是給一個評分。在這樣的情況下,transformers 架構的模型可以直接使用 outlines 這個工具。
Read More »使用 Outlines 工具結構化模型的輸出現在 LLM 的服務已經涵蓋了各式各樣的領域,而提示注入(Prompt Injection)和越獄(Jailbreak)對 LLM 的威脅也是與日俱增,幾個月前甚至有客服 LLM 給了客戶錯誤的資訊導致權益受損呢(雖然那不是 Prompt 攻擊造成的)。
而 Microsoft 所開源的 BIPIA(Benchmarking and Defending Against Indirect Prompt Injection Attacks on Large Language Models)評估方法,雖然已經是半年前的測試了,到現在也沒什麼大更新,但是應用在我手邊的任務中,仍不失為一個方便簡潔的測試方法。
Read More »使用 Microsoft BIPIA 框架評估 LLM 防禦能力時至今日有許多的 AI 應用、開源專案是以 HuggingFace 開源的 transformers 套件為基底下去開發的,有許多的模型與套件也都是寫成兼容 transformers 的格式、甚至擁有一樣的函式跟方法,才更容易為人所接受。
在這樣的前提下,我偶然使用了一個開源的訓練框架,它很好地封裝了 Transformer 架構的自動讀取 —— 但一個不得不解決的問題是我希望使用我自定義的模型去做實驗;我嘗試了幾個解決方法,目的是希望使用 AutoModel.from_pretrained()
的時候,只要傳入我本地端的模型路徑,就可以正確使用我自定義的模型架構,於是就把成功的方法紀錄於本篇筆記中。
交叉熵是機器學習(Machine Learning) 中非常常見的損失函數,這是因為其交叉熵是一種可以在『分類任務』中,將模型分類預測結果和實際分類標籤之間的差異做出量化。
Read More »[Machine Learning] Cross Entropy Loss 筆記Cross-lingual Modular (X-Mod) 是一個有趣的語言模型架構,透過模組化不同語言的參數作為模組單元(Module Unit)組裝在模型中,好讓語言模型在新增全新語言時,可以使用獨立的參數進行微調,而(比較)不會出現災難性遺忘的窘境。
Read More »[論文閱讀] Lifting the Curse of Multilinguality by Pre-training Modular TransformersHuggingFace 所提供的 TGI (Text Generation Inference) 是一個專門用來佈署、加速 LLM 推理服務的框架,以下是它的架構圖:
Read More »HuggingFace Text Generation Inference (TGI) 筆記從去年開始我就對多模態(Multi-Modal)的 AI 模型充滿了熱忱與好奇,因為我是堅定不移的 AGI 派,認為 AI 目前的潛力仍然遠遠沒有抵達天花板;而 AI 當前的一大瓶頸與研究方向,自然就是整合了多種不同的模態(文字、圖像、音訊...)的模型應用了。
Read More »使用文字檢索圖像: ColPali 多模態模型簡介Meta AI 在近期開放了 Llama 3.1 的各種量級(405B、70B、8B),尤其是 405B 更是引人注目,可謂是開源的 LLM 第一次追上了如 GPT-4、Claude-3.5 等閉源的大型語言模型。而與此同時,Meta AI 也開源了一個小模型 Prompt-Guard-86M。
Read More »Meta-llama--Prompt-Guard-86M: 提示防護的開源模型,偵測惡意攻擊 Prompt最近我在探索一些用來進行光學字元辨識(Optical character recognition, OCR)的模型,早些年 OCR 是研究非常熱門的領域,畢竟是電腦視覺最早可落地應用的領域;但是到了今日,OCR 也已經是非常成熟的任務了,上網一找,便可以找到性能很好的開源模型。
Read More »PaddleOCR: 擅長中文光學字元辨識(OCR)的架構與模型在如今各種大型語言模型百花齊放的時代,各方研究者與企業都絞盡腦汁,想辦法將大型語言模型應用在手邊的工作中;但說句我個人的心裡話,現今各種語言模型的性能仍舊不夠強,其應用的場景很少,許多時候是遠遠比不上人類的。
但有一種任務類型是大型語言模型天生就相當合適的:任意場景的資訊萃取,也即是我今天想介紹的 NuExtract 模型。
Read More »NuExtract: 使用大型語言模型進行資訊萃取