@Preview(value="3.1")
public interface ChatSession
extends org.noear.solon.lang.NonSerializable
用于管理对话过程中的消息序列。设计上支持易持久化特性, 是构建聊天机器人或 AI 交互应用的基础存储单元。
| 限定符和类型 | 方法和说明 |
|---|---|
default void |
addMessage(ChatMessage... messages)
添加消息
|
void |
addMessage(java.util.Collection<? extends ChatMessage> messages)
添加消息
|
default void |
addMessage(Prompt prompt)
添加消息
|
default void |
addMessage(java.lang.String userMessage)
添加消息
|
@NonNull java.util.Map<java.lang.String,java.lang.Object> |
attrs()
临时属性(不需要持久化)
|
void |
clear()
清空消息
|
java.util.List<ChatMessage> |
getLatestMessages(int windowSize)
获取最近消息
|
java.util.List<ChatMessage> |
getMessages()
获取消息
|
java.lang.String |
getSessionId()
获取会话id
|
boolean |
isEmpty()
是否为空
|
default void |
loadNdjson(java.io.InputStream ins)
|
default void |
loadNdjson(java.lang.String ndjson)
已过时。
|
default java.lang.String |
toNdjson()
已过时。
|
default void |
toNdjson(java.io.OutputStream out)
|
java.lang.String getSessionId()
java.util.List<ChatMessage> getMessages()
java.util.List<ChatMessage> getLatestMessages(int windowSize)
windowSize - 窗口大小default void addMessage(java.lang.String userMessage)
default void addMessage(ChatMessage... messages)
default void addMessage(Prompt prompt)
void addMessage(java.util.Collection<? extends ChatMessage> messages)
boolean isEmpty()
void clear()
@NonNull java.util.Map<java.lang.String,java.lang.Object> attrs()
@Deprecated
default java.lang.String toNdjson()
throws java.io.IOException
ChatMessage.toNdjson(Collection)java.io.IOException@Deprecated
default void toNdjson(java.io.OutputStream out)
throws java.io.IOException
java.io.IOException@Deprecated
default void loadNdjson(java.lang.String ndjson)
throws java.io.IOException
ChatMessage.fromNdjson(String, Consumer)java.io.IOException@Deprecated
default void loadNdjson(java.io.InputStream ins)
throws java.io.IOException
java.io.IOException