Context
Semantic Kernel orchestrates AI capabilities through plugins and functions. When a kernel function generates output — whether from an LLM, a connector, or a chain of function calls — the result carries no provenance metadata:
- Which model generated it?
- What was the confidence level?
- What plugins/connectors were involved?
- Was the output verified or raw inference?
Why this matters
As Semantic Kernel is adopted in enterprise applications, output provenance becomes critical for:
- Audit trails — regulated industries need to know how AI outputs were produced
- Trust differentiation — an output sourced from a verified database connector is more trustworthy than one from unverified LLM inference
- EU AI Act compliance (Article 50, August 2, 2026) — AI-generated content needs transparency metadata
Possible approach
FunctionResult or ChatMessageContent could carry optional provenance:
var result = await kernel.InvokeAsync("plugin", "function");
// Provenance on the result:
result.Metadata["ai_generated"] = true;
result.Metadata["model"] = "gpt-4";
result.Metadata["trust_score"] = 0.85;
result.Metadata["source_tier"] = "verified_connector";
This is already partially supported through Metadata dictionaries — the question is whether there should be a standardized schema for AI provenance fields.
Reference
- AKF defines a compact provenance schema for AI outputs
- The
Metadata dictionary on SK results already provides the extension point
- This aligns with Microsoft's Responsible AI principles around transparency
Has the SK team considered standardizing provenance fields on function results?
Context
Semantic Kernel orchestrates AI capabilities through plugins and functions. When a kernel function generates output — whether from an LLM, a connector, or a chain of function calls — the result carries no provenance metadata:
Why this matters
As Semantic Kernel is adopted in enterprise applications, output provenance becomes critical for:
Possible approach
FunctionResultorChatMessageContentcould carry optional provenance:This is already partially supported through
Metadatadictionaries — the question is whether there should be a standardized schema for AI provenance fields.Reference
Metadatadictionary on SK results already provides the extension pointHas the SK team considered standardizing provenance fields on function results?