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 做出贡献的人,请参阅本指南。