发布于 2026-01-06 4 阅读
0

利用 MindsDB 构建智能知识平台 🤖 Agent Hub

利用 MindsDB 构建智能知识平台

🤖 代理中心

处理结构化数据(例如 CSV 或 JSON)通常意味着需要编写查询、管理模式和构建管道,才能回答一些简单的问题。如果想要让这些数据具有交互性,例如提出自然语言问题或基于数据构建 AI 代理,事情就会迅速变得复杂。通常,你需要编写代码、理解向量存储、管理嵌入以及将各种工具整合在一起。

这就是我遇到的问题。

我想要一种简单的方法来:

  • 上传结构化数据
  • 用自然语言将其转换为可查询的内容
  • 构建一个能够讨论这些数据的AI代理

解决方案:MindsDB

Mindsdb 标志

这就是 MindsDB 的用武之地。

MindsDB 最近新增了对知识库 (KB) 的支持。现在,您可以将结构化数据导入知识库,使用嵌入模型(云端或本地),并在其基础上构建多步骤工作流或 AI 代理,而无需编写代码。

这个版本一发布就让我眼前一亮。我之前就用过 MindsDB 的 AI Table 功能开发过一个测验应用。它支持与学习逻辑模型 (LLM) 互动,所以我对这个平台很熟悉,也很信任它的方法。

有了知识库和智能体集成,我不再需要编写整个流程的代码。我只需在 MindsDB 图形用户界面中编写几个 SQL 查询语句,瞧——一个 AI 智能体就准备就绪了。

MindsDB哲学

我尤其欣赏 MindsDB 对数据和智能的思考方式。他们的理念是:

  • 连接:连接来自数百个数据源的数据
  • 统一:将 MindsDB 中来自多个(结构化和非结构化)数据源的数据统一起来,从而实现联合查询,就好像所有数据都位于单个数据库中一样。
  • 响应:使用代理从统一数据中提供智能的、上下文感知的响应

深入了解 MindsDB 👉 MindsDB 文档

作为一名 Python 和 SQL 程序员,我觉得这款产品兼具实用性和强大功能。


关于 Agent Hub

Agent Hub 可处理结构化数据:CSV 和 JSON、知识库和 AI 代理。

特征:

  1. 用户可以上传结构化数据。
  2. 用户可以使用任何 OpenAI 兼容的 API 嵌入模型(云端/本地)或 Ollama 模型创建知识库并将数据导入其中。
  3. 用户可以查询/汇总知识库,并根据测试数据对其进行评估。
  4. 用户可以添加作业,将数据源中的数据导入知识库。
  5. 用户可以创建人工智能代理并与之聊天。

对于结构化数据,我需要一个数据库。我发现 MindsDB 有一个files数据库,非常适合存储用户上传的数据文件。

然后我创建了一个迷你版的MindsDB 包,其中包含了所有 MindsDB 逻辑,并使用 MindsDB Python SDK 和 SQL 查询来完成所有操作:

  • 为每个用户创建一个项目
  • 在文件名前加上用户名前缀
  • 创建知识库
  • 将数据摄取到知识库中
  • 删除 KB
  • 使用 AI 表查询和汇总知识库。
  • 评估知识库
  • 设置数据摄取作业
  • 创建和使用人工智能代理

然后我用 Flask 写了一个简单的应用,它使用 SQLite 数据库和 SQLAlchemy 作为 ORM。我用了 HTML Jinja2 模板。没错,没有用前端框架。Python
真棒!

GitHub 标志 k0msenapati / agent-hub

Agent Hub 是一个人工智能协作平台,旨在将您的数据转化为智能人工智能代理。

🤖 代理中心

笔记

Agent Hub 是一个人工智能协作平台,旨在将您的数据转化为智能 AI 代理。借助 Agent Hub,您可以创建定制化的 AI 代理、构建全面的知识库并无缝管理数据文件,从而轻松获取强大的洞察力并实现任务自动化。

🎬 项目展示

演示视频 博客文章
YouTube 博客

🌟 特点

代理中心功能介绍:

  • AI 代理– 创建和管理根据您的特定需求量身定制的 AI 代理,以实现智能响应。
  • 知识库– 从您的数据中构建全面的知识库,以实现高效的查询和洞察。
  • 文件管理– 上传和整理您的文件,以便与人工智能流程无缝集成。

💻 安装

请按照以下步骤设置并运行代理中心:

  1. 使用 Docker 设置 MindsDB 和 Ollama(已提供 docker-compose.yml 文件):

    docker-compose up -d
    Enter fullscreen mode Exit fullscreen mode
  2. 在 Ollama 容器中安装 nomic-embed-text

    docker exec ollama ollama pull nomic-embed-text
    Enter fullscreen mode Exit fullscreen mode
  3. 在 MindsDB 中创建知识库摘要模型并连接 Pgvector


挑战

  1. 在使用 Ollama 的嵌入模型对知识库执行操作时,我遇到了 MindsDB 的一个问题。第一次尝试时会抛出“事件循环已关闭”错误。奇怪的是,第二次重复相同的操作却能正常工作。因此,我在应用程序中使用一个简单的try-catch重试机制解决了这个问题。

  2. 前端方面,我基本上是按照 Jinja2 模板的风格来写的。不过,这个想法是我的😜

构建这个系统相当容易,因为所有繁重的工作都由 MindsDB 完成。
我只需要从 Flask 后端触发正确的查询即可。


用例

  • 上传结构化数据,例如日志、报告或导出文件
  • 使用自然语言查询或汇总数据
  • 创建基于您的数据训练的智能代理

最后想说的话

这只是一个最小可行产品(MVP),但它开启了很多可能性。

目前,MindsDB 支持 CSV 和 JSON 等结构化数据,但可以轻松扩展以处理其他格式,例如网页、PDF 或 Word 文档。MindsDB 的 Connect 层还可以轻松导入来自外部数据库和 API 的数据,因此其扩展和集成潜力是内置的。

我构建的只是一个起点:一种将原始结构化数据转化为智能信息的方法。它简单却功能强大。而且,由于 MindsDB 承担了繁重的处理工作,它的构建也出奇地容易。

如果您觉得这篇文章有用,请与您的朋友和社区分享,让更多人了解这篇文章。

关注我,获取更多类似内容!

Twitter | GitHub | YouTube

拜拜 gif

文章来源:https://dev.to/k0msenapati/building-a-smart-knowledge-platform-with-mindsdb-5anb