txtai 4.0 已正式发布,这是一个具有大量新特性的重要版本,同时也会兼容旧版本,增加了诸如内容存储、对象存储、使用 SQL 查询、索引压缩、重新索引(reindexing)、外部向量等功能。
数据方面,新版发布之后,代码量增加了 50%,解决了 36 个问题,据称是迄今为止最大的版本。
新特性
- 支持存储文本内容(#168)
- 添加选项以索引内容字典(#169)
- 添加 SQL 支持以生成结合嵌入 (embedding) + 数据库查询 ( #170 )
- 将 reindex 方法添加到嵌入(#171)
- 添加对索引存档的支持(#172)
- 为嵌入添加关闭方法(#173)
- 更新 API 以使用嵌入 + 数据库搜索 ( #176 )
- 为表格管道 (tabular pipeline) 添加内容选项(#177)
- 更新工作流示例以支持嵌入内容 ( #179 )
- 将索引元数据添加到嵌入配置(#180)
- 添加对象存储(#183)
- 聚类时会聚合部分查询结果(#184)
- 将函数参数添加到嵌入重新索引(#185)
- 添加对用户定义的列别名的支持(#186)
- 使用 SQL 括号表示法支持多词和更复杂的 JSON 路径表达式 ( #187 )
- 支持 SQLite 3.22+ ( #190 )
- 添加预先计算的向量支持(#192)
- 更改文档/对象插入以仅保留最新记录(#193)
- 更新包含 4.0 变化的文档 ( #196 )
改进
- 修改工作流以选择带有切片的批处理 ( #158 )
- 为工作流添加张量支持 ( #159 )
- 如果作为文件路径提供,则读取 YAML 配置 ( #162 )
- 向 API 添加管道更容易(#163)
- 支持同时处理任务动作(#164)
- 添加张量工作流 notebook(#167)
- 更新默认 ANN 参数 ( #174 )
- 要求 Python 3.7+ ( #175 )
- 一致地命名嵌入 id 字段(#178)
- 添加 txtai 版本属性(#181)
- 修改嵌入以仅对输入文档进行一次迭代(#189)
- 提升向量转换的效率 ( #191 )
Bugfix
- 在 API 写入调用周围添加线程锁 ( #160 )
- 通过 API 公开 caption 和 objects ( #161 )
- 更改 pickle 调用以使用支持最低 Python 版本的协议 ( #182 )
- HFOnnx 预期的 ORT provider 错误 ( #195 )
详情查看 release note。
txtai 是一个人工智能驱动的搜索引擎,可以在文本的各个部分上建立了一个 AI 驱动的索引。 txtai 支持构建文本索引以执行相似性搜索并创建基于问-答的系统。此外,txtai 还具有用于 zero-shot 分类的功能。