diff --git a/src/AntSK.Domain/Domain/Service/KMService.cs b/src/AntSK.Domain/Domain/Service/KMService.cs index e69c31f..3a0891f 100644 --- a/src/AntSK.Domain/Domain/Service/KMService.cs +++ b/src/AntSK.Domain/Domain/Service/KMService.cs @@ -106,14 +106,15 @@ namespace AntSK.Domain.Domain.Service MaxTokensPerParagraph = kms.MaxTokensPerParagraph, OverlappingTokens = kms.OverlappingTokens }); + //加载OCR + WithOcr(memoryBuild, kms); //加载会话模型 WithTextGenerationByAIType(memoryBuild, chatModel, chatHttpClient); //加载向量模型 WithTextEmbeddingGenerationByAIType(memoryBuild, embedModel, embeddingHttpClient); //加载向量库 WithMemoryDbByVectorDB(memoryBuild); - //加载OCR - WithOcr(memoryBuild, kms); + _memory = memoryBuild.Build(); return _memory; } diff --git a/src/AntSK.OCR/AntSKOcrEngine.cs b/src/AntSK.OCR/AntSKOcrEngine.cs index 4677e78..dc27d3c 100644 --- a/src/AntSK.OCR/AntSKOcrEngine.cs +++ b/src/AntSK.OCR/AntSKOcrEngine.cs @@ -12,11 +12,11 @@ namespace AntSK.OCR public class AntSKOcrEngine : IOcrEngine { FullOcrModel model; - public async Task ExtractTextFromImageAsync(Stream imageContent, CancellationToken cancellationToken = default) + public Task ExtractTextFromImageAsync(Stream imageContent, CancellationToken cancellationToken = default) { if (model == null) { - model = await OnlineFullModels.ChineseV4.DownloadAsync(); + model = OnlineFullModels.ChineseV4.DownloadAsync().Result; } using (PaddleOcrAll all = new(model) { @@ -26,7 +26,7 @@ namespace AntSK.OCR { Mat src = Cv2.ImDecode(StreamToByte(imageContent), ImreadModes.Color); PaddleOcrResult result = all.Run(src); - return await Task.FromResult(result.Text); + return Task.FromResult(result.Text); } }