搜狐技术产品

对标 Coze 和 Dify?Java 开发的企业级 AI 底层平台发布!

你好,我是 Guide。前段时间看到一个基于 Java 开发的开源一站式 AI 平台,今天来简单分享一下。

这几年,AI 确实太火了,各种大模型层出不穷,很多个人或者企业也想赶紧把这些酷炫的 AI 能力用到自己的业务里。但是,直接对接大模型、管理知识、搭建应用流程,这些事儿说起来容易做起来难。

如果有现成的工具能够帮助我们做这些事情,那就可以节省很多成本,提升开发效率。今天分享的国产开源项目 AIFlowy ,就是一个这样的工具,目前已经是码云 GVP 项目了。

Image

AIFlowy 是个啥?

你可以把 AIFlowy 理解成一个一站式的、企业级的 AI 应用开发平台。它基于 Java 开发的,致力于给国内的开发者和企业提供一套高效的 AI 工具/能力。

Image

根据官方介绍:这个工具对标像字节的 Coze、腾讯的元器、还有 Dify 这些优秀的产品,但更聚焦国内企业(toB)场景下的深度应用和实际落地。

Image

不过,我个人觉得这个工具暂时可能还和 Dify 这类优秀的工具相提并论,不论是稳定性、功能性、生态建设还是其他方面。我推荐分享这个项目,主要还是因为它是基于 Java 开发,加上是国产开源项目,想要无偿支持一下。

Image

AIFlowy 能做什么?

AIFlowy 的核心功能主要围绕着构建智能应用展开,主要有这么几大块:

Bot (智能对话机器人)

Bot 是 AIFlowy 平台的核心组件之一,你可以把它看作一个可以和你用自然语言对话的智能机器人。通过给 Bot 配置上强大的大语言模型(比如文心一言、通义千问、ChatGLM 等),再结合你自己的业务知识和需求进行定制,它就能帮你自动处理各种咨询、提供信息、甚至执行一些简单的任务。

Image

Bot 的核心能力有啥?

  • 多模态交互:虽然“多模态”是个大趋势,但目前 AIFlowy 的 Bot 主要还是支持文本消息的交互。你可以通过打字和它聊天。
  • 技能扩展 (插件) :单靠大模型可能还不够,有时候 Bot 需要查查天气、调个内部接口、或者操作一下其他系统。这时候,“插件”就派上用场了!通过插件,Bot 可以轻松连接外部系统,获取实时信息,或者执行特定操作,能力瞬间升级!
  • 记忆能力 (上下文保持) :AIFlowy 的 Bot 支持多轮对话上下文保持,也就是说,它能记住你们之前的聊天内容,让对话更连贯、更智能。

怎么快速上手创建一个 Bot?

  1. 第一步:创建 Bot。 在 AIFlowy 平台点一下,给你的 Bot 起个名,一个 Bot 的雏形就有了。

  2. 第二步:配置大模型。 Bot 的“大脑”得选一个吧?你需要先在平台里添加并配置好你想用的大模型服务(比如填上你的 API Key 啥的)。

ImageImage

特别注意: 在配置大模型的时候,记得要勾选上“对话模型”这个选项,这样你的 Bot 才能在选择大模型的时候看到它。

Image
  1. 第三步:运行 Bot! 配置好了,就可以让你的 Bot 跑起来,开始和它聊天互动啦!

    Image

插件 (工具集)

插件是 AIFlowy 里一个非常重要的概念,你可以把它想象成一个工具箱,里面装着各种各样的“工具”(也就是能力)。一个插件里可以包含一个或多个这样的工具。

插件有啥用?

通过插件,你可以极大地扩展 AIFlowy 的核心功能。比如说:

  • 前面提到的 Bot,就可以挂载各种插件,让它具备查询天气、翻译文本、调用公司内部 API 等各种额外能力。
  • 后面会讲到的 工作流 (Workflow),也可以通过插件节点来调用外部服务或执行特定任务,让整个自动化流程更强大。

插件都有哪些类型?

  • HTTP 插件: 这个最常见!顾名思义,就是通过调用外部的 HTTP API 来获取信息或执行操作。比如,你想让 AIFlowy 获取最新的新闻,就可以配一个调用新闻 API 的 HTTP 插件。
  • 本地插件: 这类插件通常是直接在 AIFlowy 平台内部实现的一些特定功能,不需要调用外部 API。

知识库 (Knowledge Base)

知识库是 AIFlowy 平台的另一个核心大杀器!简单说,它就是用来存储和管理你企业内部的各种数据和文档的地方,比如公司产品手册、常见问题解答(FAQ)、标准操作指南(SOP)等等。

知识库最大的价值是什么?——让大模型回答更精准,更懂你的业务! 这就是现在很火的 RAG (Retrieval Augmented Generation,检索增强生成) 技术的应用。

AIFlowy 的知识库功能非常友好,它把 RAG 管道的每个阶段都可视化了,你可以轻松地上传、管理和维护你团队的知识。

它是怎么工作的?

  1. 知识导入与处理: 你可以把各种格式的文档(文本、PDF、Word、Markdown、Excel 等)上传到知识库里。AIFlowy 会把这些文档处理成大模型能够理解和查询的结构化数据(通常是向量化)。
alt text
alt text
  1. 实时更新: 和大模型预训练的静态数据不一样,知识库里的内容是可以实时更新的。这样就能保证你的 AI 应用总能拿到最新的信息,避免因为数据过时闹笑话。

  2. 智能检索与回答增强: 当用户向你的 AI 应用(比如 Bot)提问时,大模型会先根据关键词在你的知识库里进行搜索。知识库会返回相关性最高的内容片段,作为“参考资料”提供给大模型。大模型再结合这些“参考资料”和它自身的知识,就能生成更准确、更贴合你业务场景的回答了。

怎么管理知识库里的知识?

AIFlowy 提供了方便的管理界面,你可以:

  • 预览已经向量化(处理好)的知识内容。
  • 修改或删除知识库里的条目。
  • 当你修改了知识库内容后,系统会自动重新进行向量化处理,确保知识的最新有效。
Image
Image

工作流 (Workflow)

在 AIFlowy 里,工作流(Workflow) 是一个非常核心的概念,它能帮你把一系列的操作步骤串联起来,形成一个完整的、自动化的处理流程。

你可以把它想象成一个可视化的流程设计器,通过拖拽和配置,就能定义好任务的执行顺序和逻辑。这对于处理数据、调度任务、响应事件等各种复杂场景都非常有用。

怎么创建一个工作流?(以获取 IP 信息为例)

  1. 新增工作流: 点击“新增”按钮,输入工作流的名称等信息。
Image
  1. 进入设计页面: 找到你刚创建的工作流,点击“设计”按钮,就进入了可视化的流程设计画布。
alt text
alt text

基本规则: 一个有意义的工作流,至少需要一个开始节点、一个结束节点,以及至少一个中间处理节点。

  1. 搭建流程:

添加开始节点: 从左边的节点列表里拖一个“开始节点”到画布上,并配置它需要的输入参数(比如,我们这个例子里,输入参数是 ip)。

Image

添加中间节点(HTTP 节点): 拖一个“HTTP 节点”(或者“插件节点”)到画布上,把它和“开始节点”连起来。然后配置这个 HTTP 节点的参数,比如请求的 URL(可以引用上一个节点的输出变量,比如 {{ip}})、请求方法等。

Image

小技巧: 在工作流里,你可以用 {{变量名}} 的方式来引用之前节点定义的变量或输出。

添加结束节点: 拖一个“结束节点”到画布上,把它和“HTTP 节点”连起来。并配置它的输出,比如把 HTTP 节点返回结果中的 data 部分作为整个工作流的最终输出。

Image
  1. 保存工作流: 设计好了,别忘了点击右上角的“保存按钮”或者按 Ctrl + S 保存。

工作流还能干啥?

  • 试运行: 设计好的工作流,可以直接在平台上点击“试运行”,输入参数,看看它跑得对不对。
Image
  • 导入/导出: 你可以把你设计好的工作流导出成一个 JSON 文件,方便分享给别人,或者备份。同样,也可以导入别人分享给你的工作流 JSON 文件。
Image
  • 独立页面运行: 每个工作流还可以生成一个独立的运行页面,方便直接调用。
Image

总结一下

AIFlowy 通过 Bot 提供了智能对话能力,通过插件实现了灵活的功能扩展,通过知识库让 AI 更懂你的业务,再通过工作流把这一切自动化地串联起来。

如果你是 Java 开发者,或者你的企业正在寻求一个开源、可控、能够深度定制的 AI 应用构建方案,特别是针对国内的 ToB 场景,那么 AIFlowy 可以关注留意一波!

需要注意的是,AIFlowy 采用 Apache-2.0 开源协议,在满足附加协议(如不删除、修改或隐藏产品的 LOGO)情况下可以商用。另外,AIFlowy 有商业版本,功能更强大, 但价格有点小贵。

Image

项目地址:https://gitee.com/aiflowy/aiflowy

图片

📌Java 后端技术面试准备强烈推荐《Java 面试指北》 和 JavaGuide ,400 多人参与维护完善,质量非常高。另外,目前的面试趋势是场景题变多,可以参考《后端面试高频系统设计&场景题》(20+高频系统设计&场景面试题)进行准备!

⭐️推荐阅读:

点击下方卡片进入公众号

回复 「PDF」即可领取原创PDF技术面试手册
回复 「学习路线」即可获取最新版Java学习路线
回复 「开源」即可获取优质Java开源项目合集
免费分享无套路,有帮助点个赞就好!