跳轉到

Introduction

為什麼需要 Prov-AI AP?

當你打開一份索引典(thesaurus),看到一個術語對應到一段翻譯、一條範圍註、幾個同義詞,你可能會問:

這是怎麼產生的?是誰決定的?背後有哪些討論?來源證據是什麼?這個結論可以被重現嗎?

在傳統的索引典維護中,這些問題的答案存在編輯者的腦袋裡、版本控制系統的 commit message 裡、或散落在 email 串、會議紀錄、Word 文件裡。當索引典開始使用生成式 AI(ChatGPT、Claude、Gemini)協助轉譯、撰寫、辨識同義詞時,這些「為什麼」的軌跡會更複雜:

  • 你用了哪個模型版本?哪段提示詞?哪些上下文檔案?
  • AI 在第幾回合給出最終建議?前面幾回合都討論了什麼?
  • AI 引用的來源是什麼?是不是幻覺?
  • 哪些結論你採納了?哪些你拒絕?理由是什麼?

Prov-AI AP 把這些問題變成可以用 SPARQL 查詢、用 SHACL 驗證、用 PROV graph 視覺化的結構化資料模型。

設計哲學

Prov-AI AP 不是「再發明一套溯源標準」,而是把幾個已存在的國際標準組合成適合 GLAM × AI-assisted KOS editing 的 application profile:

標準 在 Prov-AI AP 的角色
W3C PROV-O 溯源骨架(Entity / Activity / Agent / Collection / qualified association)
W3C SKOS(含可選 SKOS-XL) KOS 概念與控制詞彙(5 個 L1 必用 ConceptScheme + 1 個 L2 可選)
DCMI Metadata Terms 識別、來源、版本、語言、授權
DCMI Singapore Framework AP 五層架構
W3C DQV(L2) 品質量測
W3C Web Annotation(L2) 精細引用、片段定位
ISO 25964-1 KOS 維護概念性依據(以 SKOS / SKOS-XL 落地)
W3C Profiles Vocabulary (PROF) 對外 packaging
DCTAP 表格化 statement templates

L1 Core / L2 Modules 分層

Prov-AI AP 把元素分成兩層:

L1 Core(37 active + 1 deprecated)

L1 是「能定錨、能重現條件、能回指證據、能交代責任與決策、能串起版本/事件鏈」的 minimum closure——回答 CQ1–CQ10 的最小元素集合。

L1 由以下主要 classes 組成:

  • skos:Concept — KOS 概念(如 AAT 主題詞)
  • ex:WorkItem — 一個工作單位(CQ1–CQ3 定錨:要做什麼術語的什麼任務)
  • ex:TaskRun — 任務執行(CQ2、CQ9:在哪、由誰啟動、何時開始)
  • ex:TurnRun — 任務內的每一回合對話或步驟(CQ4–CQ8)
  • ex:Artifact — 任何可被指涉的資訊實體(提示詞、模型組態、回應快照、來源證據、決策註記、案例蒐藏)
  • ex:Result — 最終成果(CQ6–CQ8)
  • prov:Agent / prov:Association — 誰做的、扮演什麼角色
  • prov:Collection(ContextPack) — 每回合的輸入脈絡集合

加上 5 個 L1 必用 ConceptScheme: - TaskTypeScheme / ActivityTypeScheme / ArtifactTypeScheme / RoleScheme / DecisionOutcomeScheme

L2 Modules(17 active)

L2 是依任務啟用的治理強化模組:

模組 CQ 用途
L2-OA CQ13–CQ15 精細引用與片段定位(Web Annotation Selector)
L2-DQV CQ11–CQ12 品質量測(QualityMeasurement + Metric)
L2-APITrace API/工具鏈追蹤(typed Artifact + ex:metaJSON)
L2-Reference 引用角色分流(ReferenceRoleScheme)

完整 conformance class 定義見 Conformance

核心設計模式

Prov-AI AP 有幾個關鍵的設計選擇,幫你避免常見的「class 與欄位爆炸」陷阱:

Typed Artifact Pattern

不為每一種「東西」都開一個 class,而是統一為:

ex:Artifact  prov:Entity
ex:artifactType  skos:Concept (ArtifactTypeScheme L1×9)

ArtifactTypeScheme 的 L1×9 涵蓋:PromptVersion / PromptInstance / ModelConfig / ResponseSnapshot / ResultSnapshot / DecisionNote / SourceEvidence / ContextPack / CaseCorpus。

詳見 Concept Schemes → ArtifactType

Roles-as-SKOS Pattern

所有「角色 / 類型 / 狀態 / 策略」以 skos:Concept 表示,用 ConceptScheme 治理(跨專案可複用):

prov:Association
  prov:agent <some-agent> ;
  prov:hadRole <provai:scheme/RoleScheme/Editor> .

RoleScheme 含 4 角色(Editor / Reviewer / ModelRunner / Evaluator),對齊 DataCite contributorType 與 MARC relator codes。

詳見 Concept Schemes → Role

Location Standardization(三分工)

prov:atLocation         → 位置(chat_url / share_url / api_log_url / blob URI)
dcterms:source          → 來源依據(指向 ex:Artifact)
oa:hasSelector (L2)     → 片段定位(TextQuote / TextPosition / Fragment)
ex:contentHash          → 完整性校驗(可選)

Share / API 雙路徑共用同一 schema

ChatGPT share URL(前端使用者操作的紀錄)與 OpenAI API(後端工具呼叫的紀錄)兩條路徑共用一份 schema。share-only redact(例如 share path 沒有 request_id)用 import_warnings 表達,不分裂兩套 schema。

詳見 Usage Guidelines

接下來