文本AI

@neuml/txtai
1 Stars 133 次浏览 neuml 更新于 2026-08-23

txtai 是一个集成了语义搜索、大语言模型编排和语言模型工作流的嵌入式数据库。所有功能都可以通过其 API 提供,并且该 API 支持 MCP。 文档:https://neuml.github.io/txtai/api/mcp/

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

txtai 是一个用于语义搜索、大语言模型编排和语言模型工作流的一体化嵌入式数据库。

架构
架构

嵌入式数据库是向量索引(稀疏和密集)、图网络和关系数据库的结合。

这一基础能够实现向量搜索,或作为大型语言模型(LLM)应用的强大知识来源。

构建自主代理、检索增强生成(RAG)流程、多模型工作流等。

txtai 功能概要:

  • 🔎 向量搜索与 SQL、对象存储、主题建模、图分析和多模态索引
  • 📄 为文本、文档、音频、图像和视频创建嵌入
  • 💡 由语言模型驱动的管道,运行 LLM 提示、问答、标注、转录、翻译、摘要等
  • ↪️ 将管道连接在一起并聚合业务逻辑的工作流程。txtai 进程可以是简单的微服务或多模型工作流程。
  • 🤖 智能地将嵌入、管道、工作流和其他代理连接起来以自主解决复杂问题的代理
  • ⚙️ Web 和模型上下文协议 (MCP) API。提供 JavaScriptJavaRustGo 的绑定。
  • 🔋 包含默认设置,可快速启动并运行
  • ☁️ 本地运行或通过容器编排进行扩展

txtai 是使用 Python 3.10+、Hugging Face TransformersSentence TransformersFastAPI 构建的。txtai 在 Apache 2.0 许可下开源。

对运行托管的 txtai 应用程序有一种简单且安全的方法感兴趣?那么加入 txtai.cloud 预览以了解更多信息。

为什么选择 txtai?

why
why

新的向量数据库、LLM 框架以及介于两者之间的一切每天都层出不穷。为什么要用 txtai 构建?

  • 使用 pipDocker 几分钟内即可启动并运行
# 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)]
  • 内置 API 使使用您选择的编程语言开发应用程序变得容易
# 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"
  • 本地运行 - 无需将数据发送到不同的远程服务
  • 从小型模型到大型语言模型 (LLMs) 都可以处理
  • 占用空间小 - 根据需要安装额外的依赖项并进行扩展
  • 通过示例学习 - 笔记本涵盖所有可用功能

用例

以下部分介绍了常见的 txtai 用例。还提供了超过 60 个 示例笔记本和应用程序 的全面集合。

语义搜索

构建语义/相似性/向量/神经搜索应用程序。

demo

传统的搜索系统使用关键词来查找数据。语义搜索理解自然语言,并识别具有相同含义但不一定具有相同关键词的结果。

search
search

开始使用以下示例。

笔记本 描述
介绍 txtai ▶️ 概述了txtai提供的功能 在Colab中打开
基于图像的相似性搜索 将图像和文本嵌入到同一空间以进行搜索 在Colab中打开
构建问答数据库 通过语义搜索匹配问题 在Colab中打开
语义图 探索主题、数据连接性并运行网络分析 在Colab中打开

LLM 编排

自主代理、检索增强生成(RAG)、与您的数据聊天、与大型语言模型(LLMs)交互的管道和工作流。

llm

请参阅下方了解更多内容。

Notebook 描述
Prompt 模板和任务链 构建模型提示并将任务通过工作流连接在一起 在 Colab 中打开
集成 LLM 框架 集成 llama.cpp、LiteLLM 和自定义生成框架 在 Colab 中打开
使用 LLM 构建知识图谱 使用 LLM 驱动的实体提取构建知识图谱 在 Colab 中打开
用 txtai 解析星辰 探索已知恒星、行星、星系的天文知识图谱 在 Colab 中打开

代理

代理将嵌入、管道、工作流和其他代理连接在一起,以自主解决复杂问题。

agent

txtai 代理基于 Transformers Agent 框架构建。这支持所有 txtai 支持的 LLM(Hugging Face、llama.cpp、通过 LiteLLM 的 OpenAI / Claude / AWS Bedrock)。

请参阅下面的链接以了解更多信息。

笔记本 描述
使用图和代理分析Hugging Face帖子 使用图分析和代理探索一个丰富的数据集 在Colab中打开
授予代理自主权 代理根据需要迭代解决问题 在Colab中打开
使用图和代理分析LinkedIn公司帖子 探索如何利用AI提高社交媒体互动 在Colab中打开

检索增强生成

检索增强生成(RAG)通过将知识库作为上下文来限制输出,从而减少了大语言模型产生幻觉的风险。RAG通常用于“与您的数据聊天”。

rag
rag

txtai的一个新颖功能是它可以同时提供答案和来源引用。

笔记本 描述
使用 txtai 构建 RAG 管道 关于检索增强生成的指南,包括如何创建引用 在 Colab 中打开
为 RAG 分块你的数据 提取、分块和索引内容以实现有效检索 在 Colab 中打开
通过图路径遍历实现高级 RAG 通过图路径遍历收集复杂的数据集以实现高级 RAG 在 Colab 中打开
语音到语音 RAG ▶️ 完整的语音到语音工作流程,结合 RAG 在 Colab 中打开

语言模型工作流

语言模型工作流,也称为语义工作流,将语言模型连接在一起以构建智能应用程序。

flows
flows

尽管大型语言模型非常强大,但仍然有许多更小、更专业的模型在特定任务上表现得更好且更快。这包括用于抽取式问答、自动摘要、文本转语音、转录和翻译的模型。

笔记本 描述
运行管道工作流 ▶️ 简单但强大的结构,用于高效处理数据 在 Colab 中打开
构建抽象文本摘要 运行抽象文本摘要 在 Colab 中打开
将音频转录为文本 将音频文件转换为文本 在 Colab 中打开
在不同语言之间翻译文本 简化机器翻译和语言检测 在 Colab 中打开

安装

install
install

最简单的安装方式是通过 pip 和 PyPI。

pip install txtai

支持 Python 3.10+。建议使用 Python 虚拟环境

请参阅详细的安装说明,以获取更多关于可选依赖项特定环境的先决条件从源代码安装conda 支持以及如何使用容器运行的信息。

模型指南

models

请参见下表中当前推荐的模型。这些模型都允许商业使用,并且在速度和性能上都有良好的平衡。

组件 模型(s)
嵌入 all-MiniLM-L6-v2
图像描述 BLIP
标签 - 零样本 BART-Large-MNLI
标签 - 固定 通过训练管道进行微调
大型语言模型 (LLM) Llama 3.1 Instruct
摘要 DistilBART
文本转语音 ESPnet JETS
转录 Whisper
翻译 OPUS 模型系列

模型可以作为 Hugging Face Hub 的路径或本地目录加载。模型路径是可选的,未指定时将加载默认值。对于没有推荐模型的任务,txtai 使用 Hugging Face 任务指南中显示的默认模型。

请参阅以下链接以了解更多信息。

由 txtai 提供支持

以下应用程序由 txtai 支持。

apps

应用程序 描述
rag 检索增强生成 (RAG) 应用程序
ragdata 构建 RAG 知识库
paperai 医学/科学论文的语义搜索和工作流程
annotateai 使用 LLM 自动标注论文

除了这个列表之外,还有许多其他的开源项目已发表的研究以及闭源专有/商业项目在生产环境中基于txtai构建。

进一步阅读

further
further

文档

完整的txtai文档提供了包括嵌入配置、管道、工作流、API及常见问题解答等信息。

贡献

对于希望为txtai做贡献的人,请参阅此指南