22 KiB
Note
本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。
English · 原始项目 · 上游 README
原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。
一体化 AI 框架
txtai 是一个一体化 AI 框架,适用于语义搜索、LLM 编排和语言模型工作流。
txtai 的核心组件是嵌入(embeddings)数据库,它是向量索引(稀疏与稠密)、图网络与关系型数据库的联合体。
这一基础支持向量搜索,和/或作为大语言模型(LLM)应用的强大知识来源。
构建自主智能体、检索增强生成(RAG)流程、多模型工作流等。
txtai 功能概览:
- 🔎 支持 SQL、对象存储、主题建模、图分析与多模态索引的向量搜索
- 📄 为文本、文档、音频、图像和视频创建嵌入
- 💡 由语言模型驱动的流水线,可运行 LLM 提示、问答、标注、转录、翻译、摘要等
- ↪️️ 将流水线串联并聚合业务逻辑的工作流。txtai 流程既可以是简单微服务,也可以是多模型工作流。
- 🤖 智能体可将嵌入、流水线、工作流及其他智能体连接在一起,自主解决复杂问题
- ⚙️ Web 与模型上下文协议(Model Context Protocol,MCP)API。提供 JavaScript, Java, Rust 和 Go. 绑定
- 🔋 开箱即用,默认配置可快速启动
- ☁️ 本地运行或通过容器编排扩展
txtai 基于 Python 3.10+、Hugging Face Transformers, Sentence Transformers 和 FastAPI. 构建。txtai 在 Apache 2.0 许可证下开源。
Note
NeuML 是 txtai 背后的公司,我们围绕自身技术栈提供 AI 咨询服务。预约会议 或 发送消息 了解更多。
我们还在通过 txtai.cloud. 构建一种简便、安全的方式来运行托管 txtai 应用。
为何选择 txtai?
新的向量数据库、LLM 框架以及介于其间的一切每天都在涌现。为何选择 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)]
- 内置 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"
- 本地运行——无需将数据发送到分散的远程服务
- 从微模型(micromodels)到大语言模型(LLM)均可使用
- 占用资源少——按需安装额外依赖并扩展
- 通过示例学习 ——笔记本涵盖所有可用功能
用例
以下章节介绍 txtai 的常见用例。还提供超过 70 个示例笔记本与应用 的完整集合。
语义搜索
构建语义/相似度/向量/神经搜索应用。
传统搜索系统使用关键词查找数据。语义搜索理解自然语言,能识别含义相同而不一定关键词相同的结果。
从以下示例入手。
| Notebook | Description | |
|---|---|---|
| Introducing txtai ▶️ | txtai 功能概览 | |
| Similarity search with images | 将图像与文本嵌入同一空间以进行搜索 | |
| Build a QA database | 通过语义搜索进行问题匹配 | |
| Semantic Graphs | 探索主题、数据关联并运行网络分析 |
LLM 编排
自主智能体、检索增强生成(RAG)、与数据对话,以及与大语言模型(LLM)交互的流水线与工作流。
参见下文了解更多。
| Notebook | Description | |
|---|---|---|
| Prompt templates and task chains | 构建模型提示并通过工作流串联任务 | |
| Integrate LLM frameworks | 集成 llama.cpp、LiteLLM 及自定义生成框架 | |
| Build knowledge graphs with LLMs | 通过 LLM 驱动的实体抽取构建知识图谱 | |
| Parsing the stars with txtai | 探索已知恒星、行星、星系的天文知识图谱 |
Agents
Agents 将 embeddings(嵌入)、pipelines(流水线)、workflows(工作流)及其他 agents 连接起来,自主解决复杂问题。
txtai agents 构建于 smolagents 框架之上。它支持 txtai 所支持的所有 LLM(Hugging Face、llama.cpp,以及通过 LiteLLM 接入的 OpenAI / Claude / AWS Bedrock)。也支持使用 agents.md 和 skill.md 进行 Agent 提示。
请查看此 Agent 快速入门示例. 下方还列出了更多示例。
| Notebook | Description | |
|---|---|---|
| 赋予 Agent 自主性 | 让 Agent 按自身判断迭代解决问题的示例 | |
| TxtAI got skills | 将 skill.md 文件与你的 Agent 集成 | |
| Agent 工具 ▶️ | 了解 txtai Agent 工具包 | |
| 使用图与 Agent 分析 LinkedIn 公司帖子 | 探索如何利用 AI 提升社交媒体互动 |
Retrieval augmented generation
检索增强生成(Retrieval augmented generation,RAG)通过以知识库作为上下文约束输出,降低 LLM 幻觉的风险。RAG 常用于实现「与你的数据对话」。
请查看此 RAG 快速入门示例. 下方还列出了更多示例。
| Notebook | Description | |
|---|---|---|
| 使用 txtai 构建 RAG 流水线 ▶️ | 检索增强生成指南,包括如何创建引用 | |
| RAG 不止于向量搜索 | 通过 Web、SQL 及其他来源进行上下文检索 | |
| 基于 Wikipedia 与 GPT OSS 的 GraphRAG | 由深度图搜索驱动的 RAG | |
| 语音到语音 RAG ▶️ | 结合 RAG 的完整语音到语音工作流 |
Language Model Workflows
语言模型工作流(Language model workflows),也称为语义工作流(semantic workflows),将多个语言模型连接起来以构建智能应用。
尽管 LLM 功能强大,仍有许多更小、更专业的模型在特定任务上表现更好、速度更快。这包括用于抽取式问答、自动摘要、文本转语音(text-to-speech)、转录和翻译的模型。
请查看此 工作流快速入门示例. 下方还列出了更多示例。
| Notebook | Description | |
|---|---|---|
| 运行流水线工作流 ▶️ | 简单却强大的结构,用于高效处理数据 | |
| 构建抽象式文本摘要 | 运行抽象式文本摘要 | |
| 将音频转录为文本 | 将音频文件转换为文本 | |
| 在语言之间翻译文本 | 简化机器翻译与语言检测 |
Installation
最简单的安装方式是通过 pip 和 PyPI
pip install txtai
支持 Python 3.10+。建议使用 Python virtual environment(虚拟环境)。
请参阅详细的 install instructions(安装说明),了解更多信息,涵盖 optional dependencies,(可选依赖)、environment specific prerequisites,(特定环境的先决条件)、installing from source,(从源码安装)、conda support,(conda 支持)、lightweight minimal installation(轻量级最小化安装),以及如何 run with containers.(使用容器运行)。
Model guide
请参阅下表了解当前推荐模型。这些模型均允许商业使用,并在速度与性能之间取得良好平衡。
模型可从 Hugging Face Hub 路径或本地目录加载。模型路径为可选项,未指定时将加载默认模型。对于没有推荐模型的任务,txtai 会使用 Hugging Face Tasks 指南中所示的默认模型。
请参阅以下链接了解更多信息。
Powered by txtai
以下应用基于 txtai 构建。
| Application | Description |
|---|---|
| rag | 检索增强生成(Retrieval Augmented Generation,RAG)应用 |
| ncoder | 开源 AI 编程智能体 |
| paperai | 面向医学与科学论文的 AI |
| annotateai | 使用 LLM 自动为论文添加标注 |
除上述列表外,还有许多其他开源项目, 已发表的研究 以及已在生产环境中基于 txtai 构建的闭源专有/商业项目。
Further Reading
- Introducing txtai, the all-in-one AI framework
- txtai: An All-in-One AI Framework for Semantic Search and LLM Workflows
- Tutorial series on Hashnode | dev.to
- What's new in txtai 9.0 | 8.0 | 7.0 | 6.0 | 5.0 | 4.0
- Getting started with semantic search | workflows | rag
- Running txtai at scale
- Vector search & RAG Landscape: A review with txtai
Documentation
txtai 完整文档 现已提供,包括嵌入(embeddings)、流水线(pipelines)、工作流(workflows)、API 的配置设置,以及常见问题/疑难解答(FAQ)。
Contributing
如需为 txtai 做贡献,请参阅本指南.



















