Split AI token counters by provider

This commit is contained in:
Wojtek
2026-10-16 19:48:45 +02:00
parent 08220dc6e8
commit bf05c9515c
5 changed files with 46 additions and 13 deletions
@@ -34,13 +34,22 @@ use Joomla\CMS\Router\Route;
<div class="col-md-3 align-self-end"><button type="submit" class="btn btn-primary"><?php echo \Joomla\CMS\Language\Text::_('JSEARCH_FILTER_SUBMIT'); ?></button></div>
</div>
<div class="alert alert-info" role="status">
<strong><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_RESULTS_AI_TOKENS_TOTAL'); ?>:</strong>
<?php echo number_format((int) $this->aiUsageTotals['total_tokens'], 0, ',', ' '); ?> <?php echo $this->escape(\Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_AI_USAGE_TOTAL')); ?>
(<?php echo number_format((int) $this->aiUsageTotals['input_tokens'], 0, ',', ' '); ?> in /
<?php echo number_format((int) $this->aiUsageTotals['output_tokens'], 0, ',', ' '); ?> out)
<?php if ($this->aiUsageTotals['cost_usd'] > 0) : ?>
· <?php echo number_format((float) $this->aiUsageTotals['cost_usd'], 8, ',', ' '); ?> USD
<?php endif; ?>
<strong><?php echo $this->escape(\Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_RESULTS_AI_TOKENS_TOTAL')); ?>:</strong>
<span class="d-block">
<strong>OpenAI:</strong>
<?php echo number_format((int) $this->aiUsageTotals['providers']['openai']['total_tokens'], 0, ',', ' '); ?> tokenów
(<?php echo number_format((int) $this->aiUsageTotals['providers']['openai']['input_tokens'], 0, ',', ' '); ?> wej. /
<?php echo number_format((int) $this->aiUsageTotals['providers']['openai']['output_tokens'], 0, ',', ' '); ?> wyj.)
<?php if ($this->aiUsageTotals['providers']['openai']['cost_usd'] > 0) : ?> · <?php echo number_format((float) $this->aiUsageTotals['providers']['openai']['cost_usd'], 8, ',', ' '); ?> USD<?php endif; ?>
</span>
<span class="d-block">
<strong>Grok:</strong>
<?php echo number_format((int) $this->aiUsageTotals['providers']['grok']['total_tokens'], 0, ',', ' '); ?> tokenów
(<?php echo number_format((int) $this->aiUsageTotals['providers']['grok']['input_tokens'], 0, ',', ' '); ?> wej. /
<?php echo number_format((int) $this->aiUsageTotals['providers']['grok']['output_tokens'], 0, ',', ' '); ?> wyj.)
<?php if ($this->aiUsageTotals['providers']['grok']['cost_usd'] > 0) : ?> · <?php echo number_format((float) $this->aiUsageTotals['providers']['grok']['cost_usd'], 8, ',', ' '); ?> USD<?php endif; ?>
</span>
<span class="d-block"><strong>Łącznie:</strong> <?php echo number_format((int) $this->aiUsageTotals['total_tokens'], 0, ',', ' '); ?> tokenów</span>
</div>
<table class="table table-striped">
<thead><tr>
@@ -70,10 +79,12 @@ use Joomla\CMS\Router\Route;
<td><?php echo HTMLHelper::_('date', $item->created, 'Y-m-d H:i'); ?></td>
<td>
<?php if ($item->ai_total_tokens > 0) : ?>
<?php echo number_format((int) $item->ai_total_tokens, 0, ',', ' '); ?> <?php echo $this->escape(\Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_AI_USAGE_TOTAL')); ?>
<small class="d-block text-muted">
<?php echo number_format((int) $item->ai_input_tokens, 0, ',', ' '); ?> in /
<?php echo number_format((int) $item->ai_output_tokens, 0, ',', ' '); ?> out
OpenAI: <?php echo number_format((int) $item->ai_tokens_by_provider['openai'], 0, ',', ' '); ?> ·
Grok: <?php echo number_format((int) $item->ai_tokens_by_provider['grok'], 0, ',', ' '); ?>
</small>
<small class="d-block text-muted">
<?php echo number_format((int) $item->ai_total_tokens, 0, ',', ' '); ?> łącznie
<?php if ($item->ai_cost_usd > 0) : ?> · <?php echo number_format((float) $item->ai_cost_usd, 8, ',', ' '); ?> USD<?php endif; ?>
</small>
<?php else : ?>