Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

大型語言模型(LLM)的讀書會內容code部分整理,此github提供簡單、免費、易實作code範例,並由淺入深帶你一步步了解如何基於python建置LLM流程、部屬功能等

NotificationsYou must be signed in to change notification settings

PipiHi0926/llm-course-zh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


內容簡介:

  1. 🍻LLM基礎改念: 本讀書會將整理一些LLM的基礎需求知識,但github上放的是實作資源為主不會講述太多,有興趣請再密我
  2. 🛠️LLM相關工具: 以下內容全基於python實踐,同時會分享相關資源、套件、開源API...
  3. 💬LLM系統架構: 會帶你由淺入深,慢慢了解部屬LLM系統(多Agent)的方向和一些好用工具

這個分享內容宗旨:

  1. 🧩讓你好上手: 提供最簡單的、盡可能可複製即用的code,讓新手也能盡可能快速入門 (而且是中文XD)
  2. 🎈讓你免費玩: 全基於開源資源,讓你能夠無痛體驗LLM的功能和操作
  3. 😊讓你喜歡上: 盡量提供簡單有趣的小例子,附上完整註解說明,讓你也能喜歡LLM可帶來的運用

範例使用版本/輔助工具:

  • Python 3.12.4
  • 語言模型主要使用 llama-3.1-70b-versatile
  • 個人主要使用 IDE: VScode
  • 搭配工具 寫程式大幫手Copilot
  • 其他: 使用pylint 擴充套件來管理 Python 程式碼的風格

主要資料來源:💻資料來源1: 偉大的Github🤗資料來源2: 偉大的抱抱臉👨巨人的肩膀: LLM相關工具大整理


課程內容

alt text(因分享會有搭配我的簡報才會以這個架構講述,實際上這些課程無直接連貫性!!!)

✔️ Part 0: LLM 導論 (Instruction)

(這些皆以前讀書會簡報內容,恕此處跳過)

💡本章節讓你從0開始,讓你了解AI到底是啥、LLM基礎原理到底是怎麼運作的,以及了解踏入LLM這塊領域時你必須了解的相關的名詞和知識

主題簡介類別NotebookResource
I1-人工智慧簡介與發展近況什麼是AI? 發展學派與歷史脈絡基礎課程見讀書會ppt
I2-機器學習基本概念機器/深度學習最最最白話版基礎概念基礎課程見讀書會ppt
I3-LLM基礎原理Token, Embedding, Transformer...等基礎基礎課程見讀書會ppt
I4-LLM相關知識提示工程、RAG與LLM框架、Fine-tuned,模型超參數基礎課程見讀書會ppt
I5-實踐工具LangFlow / Flowise 快速實踐工作流程延伸補充flowiselangflow
I6-簡易部屬內部使用OpenWeb UI / Anything LLM部屬延伸補充見讀書會pptOpenWebUI

✔️ Part 1: Python 基礎實踐與建立流程

💡本章節你將了解LLM的基礎使用和部署概念,從如何使用LLM、如何建立簡單介面展示、建立流程並管控這些流程等並補充一些RAG和fine-tuned的先備知識

主題簡介類別Notebook
C0-前置作業與基礎工具建立虛擬環境、基礎python輔助工具前置準備C0
C1-簡單使用範例Groq操作、程式實踐基礎問答基礎課程C1
C2-立刻部屬簡易系統Gradio快速實踐系統介面、即時對話系統基礎課程C2
C3-已結合LLM的一些開源工具一些AI工具如open-interpreter,Scrapegraph-ai...額外分享C3
C4-進階RAG操作Reranker概念和效果延伸補充C4
C5-實踐LLM服務Agent流程-1基於Langchain架構下的LangGraph實踐進階課程C5
C6-實踐LLM服務Agent流程-2基於Langchain架構下的LangGraph實踐進階課程C6
C7-將Agent流程進行管控使用langsmith來管理、更清楚瞭解建立的流程進階課程C7
C8-fine-tuned簡易操作範例使用Unsloth簡易實踐qLora fine tuned(只放程式碼、不實際運行)進階課程C8

alt text

✔️ Part 2: Routing in RAG-Driven Applications

💡 本章節你將學會更進一步的資料處理流程,最終完整流程(Data Ingestion)可能包含:

  • Loaders ➡️ 允許與外部源集成以上傳信息

  • transormers ➡️ 各種資料處理流程,如 parse (轉換), split to chunk(分割), extract(擷取), embedding(向量化)... 等多種流程

  • Vector Stores ➡️ 將資訊存入向量資料庫

  • Retrievers ➡️ 建立用於信息檢索的組件,從大規模文本數據集中檢索相關信息,即實踐RAG

  • LLM Agent / Tools ➡️ 各個處理問題的Agent、LLM模型或各種工具

  • Memories ➡️ 可能會有記錄對話的需求,特別當你建立的是對話式的LLM應用時

  • Output Parsers ➡️ 把結果轉換成需求的格式,常見如json, md...

主題簡介類別Note
C9-文本資料處理基礎文檔spit, parse, extract等概念和建立pipeline基礎課程C9
C10-文本處理流程概念接續C9,資料處理、Ingestion Pipeline與RAG routing基礎課程
C11-向量資料庫建置與各功能chroma, weaviate, pinecone...基礎課程
C12-常見其他流程框架流程框架如DSPy介紹額外分享
C13-其他資料庫結構知識圖譜與GraphRAG延伸補充

✔️ Part 3: Data curation & safeguard conversation

主題簡介類別Note
C13-NeMo CuratorNVIDIA NeMo 生態系統相關介紹https://github.com/NVIDIA/NeMo-Curator

先備知識

1. LLM是什麼 ?

  • 大型語言模型 (Large Language Model) 的簡稱
  • 你可以把他理解成是一個模型,能根據輸入的文字生成文字回傳,就像在做文字接龍一樣
  • 背後深度學習, Tokenization, embedding, attention機制, Transformer 等相關介紹詳見以前分享alt textalt textalt text

2. Hugging Face 🤗 是什麼?

3. Llama 🦙 是什麼 ?

  • Llama是Meta開發的一系列大型語言模型,如llama2, llama3, llama3.1
  • 這些語言模型都是免費的!!也能自行去做模型參數微調訓練(Fine-tuned)
  • 至於其他常見付費LLM則包含Open AI,Claude系列...

4. Ollama 是什麼 ?

  • 開源的本地端LLM平台
  • 允許用戶在自己的電腦上運行和調用多種開放原始碼的語言模型
  • 若要部屬自己公司/組織內部的LLM,可以運用其資源
  • 建議可搭配Open WebUIAnythingLLM實踐UI操作介面和管理

5. LangChain 是什麼 ?

  • LangChain是LLM框架,目的在簡化使用大型語言模型(LLMs)開發應用程序的過程
  • 你可以簡單理解成他是個工具箱,把LLM操作過程可能需要的工具、外部數據源整合起來
  • 有這個工具箱,你就能更方便的調用他撰寫python llm相關程式
  • 其他優勢包含很多延伸服務和工具也基於他被開發出來 (如後面會講到的LangGraph)
  • 對於新手而言,他官網上也有非常大量範例程式輔助你實踐llm
  • 其他常用框架還有LlamaIndex,其更擅長處理文本(e.g.非結構資訊)、自定義知識庫、有多種索引查詢功能

6. 機器學習 (Machine Learning)、深度學習 (Deep Learning )、人工智慧 (Artificial Intelligence) 之間的關聯是?

  • AI (人工智慧) 泛指使電腦和機器能夠模擬人類智慧和解決問題能力的技術,做到各種人類的判斷或行為
  • ML (機器學習),則是一種常見的技術手法,你可以想像成找出一個 𝑓(𝑥),可以根據輸入值生成想要的結果
  • 至於 DL (深度學習),則是ML領域中基於神經網路(NN)的概念,一種表現亮眼的技術類型
  • GAI (生成式人工智慧) 則是當中一種可以創造新內容和想法的AI概念,如創造對話、故事、影像、視訊和音樂!
  • 當今(2024.6),GAI領域、如本讀書的重點LLM,當中最主要仰賴的技術模型就是DL為主!!!
  • 見下圖,你就能很清楚知道他們之間的關係!!!!!

alt text

7. Transformer 是什麼 ?

  • Transformer是一種深度學習模型架構,在多種自然語言(NLP)任務處理表現出色
  • 為當今(2024)生成式AI的浪潮重大突破的核心技術概念

alt text

  • ChatGPT 裡面的 "T",指的就是Transformer喔!

alt text

  • 你可進一步藉由這個網站,看transformer是如何運作的!!! (使用gpt2)

8. 我該使用什麼模型?

  • 模型更新很快,且不同模型在不同面相有不同表現,我這邊不會特別推薦一定要用哪個!
  • 模型普遍理論上,參數越多效果越好,但所需資源空間也越大,如Llama 3.1 405B就代表他是405billion參數的大模型
  • 建議去看HuggingFace上的LeaderBoard,看看個模型在不同面向、語系的排名
  • 若是要用開源LLM模型,建議可先去Together.ai之類的免費測試不同模型效果~ 再決定用哪個
  • 這邊範例,都會是以免費、開源的模型為主!! 甚至是用一些直接免下載模型的API~

主要使用的課程套件/工具/架構運用摘要

  • C0: 可略過

  • C1: Langchain, Groq, llama_index

  • C2: Gradio

  • C3: 可略過

  • C4: Sentence-transformer, Reranker (with Jina)

  • C5: Langchain, LangGraph

  • C6: Langchain, LangGraph

  • C7: LangSmith

  • C8: Unsloth

  • C9: llama_index

  • C12: DSPy

接下來就請去各ipynb筆記上去了解如何操作吧 ~

補充: 愛用工具/連結推廣

  1. Langflow /Flowise: 帶你實踐no code介面串接開發大型語言模型應用程式

  2. COZE (以前免費常用...但現在QQ): 快速部屬LLM服務、Agent、建立dicord bot、設計workflow等,介面很舒服

  3. perplexity: 目前(2024.7)用起來最順的LLM輔助網頁搜尋工具

  4. claude 3.5 sonnet: 目前(2024.7)覺得code表現能力最棒的LLM,特別是他的Artifacts功能

  5. 寫程式一定要Copilot Github 或是嘗試近期(2024.7)熱門的Cursor,後者我雖沒在用,但都很推

自學連結

  1. Hugging Face, Github;甚至是GAI年會、臉書社團, iT 邦幫忙, Medium 文章等資源

  2. LLM roadmap學習方向 – 技術面 & 應用面 (github)

  3. 李宏毅 – 生成式導論2024(YT)

  4. 李宏毅 – 【機器學習 2023】(生成式 AI)(YT)

  5. 李宏毅 – 【機器學習 2022 】(YT)

  6. 陳縕儂 – 深度學習應用、人工智慧導論(YT)

  7. LLM相關論文整理日更 (github)

  8. 諸多YT上資源

    • 01Coder
    • 零度解說
    • 最佳拍檔
    • 王木头学科学
    • Ph.D. Vlog
    • AI Jason
    • AI超元域
    • 跟李沐学AI (Mu Li)
    • GrandmaCan -我阿嬤都會
    • 3Blue1Brown
    • AI小码哥
    • 解密遊俠
    • Leon van Zyl
  9. LLM資源彙總(github)

  10. llama中文社區

Backup URL

問題回饋 🤔

如有問題,歡迎用各種方法直接聯繫我,或在GitHub Issue中提交喔~

FB    Instagram    Gmail    medium    Linkin

版權所有© 2024 鄭永誠 YC-Cheng (Jason)。保留所有權力。

About

大型語言模型(LLM)的讀書會內容code部分整理,此github提供簡單、免費、易實作code範例,並由淺入深帶你一步步了解如何基於python建置LLM流程、部屬功能等

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp