diff --git a/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/OpenApiService.cs b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/OpenApiService.cs index 5a46a73e..ef9b0357 100644 --- a/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/OpenApiService.cs +++ b/Yi.Abp.Net8/module/ai-hub/Yi.Framework.AiHub.Application/Services/OpenApiService.cs @@ -1,4 +1,5 @@ -using Microsoft.AspNetCore.Http; +using Dm.util; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using OpenAI.Chat; @@ -36,13 +37,17 @@ public class OpenApiService : ApplicationService /// /// [HttpPost("openApi/v1/chat/completions")] - public async Task ChatCompletionsAsync([FromBody]ChatCompletionsInput input, CancellationToken cancellationToken) + public async Task ChatCompletionsAsync([FromBody] ChatCompletionsInput input, CancellationToken cancellationToken) { //前面都是校验,后面才是真正的调用 var httpContext = this._httpContextAccessor.HttpContext; - + var userId = await _tokenManager.GetUserIdAsync(GetTokenByHttpContext(httpContext)); var history = new List(); + if (!string.IsNullOrWhiteSpace(input.Prompt)) + { + history.add(ChatMessage.CreateSystemMessage(input.Prompt)); + } foreach (var aiChatContextDto in input.Messages) { if (aiChatContextDto.Role == "assistant") @@ -53,7 +58,7 @@ public class OpenApiService : ApplicationService { history.Add(ChatMessage.CreateUserMessage(aiChatContextDto.ConvertContent())); } - else if (aiChatContextDto.Role == "system") + else if (aiChatContextDto.Role == "system") { history.Add(ChatMessage.CreateSystemMessage(aiChatContextDto.ConvertContent())); }