Technology Research

  • ,

    RAGFlow: 檢索增強生成的開源引擎

    探索RAGFlow:一個革命性的開源檢索增強生成(RAG)引擎。本文深入介紹RAGFlow的核心功能,包括深度文檔理解、知識庫管理和大型語言模型集成。了解如何利用RAGFlow提升AI應用的問答能力,實現更精準的資訊檢索和生成。適合開發者和企業用戶打造先進的自然語言處理解決方案。

  • ,

    開源RAG網頁套件研究

    open-webui Github位置: https://github.com/open-webui/open-webui 工具介紹 Open WebUI 是一種可擴展、功能豐富且使用者友好的自託管 WebUI,旨在完全離線運行。它支援各種LLM運行器,包括 Ollama 和 OpenAI 相容的 API。有關更多資訊,請查看: https://docs.openwebui.com/ 主要功能 Hollama Github位置: https://github.com/fmaclen/hollama 線上DEMO: https://hollama.fernando.is 用於與 Ollama 伺服器通訊的最小 Web UI。…

  • ,

    EchoMimic – 人物圖片轉影片的開源模型

    介紹EchoMimic EchoMimic 是一款開源 AI 工具,可以將人物圖片轉換為逼真的說話視頻。它採用了創新的肖像圖像動畫技術,能夠通過組合音頻信號和面部關鍵點來生成生動自然的視頻。 EchoMimic 的工作原理 例如這樣的圖片 加上這樣的音檔 可以合成這樣的影片 安裝教學 事前作業 接著下載EchoMimic 專案,並創建新的CONDA環境,安裝所需函式庫 接著到這邊下載FFMPEG: https://www.gyan.dev/ffmpeg/builds/ 此為一個範例的下載網址: https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-full.7z 接著將ffmpeg的exe的路徑加入環境變數的path當中,如果能夠在CMD裡面輸入ffmpeg看到以下回覆代表安裝成功 接著下載預訓練權重 然後修改configs/prompts裡面的yaml檔案 接著執行 python  就可以看見執行的狀態如下圖,最終產生的檔案會位於output資料夾下

  • ,

    文字轉語音的開源套件ChatTTS

    ChatTTS介紹 chatTTS 是一個開源的文本轉語音(Text-to-Speech, TTS)項目,旨在將文字內容轉換為接近人類真實聲音的語音輸出。該項目在GitHub上迅速獲得了大量關注,因其語音合成效果非常逼真,甚至超越了一些商用TTS服務。chatTTS使用了大量的語音數據進行訓練,目前提供的模型已能夠生成語氣、停頓和節奏都極其自然的語音,並且支持多種語言和音色的合成。該項目允許用戶在本地或雲端(如Colab)環境中運行,並提供了易於使用的整合包和腳本,方便用戶快速上手。 官方網站 Github項目地址: https://github.com/2noise/ChatTTS/tree/main 直接可使用的易用版本ChatTTS_colab: https://github.com/6drf21e/ChatTTS_colab 模型的優勢 ChatTTS安裝 Clone Repo  安裝相關套件 啟動 ChatTTS_colab下載 這個套件真的可以讓人很容易地使用ChatTTS,從官方Github的下載連結下載、解壓縮後,直接便可以使用 點選運行就可以跑出網頁操作介面了 以下為網頁介面的樣子,可使用音色抽卡功能挑選滿意的音色,並且下載該語音模型檔案 另外有Refine Text的功能,這個功能可以透過大語言模型,自動為所輸入的文字加上停頓或笑聲,或者我們也可以自己手動加上這個(使用特別的標籤[uv_break]或[uv_laugh]) 也可以透過文本來產生多個人的對話,用::來分隔”腳色”和”對話內容”,例如: 旁白::在一個風和日麗的下午,小紅帽準備去森林裡看望他的奶奶 接著按下步驟1提取腳色,右邊的腳色種子就會根據文本的腳色來出現在表格當中,接著我們可以填入預選好的種子編號以及相關語速、笑聲等設定,就可以將整段對話產生為一個音檔 此為開啟伺服器的python視窗,我們可以看到伺服器正在產生影片…

  • ,

    適用於雲端的物件存儲系統 – Minio

    Minio介紹 MinIO 是一個開源的分佈式物件儲存服務器,針對需要大規模數據基礎架構的用戶設計。它支持與 S3 API 的完全兼容,並以私有雲為目標從頭開始建立。MinIO 在全球範圍內擁有廣泛的用戶和開發者社群,並且在 GitHub 上有超過 16,000 個星標,以及在 Docker 上超過 2.19 億次的下載。 核心功能 部署教學 1. 下載和安裝 首先,訪問 MinIO 的 GitHub 頁面 下載最新的…

  • ,

    專為連接性設計的查詢語言 – Cypher

    甚麼是Cypher  Cypher 是為了滿足開發者在處理圖形數據時的需求而生的。它的設計靈感來自於 SQL,目的是提供一種易於閱讀且表達能力強的語言來操作圖形數據。與傳統的 SQL 針對表格數據操作不同,Cypher 是專門為圖形數據設計的,能夠直觀地表示節點、關係及其屬性。 Cypher 的優點 Cypher 的基本結構 在 Cypher 中,圖形被視為由節點(Nodes)和關係(Relationships)構成的網絡。每個節點和關係都可以擁有多個屬性。Cypher 查詢主要包括以下幾個部分: 與 SQL 的比較 以下是一個客戶提供的實際 SQL 查詢示例,用於了解其組織結構: 以下是等效的 Cypher 查詢: 新增圖形資料的步驟…

  • ,

    圖形資料庫的概念入門

    本文為此視頻的學習筆記 關聯式資料庫的核心概念 – ACID ACID 是一個用來描述資料庫事務正確性的術語,它代表了原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)四個關鍵特性: ACID 特性是許多關係型資料庫管理系統(RDBMS)的基礎,是它們能夠提供可靠事務處理的關鍵所在。 NoSQL:資料庫技術的演進 以前,我們使用關係型數據庫管理系統(RDBMS)來存儲數據。這種方法雖然在當時是最先進的技術,但其存在許多缺點: 隨著技術的進步,我們開始在關係型資料庫中使用表格的形式來存儲數據。這些表格使得數據更容易被人類讀懂,但一旦為了去重和保持一致性而標準化數據,就會出現以下問題: 關係型資料庫的優勢與限制 關係型資料庫的一個顯著優勢是支持ACID特性,這保證了數據一旦提交,後續查詢都能訪問到這些數據。然而,這也帶來了一些挑戰: NoSQL技術的崛起 過去十年,雲計算的出現使情況變得更加複雜。數據量爆炸性增長,我們面臨的挑戰是如何存儲這些海量數據,並使其易於查詢。傳統的關係型資料庫已經難以應對這種規模的數據,這促使了NoSQL技術的革新。 NoSQL技術的發展目的是為了更快地查詢更多的數據,這其中需要做出一些權衡,比如放棄ACID的某些要求。畢竟,在處理數以百萬計的交易時,偶爾丟失一兩筆交易可能是可以接受的。 現代資料庫的用戶接口 為了提高開發者與大數據互動的便利性,我們需要發明或普及不同的用戶接口。其中最簡單的一種是鍵值接口: 鍵值接口:用一個鍵來存儲值,之後可以用這個鍵來獲取值,但這些值對資料庫來說是不透明的,毫無意義。 如果希望資料庫能根據內容來索引和查詢這些值,文檔資料庫就派上用場了: 文檔資料庫:讓你既可以用鍵來查找文檔,也可以基於文檔的內容來進行查找,這些內容都是為了快速檢索而被索引的。 圖形資料庫入門:掌握數據關係與提升查詢效率 1. 圖形資料庫的概念 圖形資料庫主要是用來存儲和操作由節點(實體)和邊(關係)組成的圖形結構數據。與傳統的關係型資料庫不同,圖形資料庫專注於實體之間的關係,這使得它們在處理複雜且相互連接的數據時更為有效。例如,社交網絡分析、推薦系統、欺詐檢測等場景,都能從圖形資料庫的結構中獲益。…

  • ,

    Neo4j圖形資料庫介紹

    官方資訊 官方網站: https://neo4j.com/ GitHub: https://github.com/neo4j/neo4j 什麼是Neo4j? 圖形資料庫是一種非關係型的資料庫,以圖形的方式存儲和處理數據。在圖形資料庫中,數據結構主要由節點(Node)和邊(Edge)組成,其中節點代表實體,邊則代表實體間的關係。這種資料庫尤其適合解決複雜的連接問題,例如社交網絡分析、推薦系統和欺詐檢測等。 Neo4j是目前最受歡迎的圖形資料庫之一,它提供了強大的數據建模能力和高效的查詢性能。作為一款專門處理連接數據的數據庫,Neo4j從設計之初就針對數據及其關係進行了優化。作為一種原生圖形數據庫,Neo4j在結構上與其他數據存儲方式大不相同。所謂「原生」意味著每一個數據記錄或節點都包含了直接指向其相連節點的指針,這些直接指針稱為關係。節點中已包含了查找下一個節點所需的所有信息,這就構成了一個連接的圖形,即所謂的原生存儲層。 由於這個設計原理,Neo4j在查詢時不需要計算數據之間的關係,因為這些連接已經存在於數據庫中。這使得對密集連接數據的查詢速度比其他數據庫快數個量級。其他數據庫沒有保存記錄之間的直接指針,它們需要通過搜索一個稱為索引的單獨數據結構來計算連接,這一查找過程需要反复執行以找到每一個連接,不僅耗時而且隨著數據量和查詢複雜度的增加,速度會呈指數級下降,這使它們在處理關係密集型查詢時的速度遠不及Neo4j。 甚麼是圖形數據庫 圖形數據庫將數據以圖的形式表示,這裡的「圖」是數學上的概念,即由節點通過邊連接。在Neo4j中,這些邊被稱為關係。這種表示方式讓客戶能夠實現傳統數據庫無法達到的洞察,因為傳統數據庫通常只將數據表示為行和列。這些新的洞察促使企業能夠做出更多基於數據的決策。 圖形數據庫可以解決三種類型的問題:旅程問題、複雜模式匹配和圖形算法應用。例如,在供應鏈管理中,從產品的來源追踪到消費者的餐盤;或者在零售行業中,通過知識圖形來支持對話代理,讓顧客能夠查詢產品成分等信息。 四種NoSQL 非關聯性資料庫 NoSQL 非關聯性資料庫 例子 鍵-值資料庫 Hadoop HBase 記憶體資料庫 Redis 文件資料庫 Mongodb 圖形資料庫…

  • ,

    FlashAttention介紹

    官方資訊 Github: https://github.com/Dao-AILab/flash-attention 論文文檔: https://arxiv.org/abs/2205.14135 此存儲庫提供了以下論文中 FlashAttention 和 FlashAttention-2 的官方實現。可讓我們在建模時有更快的注意力,更好的並行度和工作分區。下面為一張概念示意圖: 官方所做的效能提升試驗結果如下: 甚麼是Flash Attention Flash Attention 是一種注意力算法,旨在提高基於 Transformer 的模型的效率,使其能夠處理更長的序列長度並更快地進行訓練和推理。它通過減少計算量和內存使用來實現這一點。Flash Attention 是一種快速且內存高效的精確注意力機制,其設計考慮了IO(輸入輸出)的特性。 這項技術的關鍵點 快速 (Fast) 高效內存使用 (Memory-efficient)…

  • ,

    向量搜尋資料庫的比較

    ChromaDB介紹 官方文件: https://docs.trychroma.com/getting-started GitHub: https://github.com/chroma-core/chroma Chroma是一個新的AI原生開源嵌入式資料庫,非常輕量且易用。 Chroma是開源嵌入式資料庫,它使知識、事實​​和技能可插入,從而輕鬆建立LLM應用程式。它可以運行在記憶體中(可保存在磁碟中),也可做為資料庫伺服器來使用(這和傳統資料庫類似)。 基本使用範例 Elasticsearch Vector Store Elasticsearch 是一個非常強大和靈活的搜索和分析引擎。雖然它的主要用例圍繞全文搜索,但它的用途足夠廣泛,可以用於各種其他功能。其中一個引起許多開發人員和數據科學家注意的功能是使用 Elasticsearch 作為向量資料庫。隨著 dense_vector 數據類型的出現和利用該 script_score 函數的能力,Elasticsearch 的功能已經擴展到促進向量相似性搜索。 Elasticsearch 與專用向量搜索庫相比的優點 使用 Elasticsearch 作為向量資料庫的不可否認的優勢之一是其內置功能,可以過濾對特定數據子集的查詢。當您想要縮小搜索空間範圍或應用程式需要上下文感知向量搜索時,此功能非常有用。相比之下,雖然其他專用的向量搜索庫(如 ChromaDB 和 Faiss)為純向量搜索提供了無可挑剔的速度和效率,但它們缺乏 Elasticsearch…


17年資歷女工程師,專精於動畫、影像辨識以及即時串流程式開發。經常組織活動,邀請優秀的女性分享她們的技術專長,並在眾多場合分享自己的技術知識,也活躍於非營利組織,辦理活動來支持特殊兒及其家庭。期待用技術改變世界。