Skip to content

wangzihaogithub/ai-assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ai-assistant

介绍

AI助手jar包,可二次开发复用 (基于langchain4j的java8版本开发)

Maven 依赖

<!-- https://github.com/wangzihaogithub/ai-assistant -->
<!-- https://mvnrepository.com/artifact/com.github.wangzihaogithub/ai-assistant -->
<dependency>
    <groupId>com.github.wangzihaogithub</groupId>
    <artifactId>ai-assistant</artifactId>
    <version>1.0.2</version>
</dependency>

<!-- Required Dependencies -->
<dependency>
  <groupId>dev.langchain4j</groupId>
  <artifactId>langchain4j</artifactId>
  <version>0.35.0</version>
</dependency>
<dependency>
  <groupId>dev.langchain4j</groupId>
  <artifactId>langchain4j-open-ai</artifactId>
  <version>0.35.0</version>
</dependency>
<dependency>
  <groupId>com.squareup.okhttp3</groupId>
  <artifactId>okhttp-sse</artifactId>
  <version>3.14.9</version>
</dependency>

模块结构

├── entity (数据实体)
├── dao (数据访问)
├── enums (业务自定义枚举)
├── serviceintercept (业务拦截器)
├── exception (明确区分的各种异常)
├── platform (平台agent接口 [阿里百炼等])
└── service (业务核心)
    ├── accessuser (用户访问授权)
    ├── jsonschema (json模型)
    ├── text (文本模型)
    │   ├── reasoning (思考)
    │   ├── acting (行动)
    │   ├── memory (记忆 [长期-片段,长期-变量,短期-消息记录])
    │   ├── chat (聊天 [终止记录,重新回答记录,消息记录,思考记录,联网记录])
    │   ├── nlu (自然语言理解 [文本分类、文本聚类、命名实体识别])
    │   ├── rerank (文本重排序)
    │   ├── embedding (向量模型)
    │   ├── repository (存储 [存数据库,存本地,消息截断,token截断])
    │   ├── sseemitter (sse推送)
    │   ├── tools (工具)
    │   └── variables (变量)
└── AiApplication.class (应用入口)

数据库实体 (Entity)

业务开发指南

1. 生命周期 (基于生命周期进行业务需求开发)

  • 触发业务逻辑: onUserTrigger.png
  • 消费业务逻辑: onFindJob.png
  • 系统生命周期: ChatStreamingResponseHandler.png

2. 逻辑控制

  • sseresponse.png

3. 会话用户

  • accessuser.png

4. 追加提示词变量

  • var.png

About

AI助手

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages