Files
X-Financial/document/development/intelligent-expense-control-platform/index.html
caoxiaozhu 8a4a777be7 feat: 新增员工行为画像算法与费用风险标签体系
后端新增员工行为画像算法模块,支持标签规则引擎和评分计算,
完善员工模型、银行信息、序列化和导入逻辑,优化报销审批流
和工作流常量,增强 Hermes 同步和知识同步能力,前端新增费
用画像详情弹窗、雷达图和风险卡片组件,完善登录页和工作台
样式,优化文档中心和归档中心交互,补充单元测试。
2026-05-28 12:09:49 +08:00

1829 lines
62 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>X-Financial 智能费控平台核心说明文档</title>
<style>
:root {
color-scheme: light;
--bg: #f6f8f6;
--surface: #ffffff;
--surface-soft: #f9fbfa;
--surface-strong: #edf4f0;
--ink: #14201c;
--ink-soft: #43534d;
--muted: #6b7a74;
--line: #dce6e1;
--line-strong: #c5d5ce;
--teal: #0f766e;
--teal-deep: #0b4f49;
--teal-soft: #e5f4f1;
--blue: #2459a7;
--blue-soft: #eaf1fb;
--amber: #a35f00;
--amber-soft: #fff4dc;
--red: #b43c2d;
--red-soft: #fff0ed;
--green: #287947;
--green-soft: #e8f5ec;
--shadow: 0 18px 40px rgba(23, 42, 35, 0.08);
--shadow-soft: 0 10px 24px rgba(23, 42, 35, 0.06);
--radius: 8px;
--font: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Segoe UI", sans-serif;
--mono: "Cascadia Code", "JetBrains Mono", Consolas, monospace;
}
* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
margin: 0;
background:
linear-gradient(180deg, rgba(229, 244, 241, 0.82), rgba(246, 248, 246, 0.96) 360px),
var(--bg);
color: var(--ink);
font-family: var(--font);
font-size: 14px;
line-height: 1.72;
letter-spacing: 0;
overflow-wrap: anywhere;
}
a {
color: inherit;
text-decoration: none;
}
img {
display: block;
max-width: 100%;
}
code {
padding: 2px 6px;
border-radius: 6px;
background: rgba(15, 118, 110, 0.08);
color: var(--teal-deep);
font-family: var(--mono);
font-size: 0.92em;
}
.page {
display: grid;
grid-template-columns: 268px minmax(0, 1fr) 238px;
min-height: 100dvh;
}
.sidebar,
.toc {
position: sticky;
top: 0;
height: 100dvh;
overflow: auto;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(18px);
}
.sidebar {
padding: 24px 18px;
border-right: 1px solid var(--line);
}
.toc {
padding: 28px 18px;
border-left: 1px solid var(--line);
}
.brand {
display: grid;
gap: 12px;
padding-bottom: 20px;
border-bottom: 1px solid var(--line);
}
.brand-line {
display: flex;
gap: 12px;
align-items: center;
}
.brand-mark {
display: grid;
width: 42px;
height: 42px;
place-items: center;
border-radius: 8px;
background: #102f2b;
color: #fff;
font-weight: 900;
box-shadow: 0 14px 26px rgba(16, 47, 43, 0.22);
}
.brand-title {
font-size: 15px;
font-weight: 900;
line-height: 1.28;
}
.brand-subtitle {
color: var(--muted);
font-size: 12px;
line-height: 1.55;
}
.nav-label,
.toc-title {
margin: 22px 0 10px;
color: var(--muted);
font-size: 12px;
font-weight: 850;
}
.nav {
display: grid;
gap: 5px;
}
.nav a,
.toc a {
display: flex;
align-items: center;
min-height: 34px;
padding: 7px 10px;
border-radius: 8px;
color: var(--ink-soft);
font-size: 13px;
font-weight: 760;
}
.nav a:hover,
.toc a:hover {
background: var(--teal-soft);
color: var(--teal-deep);
}
.dot {
flex: 0 0 auto;
width: 7px;
height: 7px;
margin-right: 10px;
border-radius: 99px;
background: var(--line-strong);
}
.nav a:hover .dot,
.toc a:hover .dot {
background: var(--teal);
}
.side-note {
margin-top: 24px;
padding: 12px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface-soft);
color: var(--ink-soft);
font-size: 12px;
line-height: 1.58;
}
main {
min-width: 0;
padding: 34px 42px 58px;
}
.hero {
position: relative;
overflow: hidden;
border: 1px solid var(--line);
border-radius: var(--radius);
background:
linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(238, 247, 244, 0.92)),
var(--surface);
box-shadow: var(--shadow);
}
.hero::before {
content: "";
position: absolute;
inset: 0;
pointer-events: none;
background-image:
linear-gradient(rgba(15, 118, 110, 0.08) 1px, transparent 1px),
linear-gradient(90deg, rgba(15, 118, 110, 0.08) 1px, transparent 1px);
background-size: 28px 28px;
mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.9), transparent 72%);
}
.hero-inner {
position: relative;
display: grid;
grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
gap: 18px;
align-items: stretch;
padding: 30px;
}
.eyebrow {
display: inline-flex;
gap: 8px;
align-items: center;
margin-bottom: 12px;
color: var(--teal-deep);
font-size: 12px;
font-weight: 900;
}
.eyebrow::before {
content: "";
width: 24px;
height: 2px;
background: var(--teal);
}
h1,
h2,
h3 {
margin: 0;
letter-spacing: 0;
line-height: 1.18;
}
h1 {
max-width: 780px;
font-size: clamp(30px, 4vw, 54px);
font-weight: 920;
}
h2 {
font-size: 27px;
font-weight: 900;
}
h3 {
font-size: 18px;
font-weight: 880;
}
p {
margin: 0;
}
.lead {
max-width: 800px;
margin-top: 18px;
color: var(--ink-soft);
font-size: 16px;
line-height: 1.8;
}
.hero-metrics {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
align-content: start;
}
.metric {
min-height: 126px;
padding: 16px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: rgba(255, 255, 255, 0.86);
box-shadow: var(--shadow-soft);
}
.metric-value {
color: var(--teal-deep);
font-size: 24px;
font-weight: 920;
line-height: 1.1;
}
.metric-label {
margin-top: 8px;
color: var(--ink);
font-weight: 850;
}
.metric-desc {
margin-top: 6px;
color: var(--muted);
font-size: 12px;
line-height: 1.55;
}
.doc-meta {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 18px;
}
.tag {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 9px;
border: 1px solid var(--line);
border-radius: 8px;
background: rgba(255, 255, 255, 0.74);
color: var(--ink-soft);
font-size: 12px;
font-weight: 760;
}
.section {
margin-top: 34px;
padding: 28px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: rgba(255, 255, 255, 0.92);
box-shadow: var(--shadow-soft);
}
.section-head {
display: grid;
gap: 10px;
max-width: 860px;
margin-bottom: 20px;
}
.section-kicker {
color: var(--teal-deep);
font-size: 12px;
font-weight: 900;
}
.section-desc {
color: var(--ink-soft);
font-size: 15px;
line-height: 1.8;
}
.grid {
display: grid;
gap: 14px;
}
.cols-2 {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.cols-3 {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.cols-4 {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.card {
min-width: 0;
padding: 18px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface);
}
.card strong {
display: block;
margin-bottom: 8px;
color: var(--ink);
font-size: 15px;
font-weight: 880;
}
.card p {
color: var(--ink-soft);
line-height: 1.72;
}
.card small {
display: block;
margin-top: 12px;
color: var(--muted);
font-family: var(--mono);
font-size: 11px;
line-height: 1.55;
}
.accent-teal {
border-top: 4px solid var(--teal);
}
.accent-blue {
border-top: 4px solid var(--blue);
}
.accent-amber {
border-top: 4px solid var(--amber);
}
.accent-red {
border-top: 4px solid var(--red);
}
.callout {
display: grid;
gap: 8px;
margin: 18px 0 0;
padding: 16px 18px;
border: 1px solid var(--line-strong);
border-left: 4px solid var(--teal);
border-radius: var(--radius);
background: var(--surface-strong);
}
.callout-title {
color: var(--teal-deep);
font-weight: 900;
}
.callout p {
color: var(--ink-soft);
}
.deep-copy {
display: grid;
gap: 12px;
margin-bottom: 18px;
color: var(--ink-soft);
font-size: 15px;
line-height: 1.86;
}
.evidence-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
margin: 18px 0;
}
.evidence-card {
min-width: 0;
padding: 16px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface-soft);
}
.evidence-card strong {
display: block;
margin-bottom: 8px;
color: var(--teal-deep);
font-size: 17px;
font-weight: 920;
}
.evidence-card span {
display: block;
color: var(--ink-soft);
font-size: 13px;
line-height: 1.65;
}
.split {
display: grid;
grid-template-columns: minmax(0, 0.96fr) minmax(340px, 1.04fr);
gap: 18px;
align-items: start;
}
.bullets {
display: grid;
gap: 10px;
margin: 0;
padding: 0;
list-style: none;
}
.bullets li {
position: relative;
padding-left: 20px;
color: var(--ink-soft);
}
.bullets li::before {
content: "";
position: absolute;
top: 0.78em;
left: 0;
width: 7px;
height: 7px;
border-radius: 99px;
background: var(--teal);
}
.process {
display: grid;
gap: 10px;
margin-top: 14px;
}
.process-step {
display: grid;
grid-template-columns: 34px minmax(0, 1fr);
gap: 12px;
align-items: start;
padding: 12px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface-soft);
}
.step-no {
display: grid;
width: 34px;
height: 34px;
place-items: center;
border-radius: 8px;
background: #102f2b;
color: #fff;
font-family: var(--mono);
font-size: 12px;
font-weight: 900;
}
.step-title {
color: var(--ink);
font-weight: 900;
}
.step-text {
margin-top: 4px;
color: var(--ink-soft);
line-height: 1.65;
}
.diagram {
overflow: hidden;
border: 1px solid var(--line);
border-radius: var(--radius);
background: #fbfdfc;
}
.diagram svg {
display: block;
width: 100%;
height: auto;
}
.diagram-caption {
padding: 12px 16px;
border-top: 1px solid var(--line);
color: var(--muted);
font-size: 12px;
line-height: 1.55;
}
.flow-diagram {
display: grid;
gap: 16px;
padding: 18px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: #fbfdfc;
}
.flow-row {
display: grid;
grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr));
gap: 12px;
align-items: stretch;
}
.flow-node {
position: relative;
min-width: 0;
min-height: 86px;
padding: 14px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface);
box-shadow: var(--shadow-soft);
}
.flow-node::after {
content: "→";
position: absolute;
top: 50%;
right: -13px;
z-index: 1;
transform: translateY(-50%);
color: var(--teal);
font-size: 18px;
font-weight: 900;
}
.flow-row .flow-node:last-child::after,
.flow-node.no-arrow::after {
display: none;
}
.flow-node.dark {
border-color: #102f2b;
background: #102f2b;
color: #fff;
}
.flow-node.amber {
border-color: #ecd0a5;
background: #fff8eb;
}
.flow-node.blue {
border-color: #c7d8f3;
background: #f0f6ff;
}
.flow-node-title {
color: inherit;
font-size: 14px;
font-weight: 900;
line-height: 1.35;
}
.flow-node-text {
margin-top: 7px;
color: var(--muted);
font-size: 12px;
line-height: 1.58;
}
.flow-node.dark .flow-node-text {
color: rgba(255, 255, 255, 0.74);
}
.flow-band {
padding: 14px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface-strong);
text-align: center;
}
.flow-band strong {
display: block;
color: var(--teal-deep);
font-weight: 920;
}
.flow-band span {
display: block;
margin-top: 5px;
color: var(--ink-soft);
font-size: 12px;
}
.flow-loop {
padding: 12px 14px;
border: 1px dashed var(--line-strong);
border-radius: var(--radius);
color: var(--ink-soft);
font-size: 13px;
line-height: 1.62;
text-align: center;
}
.module-list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
}
.module-item {
padding: 16px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface);
}
.module-title {
margin-bottom: 8px;
color: var(--ink);
font-weight: 900;
}
.module-desc {
color: var(--ink-soft);
line-height: 1.68;
}
.code-row {
display: flex;
flex-wrap: wrap;
gap: 7px;
margin-top: 12px;
}
.code-chip {
padding: 3px 7px;
border: 1px solid var(--line);
border-radius: 6px;
background: var(--surface-soft);
color: var(--teal-deep);
font-family: var(--mono);
font-size: 11px;
}
.gallery {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}
figure {
margin: 0;
overflow: hidden;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface);
box-shadow: var(--shadow-soft);
}
figure img {
width: 100%;
aspect-ratio: 16 / 9;
object-fit: cover;
object-position: top left;
border-bottom: 1px solid var(--line);
background: #edf2ef;
}
figcaption {
padding: 12px 14px 14px;
color: var(--ink-soft);
font-size: 13px;
line-height: 1.62;
}
figcaption strong {
display: block;
margin-bottom: 4px;
color: var(--ink);
font-size: 14px;
font-weight: 880;
}
.formula {
margin-top: 14px;
padding: 16px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: #101a16;
color: #edf8f4;
font-family: var(--mono);
font-size: 12.5px;
line-height: 1.72;
overflow: auto;
white-space: pre;
}
.timeline {
display: grid;
gap: 10px;
margin-top: 14px;
}
.timeline-item {
display: grid;
grid-template-columns: 118px minmax(0, 1fr);
gap: 14px;
padding: 14px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface);
}
.timeline-phase {
color: var(--teal-deep);
font-weight: 900;
}
.timeline-text {
color: var(--ink-soft);
}
.footer {
margin-top: 34px;
padding: 22px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: #102f2b;
color: rgba(255, 255, 255, 0.82);
}
.footer strong {
display: block;
margin-bottom: 8px;
color: #fff;
font-size: 16px;
}
.source-list {
display: grid;
gap: 10px;
margin: 0;
padding: 0;
list-style: none;
}
.source-list li {
padding: 12px 14px;
border: 1px solid var(--line);
border-radius: var(--radius);
background: var(--surface);
color: var(--ink-soft);
}
.source-list a {
color: var(--teal-deep);
font-weight: 850;
text-decoration: underline;
text-underline-offset: 3px;
}
@media (max-width: 1500px) {
.page {
grid-template-columns: 236px minmax(0, 1fr);
}
.toc {
display: none;
}
.split {
grid-template-columns: 1fr;
}
}
@media (max-width: 1180px) {
.flow-row {
grid-template-columns: 1fr !important;
}
.flow-node::after {
top: auto;
right: 50%;
bottom: -18px;
transform: translateX(50%) rotate(90deg);
}
}
@media (max-width: 880px) {
.page {
display: block;
}
.sidebar {
position: relative;
height: auto;
border-right: 0;
border-bottom: 1px solid var(--line);
}
.nav {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
main {
padding: 22px 16px 44px;
}
.hero-inner,
.split,
.cols-2,
.cols-3,
.cols-4,
.evidence-grid,
.module-list,
.gallery {
grid-template-columns: 1fr;
}
.hero-inner,
.section {
padding: 20px;
}
.hero-metrics {
grid-template-columns: 1fr;
}
.timeline-item {
grid-template-columns: 1fr;
}
}
@media print {
body {
background: #fff;
}
.page {
display: block;
}
.sidebar,
.toc {
display: none;
}
main {
padding: 0;
}
.section,
.hero,
figure {
break-inside: avoid;
box-shadow: none;
}
}
</style>
</head>
<body>
<div class="page">
<aside class="sidebar">
<div class="brand">
<div class="brand-line">
<div class="brand-mark">XF</div>
<div>
<div class="brand-title">智能费控平台</div>
<div class="brand-subtitle">X-Financial 核心说明</div>
</div>
</div>
<p class="brand-subtitle">
本文档基于当前项目模块、架构文档、后端服务与页面截图整理,
用于产品介绍、内部汇报和方案评审。
</p>
</div>
<div class="nav-label">文档导航</div>
<nav class="nav" aria-label="主导航">
<a href="#why"><span class="dot"></span>为什么要做</a>
<a href="#future"><span class="dot"></span>未来地位</a>
<a href="#blue"><span class="dot"></span>蓝海空间</a>
<a href="#goal"><span class="dot"></span>开发目的</a>
<a href="#algorithms"><span class="dot"></span>核心算法</a>
<a href="#modules"><span class="dot"></span>项目模块</a>
<a href="#architecture"><span class="dot"></span>架构图</a>
<a href="#ontology"><span class="dot"></span>本体语义层</a>
<a href="#screens"><span class="dot"></span>关键页面</a>
<a href="#roadmap"><span class="dot"></span>演进路线</a>
<a href="#sources"><span class="dot"></span>趋势来源</a>
</nav>
<div class="side-note">
关键词费控画像、预算占比、规则中心、双智能体循环、Hermes 数字员工、
本体语义层、RAG 知识检索、风险解释、财务洞察。
</div>
</aside>
<main>
<header class="hero" id="top">
<div class="hero-inner">
<div>
<div class="eyebrow">X-Financial / Intelligent Expense Control</div>
<h1>从报销工具,到企业费用智能操作系统</h1>
<p class="lead">
智能费控平台的核心价值,不是把传统审批流程搬到线上,
而是把费用、预算、组织、制度、票据、行为画像和智能体能力
连接成一套可解释、可追溯、可持续进化的企业财务风控中枢。
</p>
<div class="doc-meta">
<span class="tag">面向管理层</span>
<span class="tag">面向财务共享</span>
<span class="tag">面向研发评审</span>
<span class="tag">HTML 单页文档</span>
</div>
</div>
<div class="hero-metrics" aria-label="核心摘要">
<div class="metric">
<div class="metric-value">2 层</div>
<div class="metric-label">双智能体循环</div>
<div class="metric-desc">User Agent 处理用户操作Hermes 在后台持续巡检数据与流转风险。</div>
</div>
<div class="metric">
<div class="metric-value">10+</div>
<div class="metric-label">业务模块</div>
<div class="metric-desc">覆盖总览、单据、预算、规则、数字员工、知识库、日志和设置。</div>
</div>
<div class="metric">
<div class="metric-value">8 字段</div>
<div class="metric-label">本体协议核心</div>
<div class="metric-desc">domain、scenario、intent、entities、time_range、constraints、risk_signals、next_step。</div>
</div>
<div class="metric">
<div class="metric-value">4 类</div>
<div class="metric-label">画像与风控算法</div>
<div class="metric-desc">申请人费用画像、员工行为画像、预算费用模型、规则/本体/RAG 分析。</div>
</div>
</div>
</div>
</header>
<section class="section" id="why">
<div class="section-head">
<div class="section-kicker">01 / WHY</div>
<h2>为什么要做智能费控平台</h2>
<p class="section-desc">
智能费控不是把报销审批电子化,而是把企业每一笔支出变成可理解、可预测、可解释的经营信号。
当 AI、RAG、智能体、异常检测和预算联动进入财务流程后费用平台会从“流程系统”升级为“经营控制系统”。
</p>
</div>
<div class="deep-copy">
<p>
第一,费用是企业经营动作最密集、最贴近一线的数据入口。销售拜访客户会产生差旅和招待,
项目交付会产生交通、住宿、外包和办公支出,培训、采购、通信、会务也都以费用形式落地。
如果企业只在报销完成后做核销,就只能看到“钱已经花了”;如果在申请、预算占用、票据上传、
审批和归档全过程做智能分析,就能提前看到“这笔钱为什么要花、是否该花、花完后对预算和风险有什么影响”。
</p>
<p>
第二财务工作的重心正在从人工处理转向分析、预测和决策支持。Gartner 2025 年财务 AI 调研显示,
财务组织最常见的 AI 用例已经包括知识管理、应付流程自动化、错误与异常检测McKinsey 的 CFO 调研也显示,
绝大多数受访者期待 AI 减少人工分析负担、生成洞察。这意味着费控平台必须具备自动识别、自动解释和自动沉淀的能力,
否则它会停留在“录单工具”,无法进入未来财务的核心工作台。
</p>
<p>
第三,费用风险越来越隐蔽。传统审批能挡住“缺附件”“超标准”这类显性问题,
但很难发现拆单、跨部门合谋、异常频次、预算节奏异常、同组偏离、长期材料质量差等隐性问题。
ACFE 的职业舞弊报告将虚构或夸大业务费用列为典型报销舞弊形态;随着 AI 生成票据、深度伪造和自动化攻击出现,
企业更需要一个能把票据、人员、部门、历史行为、预算和制度放在一起分析的平台。
</p>
</div>
<div class="evidence-grid" aria-label="趋势证据">
<div class="evidence-card">
<strong>59%</strong>
<span>Gartner 2025 年调研显示,财务 AI 采用率已达到约六成,知识管理、应付自动化和异常检测是高频用例。</span>
</div>
<div class="evidence-card">
<strong>85%</strong>
<span>McKinsey CFO Pulse 提到,多数 CFO 期待 AI 生成洞察、减少手工分析,把财务人员释放到更高价值工作。</span>
</div>
<div class="evidence-card">
<strong>25%</strong>
<span>Salesforce 2025 年 CFO 调研显示CFO 平均把约四分之一 AI 预算投向 AI Agent数字劳动力进入预算层。</span>
</div>
</div>
<div class="grid cols-2">
<article class="card accent-teal">
<strong>1. 从事后核销,变成事前控制</strong>
<p>
传统系统往往在报销单提交后才发现问题,智能费控可以在申请阶段就识别预算余量、
费用类型、地点、票据要求和制度约束。这样报销不是最后一关,而是从费用发生前就开始的控制链路。
</p>
</article>
<article class="card accent-blue">
<strong>2. 从人找规则,变成规则找风险</strong>
<p>
制度、Excel 规则、风险 JSON、知识库和历史记录被统一纳入规则中心与本体语义层
系统可以自动给出命中原因、制度依据和补正建议,减少审批人凭经验反复判断。
</p>
</article>
<article class="card accent-amber">
<strong>3. 从部门口径,变成企业费用画像</strong>
<p>
部门、岗位、职级、费用类型、预算池、审批质量和 AI 协作记录共同构成画像,
让财务看到“为什么这个单据值得关注”,也让部门负责人知道费用结构是否偏离经营节奏。
</p>
</article>
<article class="card accent-red">
<strong>4. 从流程系统,变成智能运营中枢</strong>
<p>
Hermes 数字员工可以按计划巡检风险、生成报告、汇总异常、沉淀优化候选,
让财务团队从重复检查转向规则治理、预算策略、风险决策和经营分析。
</p>
</article>
</div>
<div class="callout">
<div class="callout-title">一句话定位</div>
<p>
智能费控平台不是“更漂亮的报销页面”,而是企业经营数据进入财务风控体系的语义入口,
也是未来 AI 财务中台最容易落地、最容易证明价值的入口之一。
</p>
</div>
</section>
<section class="section" id="future">
<div class="section-head">
<div class="section-kicker">02 / COMPANY POSITION</div>
<h2>费控在未来公司的地位</h2>
<p class="section-desc">
未来公司的费控,会从“报销审批入口”变成“经营支出操作系统”。
它一端连接员工和部门的真实业务动作,另一端连接预算、现金流、成本、风险、制度和管理决策。
</p>
</div>
<div class="deep-copy">
<p>
从组织分工看CFO 的角色正在从财务记录者变成业务伙伴和技术治理者。
Deloitte 的未来财务洞察持续强调,财务团队会把更多时间投入分析、预测和决策支持;
Deloitte APAC CFO 2025 调研也显示,接近一半 CFO 认为生成式 AI 会在两年内显著改变行业、组织和财务职能。
这意味着费控不应再被放在“报销系统”这个狭窄位置,而应该成为 CFO 获取一线经营信号的前置雷达。
</p>
<p>
从业务管理看,预算不再只是年初编制和月底复盘。未来预算需要跟每一次费用申请实时联动:
当前预算池还有多少、审批后使用率是多少、是否触达预警线、该部门同类费用是否异常、是否影响项目毛利和现金节奏。
因此费控会成为部门经理、项目负责人和财务 BP 共同使用的经营协同平台。
</p>
<p>
从风险控制看,未来公司的费用风险不是单张票据能解释清楚的,而是多源数据的组合问题。
一张票据可能合规,但一个人三个月内的频次、金额、地点、客户、同行人和预算占比可能异常。
智能费控要把这些信号拉成一张网,让管理者在支付之前就看到风险轮廓。
</p>
</div>
<div class="split">
<div>
<ul class="bullets">
<li><strong>经营仪表盘:</strong>部门费用、项目消耗、预算占比、执行率、风险热区可以被实时汇总。</li>
<li><strong>预算守门员:</strong>费用申请不再只看“能不能报”,而要看“是否符合预算节奏”。</li>
<li><strong>内控前置层:</strong>票据、地点、人员、金额、制度条款和历史行为被联动审核。</li>
<li><strong>AI 财务工作台:</strong>财务人员可以通过自然语言查询制度、解释风险、生成审批建议和费用报告。</li>
<li><strong>规则与知识工厂:</strong>制度解释、规则生成、风险复盘和人工反馈进入可持续优化闭环。</li>
<li><strong>管理决策入口:</strong>管理者可以询问“哪个部门预算风险最高”“哪些费用正在吞噬毛利”。</li>
</ul>
</div>
<div>
<div class="flow-diagram" aria-label="费控未来地位流程图">
<div class="flow-row" style="--cols: 3">
<div class="flow-node">
<div class="flow-node-title">业务动作</div>
<div class="flow-node-text">出差、采购、招待、培训、项目交付</div>
</div>
<div class="flow-node dark">
<div class="flow-node-title">智能费控平台</div>
<div class="flow-node-text">预算、单据、制度、票据、风险、智能体</div>
</div>
<div class="flow-node">
<div class="flow-node-title">财务结果</div>
<div class="flow-node-text">成本、现金、核销、支付、账务沉淀</div>
</div>
</div>
<div class="flow-row" style="--cols: 3">
<div class="flow-node blue">
<div class="flow-node-title">组织与预算</div>
<div class="flow-node-text">部门、项目、成本中心、预算池</div>
</div>
<div class="flow-node amber">
<div class="flow-node-title">数据与画像</div>
<div class="flow-node-text">费用画像、行为画像、同组基准</div>
</div>
<div class="flow-node blue">
<div class="flow-node-title">管理决策</div>
<div class="flow-node-text">预警、报告、经营洞察、规则优化</div>
</div>
</div>
</div>
<div class="diagram-caption">
费控位于经营动作和财务结果之间,未来承担预算守门、规则解释、风险识别、数据画像和管理洞察的中枢角色。
</div>
</div>
</div>
</section>
<section class="section" id="blue">
<div class="section-head">
<div class="section-kicker">03 / BLUE OCEAN</div>
<h2>智能分析费控平台的蓝海</h2>
<p class="section-desc">
传统 ERP、OA、报销系统和财务共享平台已经覆盖了流程但对“语义理解、自动洞察、隐性风险识别、
预算占比解释、部门费用经营分析”的覆盖仍然不足。蓝海空间正来自这个空白:
市场正在从单点报销工具转向 AI 驱动的差旅、费用、发票、预算和风险一体化平台。
</p>
</div>
<div class="deep-copy">
<p>
Grand View Research 2025 年报告预计,全球差旅与费用管理软件市场到 2030 年将达到 106.9 亿美元,
2024 至 2030 年复合增速为 16.9%。更重要的是,它特别提到 AI 可用于审批与支付自动化、
员工差旅历史和支出模式分析、OCR 票据字段识别以及基于自然语言的交互。
这说明市场真正的增长点不只是“报销线上化”,而是“费用智能化”。
</p>
</div>
<div class="grid cols-3">
<article class="card">
<strong>非结构化数据智能化</strong>
<p>票据、制度 PDF、Excel 规则、审批意见、用户自然语言都能进入同一个语义管道。</p>
</article>
<article class="card">
<strong>部门费用经营化</strong>
<p>费用从“报销明细”升级为“部门预算执行、费用结构、异常趋势、经营压力”的管理对象。</p>
</article>
<article class="card">
<strong>风险识别前置化</strong>
<p>拆单、超预算、重复票据、地点不一致、附件缺失、异常频次都可以更早被发现。</p>
</article>
<article class="card">
<strong>财务智能体运营化</strong>
<p>后台数字员工不再等待人点击,而是按周期巡检数据、生成报告和沉淀优化候选。</p>
</article>
<article class="card">
<strong>规则治理产品化</strong>
<p>自然语言规则、风险规则、Excel 规则和制度知识可以逐步变成可测试、可版本化资产。</p>
</article>
<article class="card">
<strong>财务知识即时化</strong>
<p>RAG 与知识库让制度解释从人工翻文档,转为“问一句,返回依据和建议”。</p>
</article>
</div>
</section>
<section class="section" id="goal">
<div class="section-head">
<div class="section-kicker">04 / PROJECT GOAL</div>
<h2>开发这个平台的目的</h2>
<p class="section-desc">
当前项目的目标是做一套可演示、可扩展、可继续工程化的智能费控底座。
它既要能承载真实报销、审批、预算和知识库流程,也要能承载智能体调用和后续自进化闭环。
</p>
</div>
<div class="process">
<div class="process-step">
<div class="step-no">01</div>
<div>
<div class="step-title">让用户用自然语言完成费用流程</div>
<div class="step-text">用户可以描述出差、招待、补件、审批问题,系统通过本体解析成结构化字段,再交给编排器和对应服务处理。</div>
</div>
</div>
<div class="process-step">
<div class="step-no">02</div>
<div>
<div class="step-title">让财务看到预算和风险的真实原因</div>
<div class="step-text">预算中心计算预算占用、剩余额度、审批后使用率;规则中心解释风险规则命中;画像算法给出同组基准。</div>
</div>
</div>
<div class="process-step">
<div class="step-no">03</div>
<div>
<div class="step-title">让 Hermes 自动发现隐藏问题</div>
<div class="step-text">后台数字员工读取单据、聚类上下文、识别拆单和异常频次等隐性风险,再形成报告和工单候选。</div>
</div>
</div>
<div class="process-step">
<div class="step-no">04</div>
<div>
<div class="step-title">让知识、规则和反馈持续进化</div>
<div class="step-text">人工反馈、OCR 修正、规则误报漏报、审批意见改写和知识问答反馈进入候选池,经人工审核后更新规则或知识。</div>
</div>
</div>
</div>
</section>
<section class="section" id="algorithms">
<div class="section-head">
<div class="section-kicker">05 / ALGORITHMS</div>
<h2>相关算法与智能分析能力</h2>
<p class="section-desc">
项目中已经沉淀了独立算法目录和多个业务模型。核心原则是:
先有可解释公式,再进入服务;算法输出“依据 + 建议动作”,不直接替代人工审批。
</p>
</div>
<div class="grid cols-2">
<article class="card accent-teal">
<strong>申请人费用画像</strong>
<p>
根据近 90/180 天申请频次、金额占用、同组偏离、历史退回调减、本次申请偏离等指标,
计算画像风险分和审批建议强度。
</p>
<small>applicant_expense_profile.py / applicant_expense_profile_formula.md</small>
</article>
<article class="card accent-blue">
<strong>员工行为画像</strong>
<p>
覆盖费用支出画像、流程质量画像、AI 协作强度、审批行为画像,
支持按照部门、岗位、职级和费用类型建立同组基准。
</p>
<small>employee_behavior_profile.py / employee_behavior_profile_service.py</small>
</article>
<article class="card accent-amber">
<strong>预算费用管控模型</strong>
<p>
结合预算总额、已占用、已核销、本次申请金额、审批后使用率、预警线和超预算金额,
输出 recommended、caution、review、block 等建议。
</p>
<small>budget_expense_control.py / budget.py</small>
</article>
<article class="card accent-red">
<strong>风险规则与本体桥接</strong>
<p>
风险信号会映射到具体规则编码,例如重复发票、地点不一致、附件不匹配、事由过短,
使自然语言风险问题能落到可执行规则。
</p>
<small>risk_ontology_bridge.py / risk_rule_template_executor.py</small>
</article>
</div>
<div class="formula" aria-label="画像核心公式">profile_score =
frequency_score * 0.20
+ amount_occupancy_score * 0.25
+ peer_deviation_score * 0.25
+ adjustment_history_score * 0.15
+ current_claim_deviation_score * 0.15
budget_control =
claim_amount_ratio
+ after_usage_rate
+ over_budget_amount
+ missing_business_context
+ control_action</div>
</section>
<section class="section" id="modules">
<div class="section-head">
<div class="section-kicker">06 / MODULES</div>
<h2>当前项目模块与核心能力</h2>
<p class="section-desc">
前端提供业务操作入口,后端提供领域服务、智能体编排、本体解析、规则资产、知识检索和审计追踪。
其中最核心的是本体语义层、Orchestrator、User Agent、Hermes、预算/单据服务、规则中心和画像算法。
</p>
</div>
<div class="module-list">
<div class="module-item">
<div class="module-title">前端应用层</div>
<p class="module-desc">
总览、个人工作台、单据中心、预算中心、规则中心、数字员工、员工管理、制度知识、日志管理、系统设置。
</p>
<div class="code-row">
<span class="code-chip">OverviewView</span>
<span class="code-chip">BudgetCenterView</span>
<span class="code-chip">AuditView</span>
<span class="code-chip">DigitalEmployeesView</span>
<span class="code-chip">DocumentsCenterView</span>
</div>
</div>
<div class="module-item">
<div class="module-title">单据与报销服务</div>
<p class="module-desc">
支持申请单、报销单、附件、票据分析、审批、退回、归档、预算联动和 AI 结构化核对。
</p>
<div class="code-row">
<span class="code-chip">ExpenseClaimService</span>
<span class="code-chip">expense_claim_budget_flow</span>
<span class="code-chip">expense_claim_risk_review</span>
</div>
</div>
<div class="module-item">
<div class="module-title">预算中心</div>
<p class="module-desc">
管理预算额度、部门/项目/成本中心维度、预算占用、核销、可用余额、预警线和超预算控制。
</p>
<div class="code-row">
<span class="code-chip">BudgetService</span>
<span class="code-chip">BudgetAllocation</span>
<span class="code-chip">BudgetReservation</span>
</div>
</div>
<div class="module-item">
<div class="module-title">规则中心</div>
<p class="module-desc">
管理财务规则、风险规则、规则测试、规则等级、业务场景、费用类型范围和规则资产版本。
</p>
<div class="code-row">
<span class="code-chip">AgentAssetService</span>
<span class="code-chip">AgentFoundationRiskRuleMixin</span>
<span class="code-chip">risk-rules</span>
</div>
</div>
<div class="module-item">
<div class="module-title">本体语义层</div>
<p class="module-desc">
把自然语言、页面动作、附件上下文和定时任务解析成统一协议,供 Agent 和工具调用使用。
</p>
<div class="code-row">
<span class="code-chip">SemanticOntologyService</span>
<span class="code-chip">ontology_detection</span>
<span class="code-chip">ontology_extraction</span>
<span class="code-chip">ontology_validation</span>
</div>
</div>
<div class="module-item">
<div class="module-title">Agent 编排与追踪</div>
<p class="module-desc">
Orchestrator 决定进入 User Agent 或 Hermes记录本体解析、工具调用、降级结果和审计轨迹。
</p>
<div class="code-row">
<span class="code-chip">OrchestratorService</span>
<span class="code-chip">OrchestratorExecutionEngine</span>
<span class="code-chip">AgentRunService</span>
</div>
</div>
<div class="module-item">
<div class="module-title">知识库与 RAG</div>
<p class="module-desc">
对制度、FAQ、Excel、PDF、DOCX 进行检索和结构化回答,支持本地文本块与 LightRAG 运行时融合。
</p>
<div class="code-row">
<span class="code-chip">KnowledgeRagService</span>
<span class="code-chip">knowledge_document_extractors</span>
<span class="code-chip">knowledge_ingest_log</span>
</div>
</div>
<div class="module-item">
<div class="module-title">Hermes 数字员工</div>
<p class="module-desc">
后台执行风险扫描、费用报告、员工画像刷新、任务日志记录和风险报告沉淀。
</p>
<div class="code-row">
<span class="code-chip">HermesRiskScannerService</span>
<span class="code-chip">hermes_scheduler</span>
<span class="code-chip">HermesRiskReport</span>
</div>
</div>
</div>
</section>
<section class="section" id="architecture">
<div class="section-head">
<div class="section-kicker">07 / ARCHITECTURE</div>
<h2>双智能体循环架构</h2>
<p class="section-desc">
外层 User Agent 负责用户操作、问答、草稿和确认;内层 Hermes 负责后台巡检、隐性风险、任务报告和候选优化。
两者不争夺职责,而是共享本体、规则、知识、数据和审计。
</p>
</div>
<div>
<div class="flow-diagram" aria-label="X-Financial 双智能体循环架构图">
<div class="flow-band">
<strong>外层循环User Agent 面向用户操作</strong>
<span>处理用户自然语言、页面动作、草稿生成、审批解释和确认后的流程写入</span>
</div>
<div class="flow-row" style="--cols: 5">
<div class="flow-node">
<div class="flow-node-title">用户输入</div>
<div class="flow-node-text">自然语言、页面按钮、附件上下文</div>
</div>
<div class="flow-node">
<div class="flow-node-title">本体解析</div>
<div class="flow-node-text">场景、意图、实体、缺槽位</div>
</div>
<div class="flow-node dark">
<div class="flow-node-title">Orchestrator</div>
<div class="flow-node-text">路由、权限、审计、降级</div>
</div>
<div class="flow-node">
<div class="flow-node-title">工具执行</div>
<div class="flow-node-text">DB、规则、RAG、OCR、预算</div>
</div>
<div class="flow-node">
<div class="flow-node-title">回答/草稿</div>
<div class="flow-node-text">解释、核对、确认、提交</div>
</div>
</div>
<div class="flow-loop">
用户确认、补充字段或修改核对结果后,继续回到同一个会话上下文。
</div>
<div class="flow-band">
<strong>共享中台</strong>
<span>语义本体 · 规则资产 · 知识库 · 业务数据库 · AgentRun Trace · 权限审计</span>
</div>
<div class="flow-band">
<strong>内层循环Hermes 数字员工监控核心数据与流转风险</strong>
<span>面向系统事件和定时任务,负责长期巡检、隐性风险、报告与优化候选</span>
</div>
<div class="flow-row" style="--cols: 5">
<div class="flow-node amber">
<div class="flow-node-title">定时触发</div>
<div class="flow-node-text">schedule、system event、手动触发</div>
</div>
<div class="flow-node amber">
<div class="flow-node-title">数据快照</div>
<div class="flow-node-text">预算、单据、员工、日志</div>
</div>
<div class="flow-node amber">
<div class="flow-node-title">风险分析</div>
<div class="flow-node-text">规则、LLM、画像、同组基准</div>
</div>
<div class="flow-node amber">
<div class="flow-node-title">报告/工单</div>
<div class="flow-node-text">risk_report、work_items、snapshot</div>
</div>
<div class="flow-node amber">
<div class="flow-node-title">反馈候选</div>
<div class="flow-node-text">规则、知识、OCR、Prompt</div>
</div>
</div>
<div class="flow-loop">
Hermes 只生成候选和报告;规则上线、知识发布、审批和付款仍需要权限、确认和人工审核。
</div>
</div>
<div class="diagram-caption">
双循环的关键不是“两个聊天机器人”,而是把用户主动流程和后台系统巡检拆开,
再通过统一语义协议、规则资产、业务数据和审计日志连接起来。
</div>
</div>
</section>
<section class="section" id="ontology">
<div class="section-head">
<div class="section-kicker">08 / ONTOLOGY</div>
<h2>本体语义层的优势</h2>
<p class="section-desc">
当前项目已经接入本体语义层。它的价值在于把“用户怎么说”和“系统怎么执行”隔开,
让自然语言、页面动作、定时任务、规则中心和数据库查询都走同一套协议。
</p>
</div>
<div class="split">
<div class="grid">
<article class="card accent-teal">
<strong>减少关键词误判</strong>
<p>
用户说“我今天去客户现场,招待客户”,不能因为出现“客户”就误路由到应收查询。
本体会综合场景、意图、缺槽位和上下文判断。
</p>
</article>
<article class="card accent-blue">
<strong>让 Agent 调用可审计</strong>
<p>
每次调用都能保留 scenario、intent、entities、risk_flags、next_step
便于回放、追责和优化。
</p>
</article>
<article class="card accent-amber">
<strong>让规则与预算复用同一语义</strong>
<p>
费用类型、部门、预算期间、预算科目、风险信号都可以被统一解析,
减少前后端重复写规则。
</p>
</article>
</div>
<div>
<div class="flow-diagram" aria-label="本体语义层协议图">
<div class="flow-row" style="--cols: 2">
<div class="flow-node">
<div class="flow-node-title">自然语言 / 页面动作</div>
<div class="flow-node-text">用户提问、发起申请、编辑核对、上传附件</div>
</div>
<div class="flow-node">
<div class="flow-node-title">定时任务 / 系统事件</div>
<div class="flow-node-text">风险巡检、知识同步、MCP 健康检查</div>
</div>
</div>
<div class="flow-band">
<strong>Semantic Ontology</strong>
<span>domain · scenario · intent · entities · time_range · constraints · risk_signals · next_step</span>
</div>
<div class="flow-row" style="--cols: 3">
<div class="flow-node blue">
<div class="flow-node-title">数据库查询</div>
<div class="flow-node-text">预算、单据、员工、部门、应收应付</div>
</div>
<div class="flow-node blue">
<div class="flow-node-title">规则 / MCP</div>
<div class="flow-node-text">风险规则、票据校验、外部服务</div>
</div>
<div class="flow-node blue">
<div class="flow-node-title">知识 / RAG</div>
<div class="flow-node-text">制度条款、FAQ、历史解释、证据来源</div>
</div>
</div>
</div>
<div class="diagram-caption">
本体层不直接给最终答案,它输出可执行协议,让后续工具和 Agent 按相同语义工作。
</div>
</div>
</div>
<div class="formula" aria-label="本体协议字段">{
"domain": "reimbursement",
"scenario": "travel_reimbursement",
"intent": "risk_check",
"entities": ["employee", "department", "expense_type", "budget_period"],
"time_range": {},
"constraints": {},
"risk_signals": ["duplicate_invoice", "over_budget"],
"next_step": "run_rule"
}</div>
</section>
<section class="section" id="screens">
<div class="section-head">
<div class="section-kicker">09 / PRODUCT SCREENS</div>
<h2>关键页面截图</h2>
<p class="section-desc">
下列截图来自当前项目 `web/UI` 目录,用来展示平台已经覆盖的核心操作面:
管理总览、预算、单据、智能助手、知识库、日志和设置。
</p>
</div>
<div class="gallery">
<figure>
<img src="../../../web/UI/首页新.png" alt="X-Financial 首页总览截图" loading="lazy">
<figcaption>
<strong>财务运营总览</strong>
汇总业务流转、风险信号和关键指标,是管理层进入智能费控平台的第一屏。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/预算中心.jpg" alt="预算中心截图" loading="lazy">
<figcaption>
<strong>预算中心</strong>
维护部门、项目、费用类型预算,跟踪预算占用、可用余额和超预算预警。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/对话界面.png" alt="智能助手对话界面截图" loading="lazy">
<figcaption>
<strong>User Agent 对话</strong>
承接自然语言查询、流程草稿、风险解释和用户确认,是外层智能体循环的入口。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/审批中心详情.png" alt="审批中心详情截图" loading="lazy">
<figcaption>
<strong>单据与审批详情</strong>
展示申请、报销、审批意见、附件核对、风险提示和可追溯处理记录。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/知识库.png" alt="制度知识库截图" loading="lazy">
<figcaption>
<strong>制度与知识库</strong>
承载制度文档、知识检索和 RAG 证据来源,支持智能问答和规则解释。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/日志界面.jpg" alt="日志管理页面截图" loading="lazy">
<figcaption>
<strong>日志管理</strong>
观察 Agent Run、工具调用、语义解析、知识同步和系统运行状态。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/首页风险.png" alt="风险总览截图" loading="lazy">
<figcaption>
<strong>风险洞察</strong>
用于展示风险分布、异常趋势和需要财务关注的事项。
</figcaption>
</figure>
<figure>
<img src="../../../web/UI/设置界面.png" alt="系统设置截图" loading="lazy">
<figcaption>
<strong>系统设置</strong>
管理企业信息、模型接入、日志策略、渲染配置和通知能力。
</figcaption>
</figure>
</div>
</section>
<section class="section" id="roadmap">
<div class="section-head">
<div class="section-kicker">10 / EVOLUTION</div>
<h2>建议演进路线</h2>
<p class="section-desc">
当前项目已经具备智能费控雏形。后续重点不是堆更多页面,而是把本体、预算、画像、规则、
Hermes 和反馈闭环做深,让平台从“能演示”走向“可运营”。
</p>
</div>
<div class="timeline">
<div class="timeline-item">
<div class="timeline-phase">阶段一</div>
<div class="timeline-text">
完成本体协议、单据中心、预算中心、规则中心、知识库和 Agent Run 追踪的稳定联动。
</div>
</div>
<div class="timeline-item">
<div class="timeline-phase">阶段二</div>
<div class="timeline-text">
加强费用画像、部门预算占比、审批建议、风险解释和单据详情页的业务可读性。
</div>
</div>
<div class="timeline-item">
<div class="timeline-phase">阶段三</div>
<div class="timeline-text">
将 Hermes 的风险扫描、费用报告、员工画像刷新和规则质量复盘变成可配置任务。
</div>
</div>
<div class="timeline-item">
<div class="timeline-phase">阶段四</div>
<div class="timeline-text">
建立人工反馈池,让 OCR 修正、规则误报漏报、审批意见改写和知识问答反馈形成候选优化项。
</div>
</div>
</div>
<div class="callout">
<div class="callout-title">关键原则</div>
<p>
自进化不等于自动改线上规则。Hermes 负责发现、聚类、建议和生成候选;
最终规则、知识、审批和付款仍然必须经过权限、确认和人工审核。
</p>
</div>
</section>
<section class="section" id="sources">
<div class="section-head">
<div class="section-kicker">11 / SOURCES</div>
<h2>趋势依据与引用来源</h2>
<p class="section-desc">
本文档中的市场趋势、CFO 角色变化、AI Agent 预算、异常检测和费控市场空间,参考了以下公开资料。
</p>
</div>
<ul class="source-list">
<li>
<a href="https://www.gartner.com/en/newsroom/press-releases/2025-11-18-gartner-survey-shows-finance-ai-adoption-remains-steady-in-2025" target="_blank" rel="noreferrer">
Gartner2025 年财务 AI 采用率与主要用例
</a>
<br>
资料显示财务 AI 采用率为 59%,知识管理、应付流程自动化、错误与异常检测是主要落地场景。
</li>
<li>
<a href="https://www.mckinsey.com/featured-insights/week-in-charts/cfos-counting-on-gen-ai" target="_blank" rel="noreferrer">
McKinseyCFOs counting on gen AI
</a>
<br>
CFO 调研显示85% 受访者期待 AI 生成洞察、减少人工分析71% 已使用者认为 AI 提升了生产力。
</li>
<li>
<a href="https://www.deloitte.com/us/en/insights/topics/business-strategy-growth/apac-cfo-2025-survey-report.html" target="_blank" rel="noreferrer">
Deloitte APAC CFO 2025 Survey
</a>
<br>
接近一半 CFO 预计生成式 AI 会在两年内显著改变行业、组织和财务职能。
</li>
<li>
<a href="https://www.salesforce.com/news/stories/cfos-invest-ai-for-growth/" target="_blank" rel="noreferrer">
SalesforceCFOs Invest in AI for Growth 2025
</a>
<br>
CFO 平均将 25% AI 预算投入 AI Agent61% 认为 AI Agent/数字劳动力对竞争力关键。
</li>
<li>
<a href="https://www.usbank.com/corporate-and-commercial-banking/treasury-payment-solutions/corporate-payment-services/corporate-credit-cards/5-ways-prevent-expense-report-fraud.html" target="_blank" rel="noreferrer">
U.S. Bank / ACFE费用报销舞弊风险
</a>
<br>
文章引用 ACFE 2024 Report to the Nations指出费用报销舞弊平均损失和发现周期说明费用风险需要持续监控。
</li>
<li>
<a href="https://www.grandviewresearch.com/press-release/global-travel-expense-management-software-market" target="_blank" rel="noreferrer">
Grand View Research差旅与费用管理软件市场
</a>
<br>
报告预计全球 T&amp;E 管理软件市场到 2030 年达到 106.9 亿美元AI、OCR、审批自动化和风险管理是关键方向。
</li>
</ul>
</section>
<footer class="footer">
<strong>结论</strong>
<p>
X-Financial 的智能费控方向已经具备清晰技术骨架:
本体语义层负责理解Orchestrator 负责调度User Agent 负责用户流程,
Hermes 负责后台内循环,预算、规则、画像和知识库负责提供可解释依据。
继续沿着这条线做深,平台会从“报销工具”成长为企业费用经营与财务风控的智能中台。
</p>
</footer>
</main>
<aside class="toc" aria-label="本页目录">
<div class="toc-title">本页目录</div>
<a href="#top"><span class="dot"></span>顶部概览</a>
<a href="#why"><span class="dot"></span>为什么要做</a>
<a href="#future"><span class="dot"></span>未来地位</a>
<a href="#blue"><span class="dot"></span>蓝海空间</a>
<a href="#goal"><span class="dot"></span>开发目的</a>
<a href="#algorithms"><span class="dot"></span>算法能力</a>
<a href="#modules"><span class="dot"></span>模块清单</a>
<a href="#architecture"><span class="dot"></span>双智能体</a>
<a href="#ontology"><span class="dot"></span>本体优势</a>
<a href="#screens"><span class="dot"></span>关键截图</a>
<a href="#roadmap"><span class="dot"></span>演进路线</a>
<a href="#sources"><span class="dot"></span>趋势来源</a>
<div class="side-note">
打开方式:直接用浏览器打开本 HTML 文件即可。截图通过相对路径引用当前仓库的 `web/UI` 目录。
</div>
</aside>
</div>
</body>
</html>