refactor: Introduce accumulate_usage function for token aggregation, enhance alias map expansion in BatchProcessor, and streamline error handling in PreclassificationService. Update PDF processing utilities for improved image conversion and error logging.
This commit is contained in:
@@ -11,7 +11,7 @@ if TYPE_CHECKING:
|
||||
from application.profiles import get_profile
|
||||
from application.prompts import PromptBuilder
|
||||
from application.normalizer import normalize_to_schema
|
||||
from application.costs import compute_cost_from_usage, sum_costs
|
||||
from application.costs import compute_cost_from_usage, sum_costs, accumulate_usage
|
||||
from application.file_discovery import get_sorted_radicados, find_file_for_type_in_radicados, get_files_as_radicados
|
||||
from core.utils import collect_radicado_docs, collect_documents_flat
|
||||
|
||||
@@ -107,11 +107,7 @@ class Estimator:
|
||||
return self._build_result(usage_ext, usage_norm, len(entries), first["radicado"])
|
||||
|
||||
def _accumulate_usage(self, agg, new_usage):
|
||||
if not isinstance(new_usage, dict): return
|
||||
agg["prompt_tokens"] += int(new_usage.get("prompt_tokens") or 0)
|
||||
agg["completion_tokens"] += int(new_usage.get("completion_tokens") or 0)
|
||||
details = new_usage.get("prompt_tokens_details") or {}
|
||||
agg["prompt_tokens_details"]["cached_tokens"] += int(details.get("cached_tokens") or 0)
|
||||
accumulate_usage(agg, new_usage)
|
||||
|
||||
def _build_result(self, usage_ext, usage_norm, total_docs, first_radicado):
|
||||
model_ext = getattr(self.service.extractor, "model", None)
|
||||
|
||||
Reference in New Issue
Block a user