agents-flex/changes.md
2024-11-21 11:31:07 +08:00

295 lines
11 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Agents-Flex ChangeLog
## v1.0.0-rc.3 20241126
- refactor: optimize Chain.executeForResult() method
- refactor: optimize Chain events
- fix: fixed Spark payload build error
- fix: fixed qwen model unable to embed
---
- 优化: 优化 Chain.executeForResult() 方法
- 优化: 优化 Chain 的相关 event 事件
- 修复: 修复星火大模型 payload 构建错误
- 修复: 修复 qwen 大模型无法使用 Embedding 的问题
## v1.0.0-rc.2 20241118
- feat: Gitee AI adds support for Function Calling
- feat: HumanMessage adds support for toolChoice configuration
- refactor: Optimize editing node BaseNode and Maps tool classes
---
- 新增: Gitee AI 添加对 Function Calling 的支持
- 新增: HumanMessage 添加 toolChoice 配置的支持
- 优化: 优化编辑节点 BaseNode 和 Maps 工具类
## v1.0.0-rc.1 20241106
- refactor: add BaseFunction.java
- fix: spark LLM can not support v4.0
- fix: fix code node can not get the parameters
---
- 优化:新增 BaseFunction 类
- 修复:修复星火大模型不支持 v4.0 的问题
- 修复:修复代码节点无法获取参数的问题
## v1.0.0-rc.0 20241104
- refactor: refactor llm apis
- refactor: refactor chain and nodes
- refactor: optimize agents-flex-solon-plugin @noear_admin
---
- 优化:重构 llm api
- 优化:重构 chain 链路 及其相关节点
- 优化:优化 agents-flex-solon-plugin @noear_admin
## v1.0.0-beta.13 20241026
- feat: add plugin for solon framework
- refactor: optimize VectorStore delete methods
- refactor: optimize RedisVectorStore for sort by desc
- refactor: optimize SparkLLM embedding
---
- 新增:添加 solon 添加新的插件支持
- 优化: 重构 VectorStore 的 delete 方法
- 优化: 优化 RedisVectorStore 的搜索排序
- 优化: 星火大模型新增秒级并发超过授权路数限制进行重试
## v1.0.0-beta.12 20241025
- refactoradd DocumentStoreConfig
- refactoroptimize HistoriesPrompt.java
- refactor: update pom.xml in agents-flex-bom
- refactor: upgrade jedis version to "5.2.0"
- refactor: optimize RedisVectorStore
- fix: NoClassDefFoundError in jdk17: javax/xml/bind/DatatypeConverter 感谢 @songyinyin #I9AELG
---
- 优化:添加 DocumentStoreConfig向量数据库的配置都实现 DocumentStoreConfig
- 优化:重构优化 HistoriesPrompt使其支持更多的属性配置
- 优化:更新 agents-flex-bom 的 pom.xml
- 优化:升级 jedis 版本为 "5.2.0"
- 优化:重构 RedisVectorStore 的错误信息,使之错误信息更加友好
- 修复:修复 jdk17 下出现 NoSuchMethodError 问题,感谢 @songyinyin #I9AELG
## v1.0.0-beta.11 20240918
- feat: GenerateImageRequest add negativePrompt property
- feat: Maps Util add putOrDefault method
- feat: add siliconFlow image models
- feat: ChatOptions add "seed" property
- feat: Maps can put a child map by key
- feat: Ollama add options config
- feat: Ollama function calling support
- feat: add StringUtil.isJsonObject method
- refactor: BaseImageRequest add extend options property
- refactor: make ImagePrompt to extends HumanMessage
- refactor: ImageResponse add error flag and errorMessage properties
- refactor: rename Image.writeBytesToFile to writeToFile
- refactor: rename "giteesd3" to "gitee"
- refactor: optimize VectorData.toString
---
- 新增GenerateImageRequest 添加反向提示词相关属性
- 新增Maps 工具类添加 putOrDefault 方法
- 新增:添加 siliconFlow 的图片模型的支持
- 新增: ChatOptions 添加 "seed" 属性
- 新增Maps 可以 put 一个子 map 的功能
- 新增:新增 Ollama 的函数调用Function Calling的支持
- 新增:添加 StringUtil.isJsonObject 方法
- 优化:重构 BaseImageRequest 类,添加 options 属性
- 优化:重构 ImagePrompt 使之继承于 HumanMessage
- 优化:重构 ImageResponse 类,添加 error 和 errorMessage 属性
- 优化:修改 Image.writeBytesToFile 方法为 writeToFile
- 优化:重命名 "giteesd3" 为 "gitee"
- 优化:重构 VectorData.toString 方法
## v1.0.0-beta.10 20240909
- feat: Added support for RedisStore vector storage, thanks to @giteeClass
- feat: Added support for large model dialogues for Coze Bot, thanks to @yulongsheng
- feat: Automatic configuration of Springboot for ElasticSearch Store, thanks to @songyinyin
- feat: Added support for Embedding of Tongyi Qianwen, thanks to @sssllg
- feat: Added support for all text generation models of Gitee AI's serverless
- feat: Added support for all image generation models of Gitee AI's serverless
- docs: Corrected sample code errors in the documentation
---
- 新增:添加 RedisStore 的向量存储支持,感谢 @giteeClass
- 新增:新增 Coze Bot 的大模型对话支持,感谢 @yulongsheng
- 新增: ElasticSearch Store 对 Springboot 的自动配置功能,感谢@songyinyin
- 新增:新增通义千问的 Embedding 支持,感谢 @sssllg
- 新增:新增对 Gitee AI 的 serverless 所有文本生成模型的支持
- 新增:新增对 Gitee AI 的 serverless 所有图片生成模型的支持
- 文档:修正文档的示例代码错误
## v1.0.0-beta.9 20240813
- feat: add custom request header in openaiLLM https://github.com/agents-flex/agents-flex/issues/5
- feat: add https.proxyHost config for the http client, close https://github.com/agents-flex/agents-flex/issues/1
- feat: add SpringBoot3 auto config support @songyinyin
- feat: add openSearch store support @songyinyin
- fix: fix config error in QwenAutoConfiguration @songyinyin
- fix: NPE in OpenAiLLmUtil.promptToEmbeddingsPayload
- fix: fix FunctionMessageResponse error in BaseLlmClientListener, @imayou
- refactor: update bom module
- refactor: optimize SparkLlm.java
---
- 新增: 添加自定义 openaiLLM 请求 api 的支持 https://github.com/agents-flex/agents-flex/issues/5
- 新增: 添加 https.proxyHost 配置的支持 https://github.com/agents-flex/agents-flex/issues/1
- 新增: 添加对 SpringBoot3 自动配置的支持 @songyinyin
- 新增: 添加使用 openSearch 用于向量数据存储的支持 @songyinyin
- 修复: 修复 QwenAutoConfiguration 配置错误的问题 @songyinyin
- 修复: 修复 OpenAiLLmUtil.promptToEmbeddingsPayload 空指针异常的问题
- 修复: 修复 FunctionMessageResponse 在某些情况下出错的问题, @imayou
- 优化: 更新重构 bom 模块
- 优化: 优化 SparkLlm.java 的相关代码
## v1.0.0-beta.8 20240714
- feat: add "async" flag for the ChainNode
- feat: add Ollama LLM
- feat: add DnjsonClient for OllamaLlm
- refactor: refactor ChainCondition.java
- refactor: add throw LlmException if LLMs has error
- refactor: refactor DocumentParser
- refactor: refactor chain module
- refactor: rename GroovyExecNode.java and QLExpressExecNode.java
- refactor: add children property in Parameter
- refactor: remove unused code AsyncHttpClient.java
- refactor: use LlmException to replace LLMClientException
fix: Milvus type mismatch for filed 'id'
- test: add LoopChain test
- test: add ollama test use openai instance
- docs: add Japanese README
---
- 新增:为 ChainNode 添加 "async" 属性标识的设置
- 新增:添加基于 Ollama 大语言模型的对接,非 openai 适配模式
- 新增:新增 DnjsonClient 用于和 Ollama 的 stream 模型对接
- 优化:重构 ChainCondition
- 优化chat 时当大语言模型发生错误时抛出异常,之前返回 null
- 优化:重构 DocumentParser
- 优化Parameter 支持子参数的配置能力
- 修复Milvus 向量数据库当传入 number 类型是出错的问题
- 测试:添加对 LoopChain 的测试
- 测试:添加文使用 openai 兼容 api 对 Ollama 对接的测试
## v1.0.0-beta.7 20240705
- feat: add image models support
- feat: add SimpleTokenizeSplitter
- feat: add OmniParseDocumentParser
- feat: add openaistability AI and gitee-sd3 AI support
- feat: add moonshot support
- feat: add chain dsl support
- refactor: optimize llm clients
- refactor: optimize SparkLLM
- refactor: optimize slf4j dependencies
- refactor: optimize Agent define
- refactor: optimize chain
- test: add .pdf and .doc parse test
- test: add SimpleDocumentSplitterTest.java
---
- 新增:新增图片模型的支持
- 新增:新增 SimpleTokenizeSplitter 分割器
- 新增:新增 OmniParseDocumentParser 文档解析器
- 新增:新增 openai、stability ai 以及 gitee ai 对图片生成的支持
- 新增:新增月之暗面的支持
- 优化:优化 llm 客户端的细节
- 优化:优化星火大模型的细节
- 优化:优化 slf4j 依赖的细节
- 优化:优化 Agent 和 Chain 的定义细节
- 测试:添加 .pdf 和 .doc 的解析测试
- 测试:添加文档分割器的测试
- 测试:添加 token 文档分割器的测试
## v1.0.0-beta.5 20240617
- feat: add ImagePrompt to send image to LLM
- feat: chatOptions add topP/topK and stop config
- refactor: rename TextMessage.java to AbstractTextMessage.java
- refactor: refactor llm methods
- refactor: refactor FunctionMessageResponse.java
- refactor: optimize HttpClient.java And SseClient.java
- fix: fix function calling error in QwenLLM
- test: add chat with image test
---
- 新增:新增 ImagePrompt 用于发送图片对话的场景
- 新增:对话模型下的 ChatOptions 添加 topK 和 topP 配置的支持
- 优化:重命名 TextMessage 为 AbstractTextMessage
- 优化:重构 LLM 的方法定义,使之更加简单易用
- 优化:优化 HttpClient.java 和 SseClient.java 的相关代码
- 修复:通义千问 QwenLLM 在 function calling 下无法正常调用的问题
- 测试:添加发送图片相关的测试内容
## v1.0.0-beta.4 20240531
- feat: OpenAiLlm support embedding model config
- feat: add get dimensions method in EmbeddingModel
- feat: SparkLlm support embedding
- feat: optimize MilvusVectorStore
- feat: MilvusVectorStore add username and password config
- refactor: optimize HttpClient.java
- refactor: optimize AliyunVectorStore
- refactor: update StoreOptions to extends Metadata
- refactor: optimize StoreResult and Metadata
- fix: fix AIMessage tokens parse
---
- 新增OpenAiLlm 添加自定义 embedding 模型的支持
- 新增EmbeddingModel 添加获取向量维度的支持
- 新增SparkLlm 星火大模型添加对 embedding 的支持
- 新增:添加 Milvus 向量数据库的支持
- 优化:优化 HttpClient 的代码
- 优化:优化 AliyunVectorStore 的代码
- 优化:优化 StoreOptions 和 Metadata 的代码
- 修复AIMessage 的 tokens 消耗解析不正确的问题
## v1.0.0-beta.3 20240516
- featadd "description" to agent for automatic arrangement by LLM
- feat: StoreResult can return ids if document store success
- feat: StoreOptions support set multi partitionNames
- feat: add DocumentIdGenerator for Document and Store
- feat: add ChainException for Chain.executeForResult
- refactor: rename "SimplePrompt" to "TextPrompt"
---
- 新增:为 Agent 添加 description 属性,方便用于 AI 自动编排的场景
- 新增Agent 添加对 outputKeys 的定义支持
- 新增:添加 DocumentIdGenerator 用于在对文档存储时自动生成 id 的功能
- 新增StoreOptions 添加多个 partitionName 配置的支持
- 新增:当 Document 保存成功时,自动返回保存的 id
- 优化Chain.executeForResult 会抛出异常 ChainException
- 修复ChatGLM 的 Chat JSON 解析错误的问题
- 测试:优化 SparkLlmTest 的测试代码
- 文档:完善基础文档