txtai 是一個用於語義搜尋、LLM 編排和語言模型工作流程的一體化嵌入資料庫。
嵌入資料庫是向量索引(稀疏和密集)、圖網絡和關係資料庫的聯合。
此基礎支援向量搜尋和/或作為大型語言模型 (LLM) 應用程式的強大知識來源。
建構自主代理、檢索增強生成 (RAG) 流程、多模型工作流程等。
txtai特點總結:
txtai 使用 Python 3.9+、Hugging Face Transformers、Sentence Transformers 和 FastAPI 建置。 txtai 是在 Apache 2.0 許可證下開源的。
對以簡單、安全的方式運行託管 txtai 應用程式感興趣嗎?然後加入 txtai.cloud 預覽版以了解更多資訊。
新的向量資料庫、法學碩士框架以及介於兩者之間的一切每天都在湧現。為什麼要使用 txtai 建置?
# Get started in a couple lines
import txtai
embeddings = txtai . Embeddings ()
embeddings . index ([ "Correct" , "Not what we hoped" ])
embeddings . search ( "positive" , 1 )
#[(0, 0.29862046241760254)]
# app.yml
embeddings :
path : sentence-transformers/all-MiniLM-L6-v2
CONFIG=app.yml uvicorn " txtai.api:app "
curl -X GET " http://localhost:8000/search?query=positive "
以下部分介紹常見的 txtai 用例。還提供一整套 60 多個範例筆記本和應用程式。
建立語義/相似性/向量/神經搜尋應用程式。
傳統的搜尋系統使用關鍵字來尋找資料。語義搜尋能夠理解自然語言,並識別具有相同含義(不一定是相同關鍵字)的結果。
從以下範例開始。
筆記本 | 描述 | |
---|---|---|
介紹txtai | txtai提供的功能概述 | |
影像相似性搜尋 | 將圖像和文字嵌入同一空間進行搜索 | |
建立品質保證資料庫 | 語義搜尋的問題匹配 | |
語意圖 | 探索主題、數據連結並運行網路分析 |
自主代理、檢索增強生成 (RAG)、與您的資料聊天、與大型語言模型 (LLM) 互動的管道和工作流程。
請參閱下文以了解更多資訊。
筆記本 | 描述 | |
---|---|---|
提示範本和任務鏈 | 建立模型提示並將任務與工作流程連結在一起 | |
整合LLM框架 | 整合 llama.cpp、LiteLLM 和自訂生成框架 | |
與法學碩士建構知識圖譜 | 使用 LLM 驅動的實體擷取建構知識圖 |
代理將嵌入、管道、工作流程和其他代理連接在一起,以自主解決複雜問題。
txtai 代理程式建構在 Transformers Agent 框架之上。這支援 txtai 支援的所有 LLM(Hugging Face、llama.cpp、OpenAI / Claude / AWS Bedrock 透過 LiteLLM)。
請參閱下面的連結以了解更多資訊。
筆記本 | 描述 | |
---|---|---|
txtai 8.0 的新功能 | txtai 代理 | |
使用圖表和代理分析擁抱臉部帖子 | 使用圖形分析和代理探索豐富的資料集 | |
賦予代理人自主權 | 代理以迭代方式解決他們認為合適的問題 |
檢索增強生成 (RAG) 透過以知識庫作為上下文來限制輸出,從而降低 LLM 幻覺的風險。 RAG 通常用於「與您的資料聊天」。
txtai 的一個新穎功能是它可以提供答案和來源引用。
筆記本 | 描述 | |
---|---|---|
使用 txtai 建置 RAG 管道 | 檢索增強生成指南,包括如何建立引文 | |
RAG 與 txtai 的工作原理 | 建立 RAG 進程、API 服務和 Docker 實例 | |
具有圖形路徑遍歷功能的高階 RAG | 透過圖形路徑遍歷來收集高級 RAG 的複雜資料集 | |
語音到語音 RAG | 使用 RAG 的全週期語音轉語音工作流程 |
語言模型工作流程,也稱為語義工作流程,將語言模型連接在一起以建立智慧應用程式。
雖然法學碩士很強大,但還有許多更小、更專業的模型可以更好、更快地完成特定任務。這包括提取問答、自動摘要、文字轉語音、轉錄和翻譯的模型。
筆記本 | 描述 | |
---|---|---|
運行管道工作流程 | 簡單而強大的結構可有效處理數據 | |
建構抽象文字摘要 | 運行抽象文字摘要 | |
將音訊轉錄為文字 | 將音訊檔案轉換為文字 | |
在語言之間翻譯文本 | 簡化機器翻譯和語言偵測 |
最簡單的安裝方法是透過 pip 和 PyPI
pip install txtai
支援 Python 3.9+。推薦使用Python虛擬環境。
請參閱詳細的安裝說明,以了解更多信息,包括可選依賴項、環境特定先決條件、從來源安裝、conda 支援以及如何使用容器運行。
目前建議的型號請見下表。這些型號均允許商業用途,並提供速度和性能的組合。
成分 | 型號 |
---|---|
嵌入 | 全MiniLM-L6-v2 |
圖片說明 | BLIP |
標籤 - 零射擊 | BART-大型-MNLI |
標籤 - 固定 | 透過訓練管道進行微調 |
大語言模型(LLM) | 駱駝 3.1 指導 |
總結 | 蒸餾巴特 |
文字轉語音 | ESPnet 噴射機 |
轉錄 | 耳語 |
翻譯 | OPUS模型系列 |
模型可以作為 Hugging Face Hub 的路徑或本地目錄載入。模型路徑是可選的,未指定時載入預設值。對於沒有推薦模型的任務,txtai 使用預設模型,如擁抱臉部任務指南所示。
請參閱以下連結以了解更多資訊。
以下應用程式由 txtai 提供支援。
應用 | 描述 |
---|---|
文字聊天 | 檢索增強生成 (RAG) 支援的搜索 |
帕帕艾 | 醫學/科學論文的語意搜尋和工作流程 |
代碼問題 | 開發者語義搜尋 |
故事 | 標題和故事文字的語義搜索 |
除了這個清單之外,還有許多其他開源專案、已發表的研究以及在生產中基於 txtai 構建的封閉專有/商業專案。
提供了有關 txtai 的完整文檔,包括嵌入、管道、工作流程、API 的配置設定以及常見問題/問題的常見問題解答。
對於那些想為 txtai 做出貢獻的人,請參閱本指南。