{% extends "ewoooc_base.html" %} {% block title %}PPT 視覺 QA 產線{% endblock %} {% block extra_css %} {% endblock %} {% block ewooo_content %} {% import "admin/_observability_labels.html" as obs_label %} {% set report_is_daily = report_type == 'daily' %}
PPT 視覺 QA 產線 · minicpm-v / AiderHeal / RAG 修法

PPT 視覺 QA 產線

這頁追蹤每份自動簡報是否通過視覺審核:檔案產出、minicpm-v 審核、Telegram 推送、RAG 修法建議與 AiderHeal 自動修產生器。

視覺模型
{{ '啟用' if vision_enabled else '停用' }} minicpm-v + LibreOffice
{{ report_month }} {{ selected_report_type.label }}
{{ files|length }} 檔案數
審核紀錄
{% if report_is_daily %}{{ audit_30d_stats.total if audit_30d_stats else '—' }}{% else %}—{% endif %} {{ report_is_daily and '僅 daily' or '切到 daily 可查看' }}
問題數
{% if report_is_daily %}{{ audit_30d_stats.total_issues if audit_30d_stats else '—' }}{% else %}—{% endif %} 視覺問題數
定義覆蓋
{{ auto_generation.ready_count }}/{{ auto_generation.total }} 自動簡報產線
{% if not vision_status.ready %}
視覺 QA 尚未就緒
目前不是模型能力問題,而是執行環境尚未完整開啟。
PPT_VISION_ENABLED={{ vision_status.env_value }} 模型 {{ vision_status.model }} {{ 'LibreOffice OK' if vision_status.converter_ready else '缺 LibreOffice' }}
{% if vision_status.blockers %} {{ vision_status.blockers|join(';') }} {% endif %}
{% endif %} {% if error %}
{{ error }}
{% endif %}
上個月 {{ report_month }} {% if show_next_month %} 下個月 {% else %} {% endif %}
{% for opt in report_type_options %} {{ opt.label }} {% endfor %}
{% if files %}
Preview Workbench

最近可預覽簡報

最新 {{ files[:4]|length }} 份,直接線上預覽或下載原始 PPTX
{% for f in files[:4] %}
{{ selected_report_type.label }} {{ f.mtime }}

{{ f.name }}

{{ f.size_kb if f.size_kb is not none else '—' }} KB {{ f.source }} {% if f.file_exists and f.is_valid_ppt %}可預覽{% else %}需回補{% endif %}
{% if f.file_exists and f.is_valid_ppt %} 線上預覽 {% endif %} {% if f.file_exists %} 下載 {% endif %}
{% endfor %}
{% endif %}
Pipeline Health

{{ pipeline_view.title }}

{{ pipeline_view.message }}

{{ pipeline_view.ready_count }}/{{ pipeline_view.total_count }} 定義覆蓋 {{ pipeline_view.valid_preview_count }} 份可預覽 {{ pipeline_view.audit_total }} 筆視覺 QA
{% for stage in pipeline_view.stages %}
{{ stage.label }}
{{ stage.value }} {{ stage.meta }}

{{ stage.detail }}

{% endfor %}
Action Queue

接下來要處理的事

把缺漏、預覽、視覺 QA、DB 寫入集中成工作隊列
{% for lane in pipeline_view.action_lanes %}
{{ lane.label }} {{ lane.count }}
{% for item in lane.entries %}
{{ item.title }} {{ item.meta }}

{{ item.detail }}

{{ item.status_label }} {% if item.filename and lane.key in ['preview', 'database'] %} 預覽 {% endif %}
{% else %}
{{ lane.empty_text }}
{% endfor %}
{% endfor %}
Production Command Center

簡報產線控制台

{% for cadence in auto_generation.cadences %}
{{ cadence.label }} {{ cadence.schedule_text }}
{{ cadence.status_label }} {{ cadence.coverage_text }}

{{ cadence.description }}

{% if cadence.missing_count > 0 %} 待補:{{ cadence.missing_report_labels[:3]|join('、') }}{% if cadence.missing_report_labels|length > 3 %} 等 {{ cadence.missing_report_labels|length }} 類{% endif %} {% else %} {{ cadence.status_hint }} {% endif %}
{% endfor %}
定義簡報 {{ auto_generation.ready_count }}/{{ auto_generation.total }} 目前缺漏 {{ auto_generation.missing_count }} 類
DB 紀錄 {{ generation_runs|length }} 本月最近寫入
線上預覽 PDF PPTX 轉檔快取
{% for item in auto_generation_items %}
{{ item.label }} {{ item.target_label or '最新資料' }}{% if item.latest_generated_at %} · {{ item.latest_generated_at }}{% endif %} {{ item.status_hint }}
{{ item.status_label }}
{% endfor %}
{% if auto_generation.enabled %} {{ auto_generation.cadence_summary }} 會定期產出並寫入 DB;目前缺漏 {{ auto_generation.missing_count }} 類。 {% else %} PPT_AUTO_GENERATION_ENABLED=false,已停用自動補齊。 {% endif %}
DB 產出紀錄

最近寫入 ppt_generation_runs

產出檔案、參數、狀態會同步保留在資料庫
{% if generation_runs %}
{% for run in generation_runs %}
{{ run.schedule_label }} {{ run.report_label }} {{ run.target_label or '最新資料' }} {{ run.status_label }} {{ run.started_at }}{% if run.finished_at %} → {{ run.finished_at }}{% endif %} {% if run.file_name %} 預覽 {% endif %}
{% endfor %}
{% else %}
目前查無本月 DB 產出紀錄;下一次自動排程或手動補齊後,會寫入 ppt_generation_runs 並顯示在這裡。
{% endif %}
審核歷史

視覺審核歷史({{ report_month }})

{% if report_is_daily %} {% for r in audit_records %} {% else %} {% endfor %}
時間檔名結果問題信心耗時錯誤動作
{{ r.audited_at }} {{ r.pptx_filename }} {% if r.audit_status == 'passed' %}通過 {% elif r.audit_status == 'failed' %}有問題 {% elif r.audit_status == 'error' %}錯誤 {% elif r.audit_status == 'skipped' %}跳過 {% else %}{{ r.audit_status }}{% endif %} {{ r.issues_count }} {{ "%.2f"|format(r.confidence) }} {{ r.duration_ms }} {{ (r.error_msg or '')[:80] }} {% if r.audit_status in ('failed','error') %} {% endif %}
目前無 daily 審核歷史;請確認 {{ report_month }} 是否已完成 22:00 排程。
{% else %}
非每日型資料

只有「每日日報」會進入視覺審核流程。

目前此頁只顯示每日以外的簡報檔案;若要追蹤視覺結果,請切到「每日日報」。

切到每日日報
{% endif %}
已產檔案

{{ report_month }} {{ selected_report_type.label }}

{% for f in files %} {% else %} {% endfor %}
檔名KB修改時間狀態操作
{{ f.name }} {{ f.size_kb if f.size_kb is not none else '—' }} {{ f.mtime }} {% if f.source == 'database' %} {% if f.file_exists %} {% if f.is_valid_ppt %} 資料庫快取 + 檔案可預覽 {% else %} 資料庫快取 + 檔案損毀,建議重跑 {% endif %} {% else %} 資料庫快取(檔案未落盤) {% endif %} {% elif f.source == 'both' %} {% if f.is_valid_ppt %} 檔案 + 資料庫 {% else %} 檔案 + 資料庫,檔案損毀 {% endif %} {% else %} {% if f.is_valid_ppt %} 22:00 掃描落盤,可預覽 {% else %} 22:00 掃描落盤,檔案損毀 {% endif %} {% endif %} {% if f.file_error %}
{{ f.file_error }}
{% endif %}
{% if f.file_exists %} {% if f.is_valid_ppt %} 線上預覽 {% else %} 檔案不可預覽 {% endif %} 下載 {% else %} 本機暫無檔案,請先至來源回補 {% endif %}
本月無 {{ selected_report_type.label }} 簡報
{% if rag_fixes %}
RAG 修法建議

RAG 自動修法建議

{% for fix in rag_fixes %}
{{ fix.pptx_filename }}{{ fix.audited_at }}
{{ fix.error_msg }}
    {% for h in fix.hits %}
  • {{ obs_label.insight(h.insight_type) }} 相似度 {{ "%.2f"|format(h.similarity) }}{{ h.content }}{% if h.content|length >= 200 %}…{% endif %}
  • {% endfor %}
{% endfor %}
{% endif %} {% if not vision_enabled %}
為什麼這頁空?
{% elif files|length == 0 %}
本月無資料
{% endif %}

Ollama 優先策略 v5.0 — PPT 視覺 QA 產線

{% endblock %}