@@ -33,9 +33,9 @@ public CausalLMPipelineChatClient(
3333 _pipeline = pipeline ;
3434 }
3535
36- public virtual Task < ChatResponse > GetResponseAsync ( IList < ChatMessage > chatMessages , ChatOptions ? options = null , CancellationToken cancellationToken = default )
36+ public virtual Task < ChatResponse > GetResponseAsync ( IEnumerable < ChatMessage > messages , ChatOptions ? options = null , CancellationToken cancellationToken = default )
3737 {
38- var prompt = _chatTemplateBuilder . BuildPrompt ( chatMessages , options ) ;
38+ var prompt = _chatTemplateBuilder . BuildPrompt ( messages , options ) ;
3939 var stopSequences = options ? . StopSequences ?? Array . Empty < string > ( ) ;
4040
4141 var output = _pipeline . Generate (
@@ -49,30 +49,31 @@ public virtual Task<ChatResponse> GetResponseAsync(IList<ChatMessage> chatMessag
4949 {
5050 CreatedAt = DateTime . UtcNow ,
5151 FinishReason = ChatFinishReason . Stop ,
52+ ResponseId = Guid . NewGuid ( ) . ToString ( "N" ) ,
5253 } ) ;
5354 }
5455
5556#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously
5657 public virtual async IAsyncEnumerable < ChatResponseUpdate > GetStreamingResponseAsync (
5758#pragma warning restore CS1998 // Async method lacks 'await' operators and will run synchronously
58- IList < ChatMessage > chatMessages ,
59+ IEnumerable < ChatMessage > messages ,
5960 ChatOptions ? options = null ,
6061 [ EnumeratorCancellation ] CancellationToken cancellationToken = default )
6162 {
62- var prompt = _chatTemplateBuilder . BuildPrompt ( chatMessages , options ) ;
63+ var prompt = _chatTemplateBuilder . BuildPrompt ( messages , options ) ;
6364 var stopSequences = options ? . StopSequences ?? Array . Empty < string > ( ) ;
6465
66+ string responseId = Guid . NewGuid ( ) . ToString ( "N" ) ;
6567 foreach ( var output in _pipeline . GenerateStreaming (
6668 prompt ,
6769 maxLen : options ? . MaxOutputTokens ?? 1024 ,
6870 temperature : options ? . Temperature ?? 0.7f ,
6971 stopSequences : stopSequences . ToArray ( ) ) )
7072 {
71- yield return new ChatResponseUpdate
73+ yield return new ( ChatRole . Assistant , output )
7274 {
73- Role = ChatRole . Assistant ,
74- Text = output ,
7575 CreatedAt = DateTime . UtcNow ,
76+ ResponseId = responseId ,
7677 } ;
7778 }
7879 }
0 commit comments