# 技术动态

## 为什么你的官网内容 AI 抓不到？6 个必须做的技术优化

AI 搜索正在取代一部分传统搜索流量。用户不再点开十个链接，而是直接问 AI「哪家公司能做企业人脸识别考勤」，AI 给出一段答案和三个来源。问题在于：**如果你的官网内容 AI 读不到，你就不会出现在那三个来源里。**

我们帮客户做官网时，发现绝大多数站点不是内容不好，而是技术上「AI 读不到」。以下 6 条是最关键也最容易忽略的。

## 1. 内容必须出现在 HTML 源码里，不能靠 JS 渲染

这是第一大坑。很多官网用 Vue / React 做成 SPA，用户看到的内容是浏览器执行 JavaScript 后拼出来的，而 AI 爬虫多数**不执行 JavaScript**，抓到的只是一个空壳 `<div id="app"></div>`。

解决办法是静态生成（SSG）：构建时就把 Markdown 渲染成完整 HTML，访问者和爬虫拿到的是同一份带内容的源码。本站就是这么做的——你在页面上看到的每一个字，都在 `view-source` 里。

## 2. 提供 llms.txt，直接告诉 AI 你的站点结构

`llms.txt` 是社区提出的规范（llmstxt.org），放在站点根目录，用 Markdown 写清楚「我是谁、有哪些内容、每个链接讲什么」。相比让 AI 从零解析整站 HTML，它把理解成本降到最低。

格式很简单：一个 `#` 站点名、一段 `>` 简介，然后是分组的链接列表：

```markdown
# 趣天通讯

> 企业级软件开发与 AI 智能体定制服务商，成立于 2014 年。

## 核心业务
- [核心业务](https://www.oibuy.com.cn/services.html)：定制开发、云计算、大数据、智能体与小程序
- [软件下载](https://www.oibuy.com.cn/download.html)：登录后下载客户端
```

## 3. 每个页面加 JSON-LD 结构化数据

结构化数据是把「这段文字是什么」显式告诉机器。企业站最有价值的几种：

- `Organization`：公司名称、logo、联系方式、社媒账号
- `SoftwareApplication` + `Offer`：软件产品与价格
- `FAQPage`：常见问题，容易被 AI 直接引用
- `Article`：博客文章，带作者与发布时间
- `BreadcrumbList`：页面层级

加了之后，AI 能准确知道「13880670331 是这个公司的联系电话」，而不是靠猜。

## 4. 给页面留一份 Markdown 镜像

本站每个页面都有一份 `/raw/xxx.md` 的纯 Markdown 版本，并在 HTML 里用 `<link rel="alternate" type="text/markdown">` 声明。

这样做的好处是：AI 拿到的正文没有导航、页脚、广告这些噪音，理解准确率更高。对内容团队也更友好——Markdown 本来就是写作格式。

## 5. robots.txt 要主动放行 AI 爬虫

不少站点为了省带宽，在 robots.txt 里一刀切封了所有爬虫，结果把 AI 也封了。正确做法是**显式列出**你希望放行的爬虫：

```
User-agent: GPTBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Bytespider
Allow: /
```

同时用 `Sitemap:` 指向站点地图，让抓取更完整。

## 6. 用语义化标签 + 稳定的内容结构

AI 解析页面时会找 `<h1>`、`<article>`、`<main>`、`<time datetime>` 这些语义标签来判断层级和时间。全站用 `<div>` 堆出来的页面，机器只能靠视觉猜。

建议每篇文章：一个页面只有一个 `<h1>`，小节用 `<h2>`／`<h3>`，发布时间用 `<time datetime="2026-09-08">`。

## 小结

把这六件事做齐，AI 抓取基本上不会有问题。优先级排序是：**静态渲染 > llms.txt > 结构化数据 > Markdown 镜像 > robots.txt > 语义化标签**。

如果你希望官网改造成对 AI 友好、并且内容更新只需要改 Markdown 文件，可以联系我们聊聊。

## 人脸识别考勤怎么落地？从摄像头到小程序的完整技术选型

「厂里 300 多人，打卡机代打严重，能不能改成刷脸？」这是我们最近接到最多的一类需求。技术上完全可行，但方案怎么选，直接决定成本、准确率和合规风险。

## 先明确三个决策点

**第一，人脸数据存在哪。** 这是最关键的一条。如果把员工人脸上传到第三方云平台，涉及个人信息保护合规问题，员工也容易抵触。更稳妥的做法是把人脸库放在企业自己的服务器上，比对在本地完成，只有考勤结果（工号、时间、是否迟到）往外传。

**第二，用哪套人脸模型。** 主流选择是 InsightFace（精度高、模型体积适中）和 dlib（部署简单、资源占用低）。做 1:N 的员工识别，InsightFace 的 ArcFace 系列在国内场景下表现更稳，一般要求底库照片质量过关。

**第三，摄像头能不能用。** 大部分工厂已有海康、大华的 RTSP 摄像头，可以直接复用，不必重新布线。但要注意分辨率——低于 1080P 的枪机在 3 米外抓拍人脸，误识率会明显上升。

## 完整链路

整条链路是这样的：

1. **取流**：后端通过 RTSP 拉取摄像头视频流（FFmpeg / OpenCV）
2. **转码**：转成 HLS 或 WebRTC，让手机端能实时预览
3. **抓拍**：小程序端预览画面，员工点击抓拍，或后端按帧自动抓拍
4. **检测与对齐**：人脸检测、关键点对齐、质量过滤（模糊/侧脸直接丢弃）
5. **特征比对**：提取 512 维特征向量，在本地底库中做 1:N 检索
6. **业务判定**：命中员工工号 → 记录时间 → 按考勤规则判断迟到/早退
7. **结果输出**：考勤报表、异常提醒、月度统计导出

微信小程序这一层有个实际限制要提前知道：**小程序不能直接播放 RTSP**，必须先由后端转码。另外小程序如果用了云开发，在 Web 端是无法使用 `wx.cloud` 的，需要改成 `app.callFunction()` 调用云函数。

## 成本大致构成

- **硬件**：复用现有摄像头则接近零成本；新增 1080P 摄像头按需采购
- **服务器**：本地一台带独显或强 CPU 的机器即可支撑几十路比对；纯 CPU 推理需要评估并发
- **软件**：取流转码 + 人脸比对 + 考勤规则 + 小程序前端 + 管理后台
- **合规**：员工知情同意书模板、数据留存期限设定

对比传统打卡机，刷脸考勤的初期投入略高，但省掉了代打漏洞和每月核对工时的隐性成本。以 300 人规模测算，人力核对的效率提升通常在半年内就能覆盖投入。

## 几个容易踩的坑

**底库照片不规范。** 用员工自拍的侧脸、戴帽子照片入库，识别率必然差。建议现场统一采集，每人 1–3 张正脸照片。

**光照条件。** 厂区门口的逆光会让抓拍质量骤降。要么加装补光灯，要么把摄像头装在内侧顺光位置。

**网络抖动。** RTSP 取流对网络稳定性敏感，建议摄像头与服务器走内网有线，不要跨公网。

**误识率与阈值。** 阈值调太高会「认不出」，调太低会「认错人」。上线初期建议保留人工复核入口，用真实数据调两周再把阈值固化。

---

如果你正在评估刷脸考勤方案，可以把现场摄像头型号、点位数量和员工规模告诉我们，我们给出具体的可行性与工期判断。
