#
Junjie
4 天以前 d8d82ceda75fa17972d6996f83078367a19c1730
src/main/webapp/views/ai/llm_config.html
@@ -436,6 +436,12 @@
      </el-table-column>
      <el-table-column prop="httpStatus" label="状态码" width="90"></el-table-column>
      <el-table-column prop="latencyMs" label="耗时(ms)" width="95"></el-table-column>
      <el-table-column label="Tokens" width="140">
        <template slot-scope="scope">
          <div>{{ logTotalTokens(scope.row) }}</div>
          <div style="color:#909399;font-size:12px;">输{{ logPromptTokens(scope.row) }} / 出{{ logCompletionTokens(scope.row) }}</div>
        </template>
      </el-table-column>
      <el-table-column prop="traceId" label="TraceId" width="230"></el-table-column>
      <el-table-column label="错误" min-width="220">
        <template slot-scope="scope">
@@ -830,6 +836,7 @@
          + '模型: ' + (row.model || '-') + '\n'
          + '状态码: ' + (row.httpStatus != null ? row.httpStatus : '-') + '\n'
          + '耗时: ' + (row.latencyMs != null ? row.latencyMs : '-') + ' ms\n'
          + 'Tokens: ' + this.logTotalTokens(row) + '(输' + this.logPromptTokens(row) + ' / 出' + this.logCompletionTokens(row) + ')\n'
          + '结果: ' + (row.success === 1 ? '成功' : '失败') + '\n'
          + '错误: ' + (row.errorMessage || '-') + '\n\n'
          + '请求:\n' + (row.requestContent || '-') + '\n\n'
@@ -838,6 +845,27 @@
        this.logDetailText = text;
        this.logDetailVisible = true;
      },
      parseLogExtra: function(row) {
        if (!row || !row.extra) return {};
        if (typeof row.extra === 'object') return row.extra;
        try {
          return JSON.parse(row.extra);
        } catch (e) {
          return {};
        }
      },
      logPromptTokens: function(row) {
        var extra = this.parseLogExtra(row);
        return extra && extra.promptTokens != null ? extra.promptTokens : '-';
      },
      logCompletionTokens: function(row) {
        var extra = this.parseLogExtra(row);
        return extra && extra.completionTokens != null ? extra.completionTokens : '-';
      },
      logTotalTokens: function(row) {
        var extra = this.parseLogExtra(row);
        return extra && extra.totalTokens != null ? extra.totalTokens : '-';
      },
      deleteLog: function(row) {
        var self = this;
        if (!row || !row.id) return;