分享与数据
本页介绍 Aivory 中与「你的数据」相关的全部能力:把对话生成公开链接分享给他人、导出个人数据、从其他平台或本站导入历史对话、隐私设置页,以及跨对话记忆的开启与管理。
对话分享
分享链接是什么
分享链接是一份只读、公开、无需登录的对话快照:
- 分享的内容是当前活跃路径上的消息(即你此刻在聊天窗口里看到的那条线),不包含其他分支。
- 快照在创建的一刻定格:之后的新消息不会出现在分享中。想让新内容可见,再次执行一次分享即可:新快照替换旧快照,同时生成新的链接,旧链接随之失效。
- 快照只保留用户与助手消息的正文、引用与附件信息,不携带你的账号身份数据。
分享链接是公开的:任何拿到链接的人都可以查看,无需登录、无需审批。不要分享包含敏感信息的对话。
创建分享链接
有两个入口:
| 入口 | 操作路径 | 行为 |
|---|---|---|
| 对话页顶栏 | 三点菜单 → 「分享」 | 打开「分享对话」弹窗,点「创建分享链接」后显示链接、复制按钮与「公开,无需登录即可查看」提示,并提供「取消分享」按钮 |
| 侧边栏历史列表 | 对话行的三点菜单 → 「分享」 | 一步完成:创建(或刷新)分享并直接把链接复制到剪贴板,弹出「分享链接已复制」提示 |
移动端在对话页顶栏的操作面板(action sheet)里同样有「分享」项。
访客看到的分享页
分享页地址形如 https://你的域名/share/<分享ID>,打开后:
- 使用与聊天页完全一致的 Markdown、代码块、引用来源渲染,但隐藏所有操作按钮(发送、重试、编辑等)。
- 页面顶部显示「分享的对话」眉标与对话标题,消息按「用户 / 助手」角色排列。
- 页脚显示「由 Aivory 分享」水印;未登录访客会看到「体验 Aivory」入口。
- 已登录用户会看到「克隆到我的对话」按钮:一键把这份快照复制成自己账号下的一个新对话,之后可以在其基础上继续提问。
附件与生成图片(带资产分享)
分享快照会携带消息中的资产,匿名访客也能正常查看:
| 资产类型 | 分享页中的呈现 |
|---|---|
| 用户上传的图片附件 | 内联显示为图片 |
| 用户上传的其他文件 | 显示为文件卡片(文件名) |
AI 生成的图片(如 image_generate 产物) | 内联显示为图片 |
| AI 生成的其他产物 | 显示为下载链接 |
访客对这些文件的访问走分享专属的公开路由,并且只能访问该快照里出现过的文件,无法借分享链接枚举你的其他上传内容。
如果你的部署是从旧版本升级上来的:旧分享的快照里没有上传附件字段,需要重新分享一次才能让上传文件出现在分享页;AI 生成图片则无需重新分享。
撤销分享
在「分享对话」弹窗里点「取消分享」:
- 撤销立即生效,原链接马上变为 404(分享页显示「该分享不可用」)。
- 撤销后可以随时再次创建分享。
安全性
- 分享链接中的 ID 是高熵随机令牌(192 位),无法被暴力猜测,拿不到链接就看不到内容。
- 分享页不泄露分享者的账号身份信息。
- 快照中的文件访问有独立限速,防止滥用。
导出个人数据
路径:头像菜单 → 设置 → 隐私与数据 → 「导出全部数据」。
点击「导出」后,浏览器会下载一个 JSON 文件,文件名形如 aivory-export-2026-07-11.json,包含:
| 字段 | 内容 |
|---|---|
conversations | 你的全部会话,每个会话含标题、元数据与完整消息列表 |
memories | 你的全部记忆条目 |
exported_at | 导出时间(ISO 8601) |
导出在你的浏览器本地组装并直接下载,内容严格限定为当前登录账号自己的数据。
这份导出文件可以直接被本页的「导入对话」重新识别并导入(见下节),因此也可以当作跨部署搬运个人对话的媒介。
导入对话
路径:设置 → 隐私与数据 → 「导入对话」,选择一个 .json 文件。
支持的格式(自动识别)
同一个入口接受两种格式,解析器会自动判别,无需手动选择:
| 格式 | 说明 | 额外能力 |
|---|---|---|
| 其他平台的聊天导出 | 消息以带父子关系的映射结构存储的通用 JSON 导出 | 编辑/重试产生的分支树会完整迁移为 Aivory 的对话树 |
| 本站「导出全部数据」文件 | 上一节导出的 { conversations: [...], memories, exported_at } 结构 | 额外携带每个会话的 model_id,导入后可直接用原模型续聊 |
导入范围与清洗
导入只保留聊天历史与标题,其余内容在浏览器端解析时全部剔除:
- 上传的文件与用量记录不导入。
- 助手正文里的思考/状态折叠块、内部推理标记、内嵌 base64 图片全部剥离。
- 本站格式只取文本块拼接正文,思考、工具调用、引用、图片块按同一口径丢弃;system 消息跳过。
分支树迁移
源文件里的编辑分支(包括对首个提问的编辑产生的多个根)会原样迁移:导入完成后,分支点上会出现 < n/m > 切换控件,活跃分支也会对齐源文件当时停留的位置;活跃叶子失效时自动回退到最后一条消息。
限额与结果
| 限额项 | 上限 |
|---|---|
| 每次导入的会话数 | 1000 |
| 每个会话的消息数 | 10000 |
| 单条消息正文 | 200 KB |
- 导入不调用任何模型、不消耗积分与额度,纯数据写入。
- 按会话粒度容错:某个会话解析失败会被跳过,不影响其余会话;完成后提示「已导入 N 个对话」,若有失败会附带失败数量。
- 源文件里被中止的空助手回复以「已停止」状态落库,不会在界面上误报错误。
隐私设置页
路径:设置 → 隐私与数据。页面分为两个区块:
| 区块 | 内容 |
|---|---|
| 数据存储 | 说明性文字:对话存储在你所连接的服务器上(自部署场景即你自己的服务器);如需删除数据可联系管理员 |
| 导出与清除 | 「导入对话」「导出全部数据」「清除全部会话」三行操作 |
「清除全部会话」会永久删除你的所有会话,点击后需在确认弹窗中再次确认,删除后不可恢复。如果只想删除个别对话,请在侧边栏对该对话单独操作。
记忆的开关与管理不在本页,而在「设置 → 个性化」,见下节。
记忆
记忆是什么
Aivory 可以跨对话记住关于你的长期事实(偏好、身份、约束等):
- 每轮对话结束后,后台由任务模型异步提取候选记忆,不占用你等待回答的时间。
- 记忆是状态感知的:新事实写入时会自动裁决旧记忆是否过期(例如「搬到东京了」会让「住在北京」变为过期),过期记忆只作历史参考,不再当作当前事实。
记忆条目的状态含义:
| 状态 | 界面标签 | 含义 |
|---|---|---|
ACTIVE | 有效 | 当前事实,回答时直接采用 |
STALE | 过期 | 仅作历史,不作当前依据 |
UNKNOWN_CURRENT | 未知 | 当前是否仍成立不确定 |
HISTORICAL_ONLY | 仅历史 | 只用于「我以前……」类问题 |
QUERY_DEPENDENT | 结合问题判断 | 是否适用取决于当前提问 |
开启与关闭
路径:设置 → 个性化 → 「记忆」区块。
- 「启用记忆」开关控制记忆的使用与保存:关闭后,所有对话既不注入已有记忆,也不再提取新记忆。
- 该偏好保存在服务端,跨设备生效。
- 管理员可以在平台层面全局关闭记忆功能;全局关闭时,整个「记忆」区块不会出现在你的设置里。
管理记忆
「启用记忆」开启后,同一区块内显示记忆管理器:
| 操作 | 说明 |
|---|---|
| 浏览 | 列出全部记忆,每条带状态徽章与可选的属性键 |
| 筛选 | 按「全部 / 有效 / 过期」过滤 |
| 添加记忆 | 手动新增:填写记忆内容,可选属性键与属性值 |
| 编辑 | 修改记忆内容或状态(标为过期 / 标为有效) |
| 遗忘 | 删除该条记忆,需确认 |
聊天中的记忆
- 你可以在对话里直接说「记住……」,模型会通过
save_memory工具显式写入一条记忆,聊天界面会提示记忆已更新。 - 回答时,有效记忆会作为系统提示的一部分注入,让模型「认识你」;这不需要任何额外的模型调用,不影响回答速度。
隐私边界
- 工作空间中的共享对话完全不使用记忆:既不注入你的个人记忆,也不从共享对话中提取,防止你的个人事实泄露给空间成员,详见 团队工作空间。
- 记忆包含在「导出全部数据」的
memories字段中,可随时导出。 - 每条记忆都可以单独删除;删除账号时记忆级联清除。