Files
Agents-Flex1/docs/changes.md
2025-08-27 19:57:12 +08:00

659 lines
26 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.3.4 20250817
- 新增Parameter 新增 formPlaceholder 属性
## v1.3.3 20250806
- 优化:优化合并 ConfirmParameter 到 Parameter以支持更多的场景
## v1.3.2 20250731
- 优化:优化 AiMessageResponse.getFunctionCallers 方法
- 修复:多轮 function call 时,获取最后一条 HumanMessage 错误的问题
- 修复Chain 的 Parameter 类型为 Array 时,内容固定值无法解析的问题
## v1.3.1 20250722
- 新增ChatOptions 新增 extra 配置,用于自定义大模型的参数内容
- 修复:节点异步执行的情况下,可能出现 check 不正确的问题
- 修复jsExecNode 无法转换结果为 JsonObject 的问题
- 优化:优化 getNodeContext 方法,只需要传入 id 值
- 优化:移除 Moonshot ,使用 openai 替代
## v1.2.9 20250718
- 优化:优化 parent 和 children 的过度设计,使之逻辑更加简洁
- 修复:修复 Node 包含子的 chain 时,会导致 json 解析错误的问题
## v1.2.8 20250715
- 新增: ReActAgent 添加 ChatOptions 的设置能力
- 新增: ConfirmParameter 添加更多的配置参数支持
- 优化: 优化 getParameterValues 的错误信息
- 优化: 移除 chain 非必要的 error 日志
- 优化: 优化 Chain.getParameterValues
## v1.2.7 20250713
- 新增:代码执行节点添加 “_context” 对象
- 新增:新增 Chain.toJSON() 和 Chain.fromJSON() 方法
- 新增:新增 ConfirmNode 用于支持用户手动确认的场景
- 优化:优化 Chain.getParameterValues 方法
- 优化:移动 Chain 监听器的相关类到 listener 包里去
## v1.2.6 20250709
- 新增: Chain 新增 getNodeExecuteResult 方法
- 优化:优化重构 EdgeCondition 和 NodeCondition 方法
## v1.2.5 20250707
- 新增:新增 Audio 多模态的支持
- 新增:新增 ReActMessageBuilder允许用户构建自定义的消息
- 优化feat: 修改 TextAndImageMessage 和 TextAndAudioMessage 为 HumanImageMessage 和 HumanAudioMessage
- 修复DeepseekLlm 无法自动注入,配置 factories 文件
## v1.2.4 20250701
- 新增:在节点执行出错时,添加必要的错误日志输出
- 新增:大模型 Parameter 添加子 Parameter 的配置支持
- 新增ReActAgent 添加 continueOnActionJsonParseError 和 continueOnActionInvokeError 配置
- 修复:修复 EmbeddingModel.dimensions() 错误信息不友好的问题
- 修复function call第二次请求模型时缺少了tools信息 close #ICG584
## v1.2.3 20250626
- 新增:节点添加循环执行的配置能力
- 新增:新增 starter 中 deepseek 的配置支持openai 可以指定 chatpath 属性
- 新增OpenAILlm 支持自定义 HttpClient
- 优化:优化 bom 模块依赖冲突 close #ICG2TD
- 优化:优化 ReActAgent 代码,新增更多的监听支持
- 优化:优化 OkHttpClientUtil 的默认参数
- 优化:重命名 JavascriptStringCondition 为 JsCodeCondition
- 修复:修复 Gitee 生成图片错误的问题
- 文档:更新 chain 的相关文档
- 文档:更新优化 LLM 示例代码
- 文档:优化 prompt 示例代码
- 文档:节点循环示例代码
## v1.2.2 20250618
- 新增:新增 es 和 lucene 搜索引擎
## v1.2.0 20250614
- 新增:新增 "default" rerank 模型,用于对接多个不同的 rerank 服务
- 新增:新增 ReAct Agent
- 优化:挂起-恢复执行逻辑优化,每次执行节点移除挂起节点列表中该节点
## v1.1.8 20250605
- 新增:阿里云增加余弦相似度得分回显
- 修复: 修正 Milvus 下 COSINE 相似度计算方法
## v1.1.7 20250604
- 修复:使用 qwen-plus 调用 function_call 没有正确拼接大模型返回的参数问题
- 修复: 修复 DeepseekLlmUtil 类型转换错误
- 修复: HistoriesPrompt 的 toMessages 可能多次添加 systemMessage 的问题
## v1.1.5 20250603
- 修复:修复 CodeNode 的 js 无法通过 "." 调用 map 数据的问题
## v1.1.4 20250530
- 新增: 为 ChainStartEvent 和 ChainResumeEvent 添加获取初始化参数的功能
- 优化: 优化 JsExecNode 在每次执行脚本时新建一个独立 Context
- 优化: 优化 Event 的 toString
- 修复: node 的状态在执行时未自动变化的问题
## v1.1.3 20250527
- 修复:修复阿里云百炼 text-embedding-v3 向量化使用 milvus 使用默认向量模型导致两次维度不一致问题
- 修复qwen3 非流式返回设置 enable_thinking 为 false
## v1.1.2 20250524
- 新增: StreamResponseListener 添加 onMatchedFunction 方法
- 新增: 添加 openai 兼容 api 的其他第三方 api 测试
- 优化: 添加 FunctionPrompt 的 toString 方法
- 优化: 优化 ImagePrompt 的方法
- 优化: 优化 ToolPrompt 支持多个方法调用
- 优化: 优化 Stream 模型下的 Function Call
- 优化: 优化 SseClient 的 tryToStop 方法
- 优化: 优化 FunctionCall 以及添加 toString 方法
- 优化: 优化 OpenAILlm.java
## v1.1.1 20250522
- 新增:新增 NodeErrorListener 用于监听 node 的错误情况
- 优化:重构 ChainErrorListener 的参数顺序
- 优化:优化 getParameterValues 的默认值获取
## v1.1.0 20250516
- 优化:增强 LLM 的 markdown 包裹优化
- 优化:重命名 StringUtil.obtainFirstHasText 方法名称为 getFirstWithText
- 修复:修复大模型节点,返回 json 内容时不正确的问题
- 修复:修复 EndNode 在输出固定值时出现 NPE 的问题
## v1.0.9 20250513
- 新增: Chain 添加 reset 方法,使之调用后可以执行多次
- 优化:不允许设置默认 EmbeddingOptions 配置的 encodingFormat
- 优化:修改模型思考过程的设置,让 content 和 reasoningContent 输出内容一致,感谢 @Alex
## v1.0.8 20250511
- 优化:优化 elasticSearch 用户自定义集合名称就用用户自定义集合,没有传就用默认集合名称
- 优化:从命名 TextPromptTemplate.create 方法名称为 TextPromptTemplate.of更加符合 “缓存” 的特征
- 修复:修复 openSearch 存储报错问题
- 文档:添加提示词相关文档
- 文档:添加 “模板缓存” 的相关文档
- 测试:添加 milvus 向量存储用法示例测试类,感谢 @lyg
## v1.0.7 20250508
- 新增: 添加 Milvus 的相识度返回
- 新增: Chain.getParameterValues 添加对固定数据格式填充的能力
- 优化: Parameter 添加 dataType 默认数据
- 优化: TextPromptTemplate.create 添加缓存以提高性能
## v1.0.6 20250507
- 新增: 增加 qdrant 向量数据库支持
- 优化: 重构 TextPromptTemplate使其支持更多的语法
- 优化: 优化 pom 管理
## v1.0.5 20250430
- 新增: 允许通过 ChatOptions 在运行时动态替换模型名称
- 新增:增加是否开启思考模式参数,适用于 Qwen3 模型
- 新增Document 增加文档标题
- 新增:增强知识库查询条件
- 新增:优化 Chain 的 get 逻辑,支持获取对象的属性内容
- 测试:添加通过 OpenAI 的 API 调用 Gitee 进行图片识别
- 测试:添加 chain 的数据获取测试
## v1.0.4 20250427
- 新增: 为 VectorData 添加 score 属性,统一文档 score 字段
- 优化:重构 Chain 的异步执行逻辑
## v1.0.3 20250425
- 新增: deepseek-r1 推理过程增量输出改为完整输出和内容的输出保持一致,感谢 @liutf
- 新增: 增加 QwenChatOptions让通义千问支持更多的参数感谢 @liutf
- 新增:新增 ChainHolder用于序列化 ChainNode以支持分布式执行
- 优化:优化 Chain在暂停时抛出异常
## v1.0.2 20250412
- feat: add JavascriptStringCondition
- refactor: move "description" property to ChainNode
- test: add ChainConditionStringTest
---
- 新增:添加 JavascriptStringCondition 条件
- 重构:移动 "description" 属性到 ChainNode
- 测试:添加 ChainConditionStringTest 测试
## v1.0.1 20250411
- fix: LlmNode can not return the correct result if outType is text
- fix: TextPromptTemplate can not parse `{{}}`
---
- 修复:修复 LlmNode 当配置 outType 时,不能返回正确结果的问题
- 修复TextPromptTemplate 无法可以解析 `{{}}` 的问题
## v1.0.0 20250407
- fix: fixed NodeContext.isUpstreamFullyExecuted() method
- feat: add "concurrencyLimitSleepMillis" config for SparkLlm
- feat: openai add chatPath config and embed path config
- feat: HistoriesPrompt add temporaryMessages config
---
- 修复NodeContext.isUpstreamFullyExecuted() 方法判断错误的问题
- 新增: SparkLlm 添加 concurrencyLimitSleepMillis 配置
- 新增: openai 添加 chatPath 配置和 embed path 配置
- 新增: HistoriesPrompt 添加 temporaryMessages 配置
## v1.0.0-rc.9 20250331
- feat: Added support for vector database Pgvector, thanks @daxian1218
- feat: Chain added "SUSPEND" state and ChainSuspendListener listener
- feat: Chain's RefType added "fixed" type.
- feat: Chain's Parameter added "defaultValue"
- feat: Chain added ChainResumeEvent event
- feat: ChainNode added "awaitAsyncResult" property configuration
- refactor: Return the complete response and answer information of coze chat to obtain complete information such as conversation_id, thanks @knowpigxia
- refactor: Optimize the implementation details of RedisVectorStore
- refactor: Chain removed OnErrorEvent and added ChainErrorListener instead
- refactor: Rename BaseNode's "getParameters" method to "getParameterValues"
- refactor: Rename Chain's event and remove the On prefix
---
- 新增:新增向量数据库 Pgvector 的支持,感谢 @daxian1218
- 新增Chain 新增 "SUSPEND" 状态以及 ChainSuspendListener 监听
- 新增Chain 的 RefType 新增 "fixed" 类型。
- 新增Chain 的 Parameter 新增 "defaultValue"
- 新增Chain 新增 ChainResumeEvent 事件
- 新增ChainNode 新增 "awaitAsyncResult" 属性配置
- 优化:返回 coze chat 完整的 response、answer 信息,以便获取 conversation_id 等完整信息,感谢 @knowpigxia
- 优化:优化 RedisVectorStore 的实现细节
- 优化Chain 移除 OnErrorEvent 并新增 ChainErrorListener 代替
- 优化:重命名 BaseNode 的 "getParameters" 方法为 "getParameterValues"
- 优化:重命名 Chain 的事件,移除 On 前缀
## v1.0.0-rc.8 20250318
- feat: Added LLM support for siliconflow, thanks @daxian1218
- feat: Chain's dynamic code node supports running Javascript scripts, thanks @hhongda
- feat: Removed deepseek's invalid dependency on openai module, thanks @daxian1218
- feat: Optimized EmbeddingModel and added direct embedding of String
---
- 新增:新增 LLM 对 siliconflow硅基流动的支持感谢 @daxian1218
- 新增Chain 的动态代码节点支持运行 Javascript 脚本,感谢 @hhongda
- 优化:移除 deepseek 无效的依赖 openai 模块,感谢 @daxian1218
- 优化:优化 EmbeddingModel添加直接对 String 的 embed
## v1.0.0-rc.7 20250312
- feat: Added the function of adding reasoning content to the return message, supporting deepseek's reasoning return, thanks @rirch
- feat: Added support for vectorexdb embedded version, no need to deploy database separately, thanks @javpower
- feat: Added support for accessing Tencent's large model language, Wensheng graph model and vectorization interface, thanks @sunchanghuilinqing
- feat: Support for docking Doubao doubao-1-5-vision-pro-32k multimodal model and Wensheng graph, thanks @wang110wyy
- feat: Added Wensheng graph model of Alibaba Bailian platform, thanks @sunchanghuilinqing
- feat: Added VLLM-based large model access, thanks @sunchanghuilinqing
- feat: Added LogUtil for log output
- feat: Optimized the relevant code logic of DnjsonClient
- fix: The problem of too long uid of Spark large model, thanks @wu-zhihao
- fix: ChatStream of Ollama Llm An error occurred when actively closing the stream
- fix: Fixed an issue where the endpoint configuration of OllamaProperties was incorrect by default
---
- 新增:添加在在返回消息中增加推理内容的功能,支持 deepseek 的推理返回,感谢 @rirch
- 新增:添加 vectorexdb 内嵌版本支持,无需额外部署数据库,感谢 @javpower
- 新增:添加接入腾讯大模型语言、文生图模型与向量化接口的支持,感谢 @sunchanghuilinqing
- 新增:对接豆包 doubao-1-5-vision-pro-32k 多模态模型以及文生图的支持,感谢 @wang110wyy
- 新增:新增阿里百炼平台的文生图模型,感谢 @sunchanghuilinqing
- 新增:新增基于 VLLM 部署大模型接入,感谢 @sunchanghuilinqing
- 新增:新增 LogUtil 用于输出日志
- 优化:优化 DnjsonClient 的相关代码逻辑
- 修复:星火大模型的 uid 太长的问题,感谢 @wu-zhihao
- 修复Ollama Llm 的 chatStream 主动关闭流时发生错误的问题
- 修复:修复默认情况下 OllamaProperties 的 endpoint 配置错误的问题
## v1.0.0-rc.6 20250220
- feat: Springboot's automatic configuration class for Ollama
- feat: Added ToolPrompt function to facilitate the use with Function Call
- refactor: Change openAi to openAI
- refactor: Optimize LlmNode and TextPromptTemplate
- refactor: Upgrade related dependencies to the latest version
- refactor: Optimize the empty user prompt words defined during the LlmNode runtime
- refactor: Move the package name of functions to the directory llm (destructive update!!!)
- refactor: Refactor InputParameter and OutputKey to merge into Parameter (destructive update!!!)
- fix: Use the openai interface to connect to the local ollama to build a large model, and multiple function definitions are called abnormally
- fix: Fix the problem that agents-flex-bom cannot pull group code
---
- 新增Springboot 对 Ollama 的自动配置类
- 新增:新增 ToolPrompt 功能,方便配合 Function Call 的使用
- 优化:修改 openAi 为 openAI
- 优化:优化 LlmNode 和 TextPromptTemplate
- 优化:升级相关依赖到最新版本
- 优化:优化 LlmNode 运行期定义空的用户提示词
- 优化:移动 functions 的包名到目录 llm破坏性更新 !!!
- 优化:重构 InputParameter 和 OutputKey 合并到 Parameter破坏性更新 !!!
- 修复:使用 openai 接口对接本地 ollama 搭建大模型,多个函数定义调用异常
- 修复:修复 agents-flex-bom 无法拉群代码的问题
## v1.0.0-rc.5 20250210
- feat: Added support for VectoRex vector database
- feat: Added support for DeepSeek large models
- feat: ImagePrompt adds support for local files, Stream and Base64 configurations
- refactor: agents-flex-bom facilitates one-click import of all modules
---
- 新增:添加 VectoRex 向量数据库的支持
- 新增:增加 DeepSeek 大模型的支持
- 新增ImagePrompt 添加本地文件、Stream 和 Base64 配置的支持
- 优化agents-flex-bom 方便一键导入所有模块
## v1.0.0-rc.4 20241230
- refactor: Use pom to build and only manage versions
- refactor: Optimize the relevant code of RedisVectorStore
- refactor: BaseNode.getChainParameters() method
- refactor: Optimize Chain.executeForResult method
---
- 优化: 采用 pom方式构建并只做版本统一管理
- 优化: 优化 RedisVectorStore 的相关代码
- 优化: BaseNode.getChainParameters() 方法
- 优化: 优化 Chain.executeForResult 方法
## 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 添加对 outputDefs 的定义支持
- 新增:添加 DocumentIdGenerator 用于在对文档存储时自动生成 id 的功能
- 新增StoreOptions 添加多个 partitionName 配置的支持
- 新增:当 Document 保存成功时,自动返回保存的 id
- 优化Chain.executeForResult 会抛出异常 ChainException
- 修复ChatGLM 的 Chat JSON 解析错误的问题
- 测试:优化 SparkLlmTest 的测试代码
- 文档:完善基础文档