生成式人工智慧是一種人工智慧系統,能夠產生文字、圖像或其他媒體以回應提示工程,比如ChatGPT。產生模型學習輸入數據的模式和結構,然後產生與訓練數據相似但具有一定程度新穎性的新內容,而不僅僅是分類或預測數據 – Wikipedia
What is LLM?
一個大型語言模型(LLM)是一種由神經網路組成的語言模型,具有大量的參數(通常有數十億個權重或更多),並在大量無標籤文本上使用自監督學習進行訓練。LLM約在2018年出現,並在各種任務上表現出色 儘管大型語言模型這個術語沒有正式定義,但它通常指的是參數量在數十億或更多的深度學習模型。 — Source: Large language model 和生成式AI (AIGC) 的關係是? Generative AI 泛指所有可以 生成內容的 AI,包括文字、影像(Midjourney, Stable Diffusion 等) 包括 LLM,這裡我們只談 LLM Source: Artificial Intelligence, Machine Learning , Deep Learning, GenAI and more
What is Prompt?
Prompt是一個在自然語言處理中常見的術語。它是用來引導模型生成特定類型的回應或文本的指令或問題。 當使用生成式AI模型時,通常需要提供一個prompt來指示模型生成所需的內容。這可以是一個問題、一個語句或一個段落。 通過精心設計和調整prompt,可以影響生成的回應的風格、內容和質量。Prompt engineering是一個重要的技巧,可以幫助提高生成式AI的性能和適用性。 在使用Prompt時,需要考慮到模型的預設行為、文本理解的能力以及所需的輸出。通常需要通過實驗和調整來找到最佳的prompt設計。
Prompt Engineering 課程
View more
RAG 和 Fine-Tune 比較
Fine-Tune 微調模型 RAG (Embedding) 比喻 就像考試前認真讀書,考試 closed book 去回答考試題目。 就像考試 open book,帶筆記去考試,若筆記上有寫可以回答的很好 缺點 訓練模型需要花時間和計算成本,不可能隨時訓練更新資料 仍有 Token 長度限制 要用工具抓資料因此處理時間較長 優點 品質可能更好,這需要機器學習專業知識 不用擔心新資料更新
何時用 RAG? 何時用 Fine-Tune?
何時用 RAG? 何時用 Fine-Tune?
範圍界定
範圍界定:計劃並檢查項目或產品的範圍是否適合機器學習模型。您可以使用以下表格來評估您的項目:
數據工程
數據工程:建立數據處理流程,我們可以稱之為數據運營(DataOps)流程,包括以下方法: E:數據提取 - 收集數據 T:將數據轉換為數據集並標記數據集。 L:將數據集加載到數據庫或文件系統中。 P:檢查數據分析內容。我們可以使用儀表板展示數據洞察力並持續修改數據ETL流程。 A:檢查數據質量和斷言狀態。在使用數據之前,我們必須確保數據集的質量可以得到保證。
模型工程
模型工程:以下是構建建模流程的一些步驟。 模型構建:初始化模型流程和回調方法。 模型訓練:使用機器學習或深度學習模型對數據進行訓練。同時,我們需要定義衡量標準並跟踪模型性能。例如,混淆矩陣方法或準確度指標。 模型評估:檢查模型是否準備好進行部署。例如,如果準確率大於0.95,則可以切換到新模型。 模型登記:登記模型並將其放入生產等待隊列中。 模型部署:使用Docker化方法將模型打包並部署到雲端或邊緣設備作為端點。打包方法可以是API服務器或無服務器方法。 模型監控:監控模型服務性能,包括兩個方面: 監控部署基礎設施:例如負載、使用情況、存儲和健康狀態。 監控模型性能:監控模型和數據的性能,以確定是否需要重新訓練模型。
根據需求,規劃自己所需要的工具
專案規劃好後,根據專案需求,來找出對應的工具來去使用
應用: 透過 Gitlab CI/CD Pipeline 做 MLOps Pipeline
連結:Medium 文章
Comparison: Closed Source LLM Model
OpenAI GPT Model Anthropic Claude Model Google Gemini Model MistralAIMistral Model 模型能夠理解/回覆繁體中文 O O O O LLM Model GPT 3.5GPT 4GPT 4o Claude 2.1 (200B)Claude 3 Haiku (20B)Claude 3 Sonnet (70B)Claude 3 Opus (2T)Claude 3.5 Sonnet Gemini Pro 1.0Gemini Ultra 1.0Gemini Pro 1.5Gemini Ultra 1.5 Mistral MediumMistral Large Context Window GPT 3.5: 4-16KGPT 4: 32, 128K 200K Gemini 1.0: 8KGemini 1.5: 128k~1m 32K 釋出時間 GPT-3: 2022GPT-4: 2023GPT-4o: 2024 Claude 2: 2023Claude 3: 2024.03Claude 3.5 Sonnet: 2024.07 Gemini 1.0: 2023Gemini 1.5: 2024.02 2024.02 雲端服務供應商 Azure Cloud Azure, AWS (Bedrock). GCP (VertexAI) GCP Azure, AWS, Snowflake Source: https://tinyurl.com/2mwdsrcj
Comparison: Open Source LLM Model
Meta Llama Model Meta Phi Model MistralAIMistral Model Google Gemma Model 模型能夠理解/回覆繁體中文 O (Llama 3) O (Phi-3) O O LLM Model Llama 3.1 8BLlama 3.1 70BLlama 3.1 405B Phi-3-mini (3.8B)Phi-3-small (7B)Phi-3-medium (14B) Mistral 7BMistral 8×7BMistral 8×22B Gemma 2 2BGemma 2 9BGemma 2 27B Context Window 8,192 tokens 4K / 128K 32K 8K 模型架構 TransformerMoE Transformer TransformerSMoE Transformer 釋出/更新時間 2023.07 / 2024.04 / 2024.07 2024.01/2024.04 2024.07 2024.06/2024.07 Source: https://tinyurl.com/2mwdsrcj
非常缺乏繁體中文的開源大型語言模型
資料來源: Llama 2 論文
Comparison: Open Source zh-TW LLM Model
Taiwan Llama Model Breeze/Breexe Bailong TAIDE LLM Model Project TAMELlama-3-Taiwan-70BLlama-3-Taiwan-8B Breeze 7BBreexe 8×7B Bailong-7BBailong-orpo-7B TAIDE-LX-7BLlama3-TAIDE-LX-8B(測試中) 出版單位 林彥廷博士生 聯發科 群創光電 國科會 Base Model Meta Llama 3 Mistral 7B Meta Llama 2 Meta Llama 2/Meta Llama 3
中研院 CKIP-Llama-2-7b 事件
Jieba and CKIPtagger 比較項目 Jieba CKIPtagger 算法原理 基於字典樹結構實現的高效率分詞算法 基於深度學習的分詞系統 語言模型 統計模型 神經網絡模型 效能 較快,適合大規模文本處理 較慢,因為使用深度學習模型 準確性 良好,尤其是在通用型文本上 高,特別是在有專業領域訓練時 開源狀態 開源 開源 → Jieba 主要來源是簡體中文、繁體中文雖然有,但無人進行維護,所以現在不少專案都使用CKIPtagger 來進行 NLP 專案實作 簡介 CKIP-Llama-2-7b 中央研究院詞庫小組(CKIP)開發的開源可商用繁體中文大型語言模型(large language model) 以商用開源模型Llama-2-7b以及Atom-7b為基礎,再補強繁體中文的處理能力,並對405個可商用的任務檔案同步進行訓練優化,參數量達70億(7 billion)。 提供大眾下載,作為學術使用或是商業使用。 也可以使用自己的訓練資料集進行訓練,快速構建出一個可以滿足自身任務需求的模型。 模型僅需一張 12G 記憶體容量的GPU即可佈屬。 事件導引線與 Lesson Learn 【更新中研院聲明】繁中 LLM CKIP-Llama-2-7b 翻車?使用簡中資料集有什麼問題? - INSIDE Lesson Learn: 此模型可以說是「會有邏輯的回答繁體中文回覆」,可是回覆內容就可能就要忽略,主要是在資料前處理上,沒有針對台灣知識去多做處理,反而學習到更多的中國資料,導致有此問題。 其實避免此事,在 DevOps 或 MLOps 的軟體工程系統上,可以做所謂 Golden testing dataset,在上版前做好測試,只是在高品質資料不足情形下,通常資料科學家/機器學習工程師不會特別設置此事情。 好資料取得不易,包含 Taiwan-LLaMa, Mistral 7B, TAIDE 都是在資料前處理上下了一番功夫才想提供給大家使用,期待立法與行政單位能夠趕快給予指引,讓大家知道台灣是否能夠使用版權資料進行訓練,另外,也請大家給予這類型模型製作者耐心,畢竟這類型模型大概能力跟小朋友一樣,教他需要花費時間,並且也很需要回饋工具,讓這樣的模型能夠做得更好! 核心技術與基礎建設導入問題: 是否能夠有人伸手進去處理髒資料? 是否願意投資大筆金額,來進行可能高機率無法回本的基礎建設? 是否能以長遠角度,來看 AI 與 LLM 浪潮? 該怎麼做可以避免? 自己先寫 20 題問題與解答: 中華民國國慶日是哪一天? Answer: 10/10 中國國慶日是哪一天? Answer: 10/1 生題目:
類似於教小孩在規則中玩遊戲的過程
告訴他遊戲的規則
在玩的時候給他指導,比如告訴他哪些舉動是好的,哪些可能不是最佳選擇。
這個過程中,小孩逐漸學會怎樣更好地玩這個遊戲。
Retrieve Data/Documents
Original Data → Parsing → Chunking → Embedded 轉換成為矩陣 → Embedding Database → RAG
AWS Cloud
Medium Post: AWS Bedrock 在 AWS 雲端建置 Claude 3 LLM 服務 — Amazon Bedrock 工作坊筆記紀錄
Google GCP Cloud
Google Cloud Vertex AI Vector Search Google Official Doc: Google Cloud Vertex AI Vector Search Bigquery: Google Official Doc: Bigquery Pgvector: Google blog: Building AI-powered apps on Google Cloud databases using pgvector, LLMs and LangChain