Skip to content
/ iSerf Public

面向“数字生命“持续驻留和高频交互特点,借鉴游戏服务器架构理念,实现内存驻留+双工通信+事件驱动的智能体框架。

License

Notifications You must be signed in to change notification settings

karboom/iSerf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iSerf - 事件流驱动的智能Agent框架

iSerf 是一个基于事件流构建的智能Agent框架,采用响应式编程模型,支持创建高交互性的应用系统。该框架设计用于支持大规模Agent协作,并利用Reactor模式提供高性能的数据处理能力。

核心特性

  • 事件流驱动: 基于响应式编程模型,任意节点都可以监听和响应数据流
  • 高交互性: 支持创建具有复杂交互逻辑的应用程序
  • 大规模支持: 设计用于支持大量Agent协同工作
  • 高性能: 利用Reactor模式实现高效异步处理
  • 多协议支持: 内置多种通信协议实现
  • 自我进化: iFunction支持运行时自主进化代码

核心组件

  • Agent: 智能代理实体,可执行各种任务
  • Team: Agent协作团队,支持多Agent协同工作
  • LLM集成: 支持多种大语言模型(text, audio, embedding)
  • 内存管理: 提供本地内存和其他存储机制
  • 工具系统: 支持自定义工具和功能扩展
  • 服务器模块: 包含WebSocket、WebTransport、MQTT等多种通信协议

应用场景

  • 物联网AI终端
  • 人机混合会话

安装

依赖配置

implementation("io.github.karboom:iSerf:0.6.0-alpha")

使用示例

Agent

import me.karboom.java.iSerf.agent.Agent;
import me.karboom.java.iSerf.llm.text.OpenAI;
import me.karboom.java.iSerf.memory.Item;

import java.util.HashMap;
import java.util.Map;

public class AgentExample {
    public static void main(String[] args) {
        // 配置LLM
        var llmConfig = new HashMap<String, Object>();
        llmConfig.put("temperature", 0.7);
        llmConfig.put("max_tokens", 2000);
        
        var llm = new OpenAI(
            "gpt-4o-mini",
            llmConfig,
            "your-api-key",
            "https://api.openai.com/v1",
            3
        );
        
        // 创建Agent
        var prompt = "你是一个智能助手。";
        var agent = new Agent("assistant", prompt, llm, null) {};
        
        // 订阅响应流
        agent.broadcast
            .doOnError(e -> {
                System.err.println("发生错误: " + e.getMessage());
            })
            .subscribe(item -> {
                System.out.println("收到响应: " + item.getText());
                System.out.println("类型: " + item.getType());
                System.out.println("是否片段: " + item.getIsSegment());
            });
        
        // 发送消息
        agent.send("你好,请介绍一下自己");
    }
}

Team

About

面向“数字生命“持续驻留和高频交互特点,借鉴游戏服务器架构理念,实现内存驻留+双工通信+事件驱动的智能体框架。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages