a584e1f59f
server 从 llm_calls[].usage 累加 prompt/completion_tokens 落库,admin 比价记录列表/详情据此展示 token 数与估算成本;配套迁移 comparison_token_cols。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
"""add input_tokens / output_tokens to comparison_record
|
|
|
|
比价记录增加本次 LLM 累计 token(server 从 llm_calls[].usage 累加),
|
|
供 admin 比价记录页展示 token 数与估算成本。
|
|
|
|
Revision ID: comparison_token_cols
|
|
Revises: feedback_review_fields
|
|
Create Date: 2026-06-23 00:40:00.000000
|
|
|
|
"""
|
|
from typing import Sequence, Union
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision: str = "comparison_token_cols"
|
|
down_revision: Union[str, Sequence[str], None] = "feedback_review_fields"
|
|
branch_labels: Union[str, Sequence[str], None] = None
|
|
depends_on: Union[str, Sequence[str], None] = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
op.add_column(
|
|
"comparison_record",
|
|
sa.Column("input_tokens", sa.Integer(), nullable=True),
|
|
)
|
|
op.add_column(
|
|
"comparison_record",
|
|
sa.Column("output_tokens", sa.Integer(), nullable=True),
|
|
)
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_column("comparison_record", "output_tokens")
|
|
op.drop_column("comparison_record", "input_tokens")
|