feat: 消息创建返回ID并在流式响应中下发
- 消息管理器创建用户/系统消息时返回 MessageId - 网关在流式响应中新增消息创建事件,返回 MessageId 与创建时间 - 统一在消息创建完成后发送 [DONE] 标识,优化流式结束时机
This commit is contained in:
@@ -24,11 +24,12 @@ public class AiMessageManager : DomainService
|
||||
/// <param name="input">消息输入</param>
|
||||
/// <param name="tokenId">Token Id(Web端传Guid.Empty)</param>
|
||||
/// <returns></returns>
|
||||
public async Task CreateSystemMessageAsync(Guid? userId, Guid? sessionId, MessageInputDto input, Guid? tokenId = null)
|
||||
public async Task<Guid> CreateSystemMessageAsync(Guid? userId, Guid? sessionId, MessageInputDto input, Guid? tokenId = null)
|
||||
{
|
||||
input.Role = "system";
|
||||
var message = new MessageAggregateRoot(userId, sessionId, input.Content, input.Role, input.ModelId, input.TokenUsage, tokenId);
|
||||
await _repository.InsertAsync(message);
|
||||
return message.Id;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -40,7 +41,7 @@ public class AiMessageManager : DomainService
|
||||
/// <param name="tokenId">Token Id(Web端传Guid.Empty)</param>
|
||||
/// <param name="createTime"></param>
|
||||
/// <returns></returns>
|
||||
public async Task CreateUserMessageAsync( Guid? userId, Guid? sessionId, MessageInputDto input, Guid? tokenId = null,DateTime? createTime=null)
|
||||
public async Task<Guid> CreateUserMessageAsync( Guid? userId, Guid? sessionId, MessageInputDto input, Guid? tokenId = null,DateTime? createTime=null)
|
||||
{
|
||||
input.Role = "user";
|
||||
var message = new MessageAggregateRoot(userId, sessionId, input.Content, input.Role, input.ModelId, input.TokenUsage, tokenId)
|
||||
@@ -48,5 +49,6 @@ public class AiMessageManager : DomainService
|
||||
CreationTime = createTime??DateTime.Now
|
||||
};
|
||||
await _repository.InsertAsync(message);
|
||||
return message.Id;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user