@faiber/faiber-知识
已版本的知识库,组,项目,图边,聊天绑定,匹配规则,运行时间解析,发布,动作,以及审计历史.
安装
npm install @faiber/faiber-knowledge
配置
import { FaiberClient, MemoryTokenProvider } from "@faiber/sdk-core";
import { KnowledgeApi } from "@faiber/faiber-knowledge";
const tokens = new MemoryTokenProvider();
const client = new FaiberClient("knowledge", {
domains: { knowledge: process.env.FAIBER_KNOWLEDGE_URL! },
tokenProvider: tokens,
axios: { timeout: 15_000, withCredentials: true },
});
const api = new KnowledgeApi(client);
const bases = await api.knowledgeBases({ status: "published", limit: 20 });
const result = await api.query("fitness-coach", {
query: "What workout is scheduled today?",
profile_id: userId,
});
API 表面
这个软件包从知识服务中暴露出84个出自源的操作. 通用工作流程有简洁的方法 api;每个已注册后端路由在 api.operations。生成的操作输入、查询、响应、路径、动词和许可合同从 operations.types。 。 。 .
业务登记说明运输范围;它不证明部署的行为或目前的授权。 包装 provenance.json 识别选定的服务源和合同核对和.
管理路线使用支持的乐观版本字段. 运行时查询通过聊天流和返回匹配的知识、规则、通知、警告、任务、输入请求、方向和微量数据来进行.
认证和授权
使用一个 TokenProvider 以转发已签名用户的 Bearer 令牌,或启用 withCredentials 用于安全的 Http 只有饼干会话。 每个行动的JSDoc都包含从服务路线卫士复制的许可要求. SDK不嵌入 API 密钥,证书,本地主机 URL,沙盒主机,或生产主机.
投入、询问、答复和运输
所有方法都返回完整的Axios响应,包括状态,头,以及请求ID. 请求机构和查询对象被命名为导出接口. 知识标本使用平面 page 财务报告和审定财务报表 limit 密钥; 列表元数据包含 total, (中文(简体) ), page 财务报告和审定财务报表 limit。动作和编辑器审计只应用其文件限制/状态过滤器,而不使用页面。 标准 Axios 请求选项、信头、超时、适配器、拦截器和 AbortSignal 取消被支持为最后参数.
一般性的REST资源得到能力保障。 调用未注册的遗留方法 UnsupportedOperationError 在发送请求之前, 而不是生成后端 405。 。 。 .
错误和取消
try {
await api.client.get("/health", undefined, { signal: AbortSignal.timeout(5_000) });
} catch (error) {
// Axios errors retain response.status and the service error body.
}
使用 @faiber/faiber-ts-sdk 当一个应用程序需要多个具有一个配置的Faiber服务时.
决定性公布的助理合同
knowledge.assistantContracts(assistantId, '2done-assistants') 从助手允许的基地装订和不可改变的发布中检索完整的合同记录. Axios的答复包含: response.data.data.release_id 键入 response.data.data.contracts,包括本地化的内容和版本的JSON Schema元数据. 与语义检索不同,这一操作不排序,不截断,也不省略所需的合同. 这需要 knowledge:runtime;没有、残废、未公布或无法读取的绑定不能返回部分指导。 Axios 认证、取消和错误处理都适用.
内部操作需要信任的服务器证书和当前租户范围. 永远不要从浏览器中调用它们或向应用程序用户暴露服务证书.
发布和阅读不可改变的版本
publish(baseId) 需求 knowledge:publish 返回 a
KnowledgeReleaseResponse包括释放的身份证、清单、验收和
出版时间戳。 可变的知识库却指出了这种释放
结束 published_release_id。读取被绑定的快照 release(releaseId)
或者说 operations.routesGetReleaseGet(releaseId);两者都要求 knowledge:read。 。 。 .
写作 export(baseId) 可变异且具有导出时间戳;不是
已发布指令捆绑.
const published = await api.publish(baseId, { signal });
const release = await api.release(published.data.data.id, { signal });
console.log(release.data.data.checksum_sha256);
Base, group, project, 边缘, 绑定, 和规则响应 暴露其实际记录
字段,包括修改、时间戳、无效的字符/删除字段,以及项目
链接。 本地化的内容、元数据、条件表达和政策得以保留
JSON 值用于服务定义可扩展的图案. 项目链接需要
linked_service, (中文(简体) ), linked_entity_type,以及 linked_entity_id 一起来 一个空的
链接字符串在更新时清除链接字段; 省略字段保存.
null 不清除当前 Rust 的 DTO 中的可选更新字段。 使用
expected_version 当编辑以检测冲突时; 通过重新加载处理 HTTP 409
当前记录并保存未保存的用户输入.
过滤和页面匹配规则
matchRules({ q, knowledge_base_id, group_id, enabled, page, limit }) 过滤器
在所有授权的活动基数上标注前为活动规则. q 匹配
shall 或本地化名称文本 。 答复包括: meta.total, (中文(简体) ), meta.page,以及
meta.limit· ; limit 以 1–200 为界,页起于 1 。 顺序是
优先,然后是规则ID。 此 API 不将基准目录切换到
它的前200个记录. operations.routesListRulesGet() 暴露同样的线
合同。 组和基数过滤器使用其UUID; 无法访问或删除基数
没有结果.
作者列表、行动和直接文本摄入
基准、项和匹配规则列表返回数组 response.data.data 标记
内 response.data.meta (单位:千美元)total, (中文(简体) ), page, (中文(简体) ), limit) (中文(简体) ). 项目重要性接受 debug, (中文(简体) ),
info, (中文(简体) ), notice, (中文(简体) ), warning, (中文(简体) ), urgent,或 critical。可选 scalar 编辑器更新
字段接受 null 作为后端的省略值行为; 无效不能清除
父、日期或链接。 空链接字符串由服务单独处理.
ingestDocument 同步进行直接文本/圆通索引。 更改文档
返回 HTTP 201 与 status: "indexed" 和完成的项目 job_id; 相同的重试
外部 ID、 内容校验和源字段返回 HTTP 200 与 status: "unchanged" 没有新的
工作证。 索引文本并不意味着矢量嵌入已准备好 。 文件
列表返回投影方式 indexed_at 财务报告和审定财务报表 created_at; 不包括
内容、校验和或元数据。 当
这需要内容.
编辑审计日志(operations.routesListAuditGet,允许 knowledge:audit(中文(简体) )
和平台审计活动auditEvents,允许 knowledge:read)是独立的
记录格式。 行动状态已接受 open, (中文(简体) ), acknowledged, (中文(简体) ), snoozed, (中文(简体) ), completed, (中文(简体) ),
或者说 dismissed 与 knowledge:actions; 普通读权限不授权
动作更新.
标题、媒体类型、语言、出处、元数据或源协会的更正 即使文本校验和不变,也要更新现有的外部ID文档. 后处理重试返回实际持续的有效工作标识;它们不承诺 摄取工人或嵌入器已经准备好.
源配置和同步
来源记录包括组织/基地、版本、配置和出处
策略、同步光标/计数、转换器参考、时间表和时间戳.
operations.platformCreateSourcePost 接受名称 CreateKnowledgeSourceInput· ;
源类型是 manual, (中文(简体) ), api, (中文(简体) ), crawler, (中文(简体) ), web, (中文(简体) ), sitemap, (中文(简体) ), rss, (中文(简体) ), infera-drm, (中文(简体) ),
infera-session, (中文(简体) ), structured,以及 database-export. 配置/证明成员
是故意服务定义的 JSON 扩展值。 将证书保存在控制中心
提供结束于 _ref 而不是生来的秘密.
platformSyncSourcePost 返回一个排队收据。 检查处理 - 工作状态和
在将源数据作为同步处理之前,将适配器的可用性分开。 这个
platformPauseSourcePost 操作切换活动/已暂停状态; 它不是一个一元体
"设定暂停"请求. 在模糊的运输失败后读取当前来源
在重复切换之前。 来源管理要求 knowledge:write; 列出
来源需要 knowledge:read。 。 。 .
Canonical v1 内存管理继任者(整合草案)
管理添加需要匹配验证后端 一揽子升级。 在起草工作期间,源头指针有意保持不变.
- 主体、记忆、内存和内存 预测。 政策和无效的推翻是分开的。 过期/被遗忘 内容经过编辑;审计预测不包括保留的个人快照.
- set Memory Override 要求从确切的被审查对象中进行预期的 修改. 新建或省略重置 PUT 语义下重置的字段 . A409一次浮出水面;取出/审查并有意重新提交属于 操作员。 客户端从未自动重置草稿.
- 设置 source State 和 canonical 平台 Pause SourcePost 发送所希望的状态 已抓取预期的( V) 。 犬形v1路线取代盲目的取走; 呼叫者必须经过两个字段.
- 正确的Memory发送经审查的清晰内存ID并更正UUID. 这个 服务需要当前所有者/写入权限和完整的冲突集.
- 忘记记忆和清除Subject Memory 保存有界限的类型/理由查询输入 .
- 忘记助理搜索呼叫 /api/v1/runtime/ mcp memory forget和 返回 Axios 的全部响应。 已关闭并清除 表示承诺范围无效,包括第一个待定轮班 无主题;行 已更改为零。 这些领域无法保证消除 原声聊天,来源家庭或保留物理拷贝.
适配测试只验证运输和类型. 后端 PostgreSQL, 认证 管理代理、 软件包/ 源代码对齐、 绑定 UI 并释放门 仍然是不同的要求。 所有终点都保留在/api/v1下.
使用记忆的助理旗帜仍然是硬捕捉/召回天花板。 明显真实 即使存储的遗迹 也禁止对离车道进行超标 覆盖 扩展 升起的旗帜是真实的 。 这一遗产价值被保留为历史, 不是情报机构控制 回复宣布有效 override mode 窄 只;分别检查原始数值和有效值。 明确的助理政策 更改需要它们自己的当前授权/修订/划时代整合门.
政策修订和业务成果
用助手Configulation( AssistantId) 打开编辑草稿 。 保留其 预期 政策 根据该草案进行修改。 配置助理需要抓取 修订和调用创建的非无配置 id UUID. 仅使用 0 到 创建一个缺失的政策。 在不确定后保持相同的UUID和精确输入 结果;更改请求需要新的、经过明确审查的业务。 A409必须 永远不会自动抓取或重新定位.
操作( 助手, 配置) Id) 读取不可变的 在当前知识下应用/取消的结果:写出。 生成的峡谷 等效是平台辅助配置SnapshotGet, 平台 配置助理 Put, 平台助理 配置操作Get 和 取消助理配置操作。 明确接受取消 非空原因 最多 500 字节, 栅栏延迟交货, 不能取消 已经承诺的政策。 完全一样的原创演员再播放 政策历史、审计或记忆时代.
DTO是助理政策即时响应,助理配置输入, 助理设计师 助理设计师 (原始内容存档于2019-06-26). Assistant Configulation Cancellation. 这些方法保存Axios元数据, 当前运输认证、取消和实际错误状态. 当地PostgreSQL/HTTP测试与已部署的境内流离失所者/赠款认证分开 和从所有服务语义释放门.
上下文选择限制
配置的助手关卡会限制选择的 Chat/Knowledge 修改时的自有对话上下文请求. 新建或省略的请求级别不会删除所配置的上限 。 已部署的老服务机构可能不强制实施这种行为;在依赖之前核查已部署的接收器.
被选中的助攻群弹被存储配置,但转发和后人-对正匹配并没有得到一致的全面实施. 不要使用这些设置作为授权边界或承诺排除未分类的结果。 服务器侧当前租户,权限和基础约束仍然具有权威性.
Knowledge的选定介质块封顶在治理之后, 查询限制并不是对所有返回道进行严格的综合计算。 扩展和重排设置可以作为所请求的值保留,而运行时能力报告不支持/未应用;存储一面旗帜则无法启用一个算法或提供者. 检查返回的追踪/能力信息而不是假设这些特性运行.
运行时间收款和平台库存
recordMemoryTurn 返回 HTTP 202 并带两个 {queued: true, outbox_id, status, idempotency_key} 或者说 {queued: false, reason}。录取不同于提取.
recordRetrievalUsage 返回持续存在的代号/成本收据。 平台
目录、转换器、评价案例、建议组/项目、证据读取和
健康终点显示命名反应预测 api.operations。 。 。 .
准备状态可以将HTTP 503与已退化的有效载荷还原,Axios默认拒绝.
助理查询预算省略 sections 当助理政策缺失时。 运行时间
服务因供应商而故意变化的有效载荷保留有文件记载的JSON
值; 数据库行和收据显示其混凝土字段。 源代码同步或
重新处理工作收据确认持久排队,而不是执行工人.