https://github.com/Deep-Learning-101 | https://huggingface.co/DeepLearning101
在踩了深度學習 (包含圖像識別、自然語言處理、語音處理等) 及現在最夯的大型語言模型 (Large Language Model, LLM) 一些會踩的坑後,應該都稍微有匯整到跟放到 HF Space 了?特別是現在很多人或公司跟單位都會先嘴自己有在做GenAI或者是大模型,怎麼判斷呢?先問問對方有幾張什麼類型的GPU吧 !!!
那些大型語言模型要踩的坑 | 什麼是大語言模型,它是什麼?想要嗎?
大型語言模型之 Cryptocurrency Exchange FAQ
多模態大型語言模型之單據核銷
大型語言模型之 High Entropy Alloys FAQ
為啥這篇會想來分享一下跟在大量資料上訓練的 LLM,其最大差異就是能專注聚焦局部搜尋在我們私有資料上 的檢索增強生成 (Retrieval-Augmented Generation, RAG) ?畢竟再怎樣我不少論文勉強都算是做 Ontolgy 的啊,還因此在流浪到英國時特地去了趟 Ontology大本營,OWL.Manchester 啊 ! 不過,先簡單講一下本地端怎樣做RAG ?
curl -X POST -F "file=@/path/to/document" http://localhost:8000/parse_document
- 向量檢索:透過生成查詢嵌入並查詢與其向量表示最相似的文字分段
- 全文檢索:索引文件中的所有詞彙,從而允許使用者查詢任意詞彙,並返回包含這些詞彙的文字片段
- TopK:這是用來找到與使用者輸入的問題相似度最高的文字片段。
- Score 閾值:這是設定文字片段的相似度閾值,也就是只召回超過設定分數的文字片段。
- 混合檢索:同時全文檢索和向量檢索,並使用ReRANK重新排序,從兩類查詢結果中選擇匹配使用者問題的最佳結果,需配置 Rerank 模型 API。
- ReRANK:計算候選文件清單與使用者問題的語意匹配度,根據語意匹配度重新進行排序,進而改善語意排序的結果。
2023/08 公司添購 RTX 6000 Ada 48 GB * 2 和 A 100 80GB * 42024/05 公司添購RTX 6000 Ada 48 GB * 8 * 2
先附上網路陸續找到的一些教學文章
原始碼解讀- 微軟GraphRAG框架 | 微軟近日開源了新一代RAG框架GraphRAG
你想要的GraphRAG的內容都在這裡了 | GraphRAG:知識圖譜+大模型
微軟開源的GraphRAG爆火,Github Star量破萬,生成式AI進入知識圖譜時代?
動手實操微軟開源的GraphRAG | 當RAG遇見LLM,以檢索增強為導向的大語言模型
手把手教你建構基於知識圖譜的GraphRAG之結構化資料篇【LangChain+Neo4j】
借助Hybrid RAG 實現AI 模型高效能與資料隱私保護
HybridRAG: 融合知識圖譜與向量檢索的新型資訊擷取方法
Kotaemon:本機Graph RAG UI,以Graph RAG 和Hybrid RAG與文件暢聊
另外補上這個新的,可惜我的 NVIDIA 的 API KEY 額度用完了,來不及重截圖
HybridRAG 是一種結合了基於知識圖譜(KGs)的 RAG 技術(稱為 GraphRAG)和 VectorRAG 技術的系統,專門用於增強從文件中提取資訊的問答(Q&A)能力。此系統已被證明能夠生成準確且具上下文相關性的答案。
https://github.com/microsoft/graphrag
From Local to Global: A Graph RAG Approach to Query-Focused Summarization
git clone https://github.com/microsoft/graphrag.git
#initialize:python -m graphrag.index --init --root .
#index:python -m graphrag.index --root .
#query:python -m graphrag.query --root . --method global "query"
#query:python -m graphrag.query --root . --method local "query"
但截至本文的整理,根據官方的論文和一些 issue 跟範例:During our research we got the most quality out of gpt-4, gpt-4-turbo and gpt-4o, that's why out of the box we include support for these in both OpenAI and Azure environments. 看來官方是覺得比不上,所以就沒針對自己地端佈署運作有深入研究 !!! Regarding local hosting there's a very interesting conversation going on in this thread #339;初步評估結果是,以KG為基礎來做RAG,確實會因為具備所謂的 實體 (entity)、關係 (relation) 等,而優化了相關的結果,但是在 GraphRAG還未支援Local LLM 前,估計這成本會嚇到你的 XD (當然有人回覆 GPT4o便宜多了)。最後,論文還是有提供了效果的展示:
https://microsoft.github.io/graphrag/posts/get_started/
本來想好好的把過程再做一下記錄的,尷尬的是,其實早就有人做好了 XD
/home/twman/anaconda3/envs/ollama/lib/python3.11/site-packages/graphrag/query/llm/oai/embedding.py