From 462e5c3a3a2f7b8af826b6eea1f6d6604fad45ce Mon Sep 17 00:00:00 2001 From: mathijs-bb Date: Wed, 10 Dec 2025 16:40:12 +0100 Subject: [PATCH] Added usage to XLIFF output --- Apps.OpenAI/Actions/EditActions.cs | 12 ++++++++---- Apps.OpenAI/Actions/TranslationActions.cs | 6 ++++-- Apps.OpenAI/Apps.OpenAI.csproj | 4 ++-- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Apps.OpenAI/Actions/EditActions.cs b/Apps.OpenAI/Actions/EditActions.cs index e9a9a52..7b03945 100644 --- a/Apps.OpenAI/Actions/EditActions.cs +++ b/Apps.OpenAI/Actions/EditActions.cs @@ -137,8 +137,10 @@ async Task> BatchTranslate(IEnumerable<(Unit Unit segment.State = SegmentState.Reviewed; } - unit.Provenance.Review.Tool = UniversalClient.GetModel(modelIdentifier.ModelId); - unit.Provenance.Review.ToolReference = $"https://openai.com/{UniversalClient.GetModel(modelIdentifier.ModelId)}"; + var model = UniversalClient.GetModel(modelIdentifier.ModelId); + unit.Provenance.Review.Tool = model; + double tokens = result.Usage.TotalTokens / processedBatches.Count(); + unit.AddUsage(model, Math.Round(tokens, 0), UsageUnit.Tokens); } result.TotalSegmentsUpdated = updatedCount; @@ -431,8 +433,10 @@ async Task> BatchTranslate(IEnumerable<(Unit Unit segment.State = SegmentState.Reviewed; } - unit.Provenance.Review.Tool = UniversalClient.GetModel(modelIdentifier.ModelId); - unit.Provenance.Review.ToolReference = $"https://openai.com/{UniversalClient.GetModel(modelIdentifier.ModelId)}"; + var model = UniversalClient.GetModel(modelIdentifier.ModelId); + unit.Provenance.Review.Tool = model; + double tokens = result.Usage.TotalTokens / processedBatches.Count(); + unit.AddUsage(model, Math.Round(tokens, 0), UsageUnit.Tokens); } result.TotalSegmentsUpdated = updatedCount; diff --git a/Apps.OpenAI/Actions/TranslationActions.cs b/Apps.OpenAI/Actions/TranslationActions.cs index 65aa33f..398a7f4 100644 --- a/Apps.OpenAI/Actions/TranslationActions.cs +++ b/Apps.OpenAI/Actions/TranslationActions.cs @@ -147,8 +147,10 @@ async Task> BatchTranslate(IEnumerable<(Unit Unit } } - unit.Provenance.Translation.Tool = UniversalClient.GetModel(modelIdentifier.ModelId); - unit.Provenance.Translation.ToolReference = $"https://openai.com/{UniversalClient.GetModel(modelIdentifier.ModelId)}"; + var model = UniversalClient.GetModel(modelIdentifier.ModelId); + unit.Provenance.Translation.Tool = model; + double tokens = result.Usage.TotalTokens / processedBatches.Count(); + unit.AddUsage(model, Math.Round(tokens, 0), UsageUnit.Tokens); } result.TargetsUpdatedCount = updatedCount; diff --git a/Apps.OpenAI/Apps.OpenAI.csproj b/Apps.OpenAI/Apps.OpenAI.csproj index 7b718f7..94187d1 100644 --- a/Apps.OpenAI/Apps.OpenAI.csproj +++ b/Apps.OpenAI/Apps.OpenAI.csproj @@ -4,7 +4,7 @@ net8.0 OpenAI Creating safe artificial general intelligence that benefits all of humanity - 2.8.11 + 2.8.12 Apps.OpenAI @@ -13,7 +13,7 @@ - +