agents-flex

用 Java 快速构建 AI 智能体,支持 RAG、MCP、语音等能力

开源 🏷️完全免费 ✅ 目前可打开 对话助手 🍴 复刻 160 🐛 待处理 5 👀 关注 15
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1053
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源框架,Apache-2.0 许可,完全免费,可自行部署使用。

项目预览

agents-flex 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类对话助手
开发团队agents-flex
定价模式🏷️完全免费
价格说明开源框架,Apache-2.0 许可,完全免费,可自行部署使用。
访问状态✅ 目前可打开
是否开源是
开源协议Apache-2.0
主要语言Java
技术栈/模型agent,ai,chatbot,chatgpt,gpt,langchain4j,llama3,llm,ollama,spring-ai
GitHub 星标★ 1053
上线时间2024-01-12 00:00:00
代码更新2026-11-08
仓库体积24.1 MB
本站数据更新2026-11-09
维护状态活跃
收录时间2026-08-09
浏览次数9

项目介绍

Agents-flex 是一个轻量级的 Java AI 智能体开发框架,定位为 Spring AI 的替代品。它旨在解决 Java 生态中构建复杂 AI 应用时缺乏灵活、轻量框架的问题。核心能力包括:RAG(检索增强生成)、MCP(模型上下文协议)、Skills(技能)、Text2SQL、LLM Wiki、子智能体、Web 搜索、TTS(同步和流式)和 STT。框架设计简洁,易于集成,支持多种主流 LLM(如 ChatGPT、Llama3、Ollama),适合快速搭建对话助手和智能体应用。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1053

技术标签

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • JDK 8 及以上(核心模块兼容 Java 8+)
  • 可编辑 pom.xml 的 Maven 工程(普通 Java 或 Spring Boot 均可)
  • 一个 OpenAI 兼容的模型服务,需提供 endpoint、model、apiKey
  • 如需流式输出,需要实现 StreamResponseListener 接口

安装与启动步骤

  1. 1添加 Maven 依赖

    普通 Java 项目在 pom.xml 中引入聚合依赖 agents-flex-bom;Spring Boot 项目把 artifactId 换成 starter。

    <dependency>
        <groupId>com.agentsflex</groupId>
        <artifactId>agents-flex-bom</artifactId>
        <version>2.2.9</version>
    </dependency>
  2. 2按需引入模块

    不想用聚合依赖时,可只依赖需要的模块,例如 OpenAI 对话能力和 Redis 存储。

    <dependency>
        <groupId>com.agentsflex</groupId>
        <artifactId>agents-flex-chat-openai</artifactId>
        <version>2.2.9</version>
    </dependency>
    
    <dependency>
        <groupId>com.agentsflex</groupId>
        <artifactId>agents-flex-store-redis</artifactId>
        <version>2.2.9</version>
    </dependency>
  3. 3设置 API Key

    把模型服务的密钥写入环境变量,示例代码通过 System.getenv 读取,避免硬编码。

    export GITEE_API_KEY=sk-xxxxxxxx
  4. 4编写对话代码

    用 OpenAIChatConfig.builder() 设置 endpoint、provider、model、apiKey,buildModel() 得到 ChatModel 后调用 chat()。

    import com.agentsflex.core.model.chat.ChatModel;
    import com.agentsflex.model.chat.openai.OpenAIChatConfig;
    
    public class ChatDemo {
        public static void main(String[] args) {
            ChatModel chatModel = OpenAIChatConfig.builder()
                .endpoint("https://ai.gitee.com")
                .provider("GiteeAI")
                .model("Qwen3-32B")
                .apiKey(System.getenv("GITEE_API_KEY"))
                .buildModel();
    
            String reply = chatModel.chat("Introduce Agents-Flex in one sentence.");
            System.out.println(reply);
        }
    }
  5. 5启用流式输出

    需要边生成边打印时改用 chatStream,实现 StreamResponseListener 的 onMessage 回调。

    chatModel.chatStream("Explain the Chain of Responsibility pattern in Java.", new StreamResponseListener() {
        @Override
        public void onMessage(StreamContext context, AiMessageResponse response) {
            System.out.print(response.getMessage().getContent());
        }
    });

关键配置

配置项必填说明示例
endpoint是模型服务的接口地址https://ai.gitee.com
provider是模型服务商名称标识GiteeAI
model是要调用的模型名称Qwen3-32B
apiKey是模型服务密钥,示例从环境变量读取sk-xxxxxxxx

如何确认成功

运行 main 方法后,控制台打印出一句话介绍 Agents-Flex 的内容,即表示模型调用成功。

常见问题

Q:必须使用 GiteeAI 吗?

A:不需要。示例走的是 OpenAI 兼容接口,把 endpoint、model、apiKey 换成你自己的模型服务配置即可。

Q:对 Java 版本有什么要求?

A:核心模块兼容 Java 8+,可运行在纯 Java、Spring Boot 或其他 JVM 技术栈中。

Q:Spring Boot 项目该引入哪个依赖?

A:使用 agents-flex-spring-boot-starter,版本号与示例一致(2.2.9)。

Q:只想用部分能力怎么办?

A:不要引入聚合依赖,改为单独依赖需要的模块,如 agents-flex-chat-openai、agents-flex-store-redis。

注意事项

  • README 中的版本号 2.2.9 请以实际最新版本为准。
  • apiKey 不要硬编码进代码,建议通过环境变量注入。
  • 同一套 Prompt、Options、拦截器和上下文机制同时适用于普通对话与流式输出。

核心亮点

  • 轻量级设计,相比 Spring AI 更简洁,上手快
  • 功能全面,集成 RAG、MCP、Text2SQL、语音等,开箱即用
  • 支持多种 LLM 提供商,灵活切换

不足之处

  • 社区和文档相对较少,学习资源有限
  • 项目较新,生态和稳定性有待观察

适用场景

  • 企业级对话机器人开发
  • 基于私有知识库的智能问答系统
  • 需要语音交互的 AI 助手应用

替代项目

Spring AI、LangChain4j、OpenAI Java Client

上一篇:poe-api-wrapper

下一篇:agentica

同类项目推荐

ldp 开源

像换零件一样替换语言智能体的环境与优化器

Framework enabling modular interchange of language agents, environments, and optimiz···

★ 139 2026-10-13
attachments 开源

两行代码,把任意文件变成大模型能读的上下文

Easiest way to give context to LLMs; Attachments has the ambition to be the general ···

★ 368 2026-10-14
solana-agent-kit 开源

给 AI 装上 Solana 手脚,几行代码搞定链上操作

solana ai agent toolkit for modular monorepo with plugin architecture, first-class s···

★ 130 2026-08-09
NetCoreKevin 开源

拿来即用的 .NET AI 中台,快速搭知识库智能体

基于.NET搭建的企业级中台AI知识库智能体开源架构:Skill、MCP、Qdrant、知识库、Agent、多···

★ 556 2026-10-02
GraphRag.Net 开源

在 .NET 中一键集成 GraphRAG,让知识库问答更懂关系推理。

参考GraphRag使用 Semantic Kernel 来实现的dotnet版本,可以使用NuGet开箱即用集成到项目···

★ 230 2026-08-09
TypeChat 开源

用 TypeScript 类型定义,让大模型输出稳定可用的 JSON 数据

TypeChat is a library that makes it easy to build natural language interfaces using ···

★ 8692 2026-08-09
ai-devices 开源

快速搭建语音AI设备原型,集成主流模型开箱即用

AI Device Template Featuring Whisper, TTS, Groq, Llama3, OpenAI and more

★ 291 2026-08-09
IntelliJava 开源

几行 Java 代码,快速接入 ChatGPT、DALL·E 等 AI 服务

Integrate with the latest language models, image generation, speech, and deep learni···

★ 64 2026-08-09
PromptingTools.jl 开源

Julia 里几行代码调用大模型,提示词管理一步到位

Streamline your life using PromptingTools.jl, the Julia package that simplifies inte···

★ 178 2026-10-05