Tessmora · 从资料到答案
保留模态特点的检索、独立 Pi Agent 与可核验的引用。
解决什么问题
Tessmora 是可自行部署的知识平台,用于跨文档、图片、音频与视频提问。它保留适合不同模态的检索单元,让答案能回到原文段落或媒体位置。
系统结合 React 界面、Python/FastAPI 宿主、Qdrant 索引与 MinIO 原始文件。普通直接检索、原有的有界 Agent 循环和独立 Pi Agent 路径承担不同的执行职责。
按模态组织资料
文档保留忠于原文的原子单元;图片结合描述与 CLIP 特征;音频结合语音转写与 CLAP;视频以语义镜头为核心,关联描述、语音和辅助关键帧。原始文件与检索表示各有用途。
文档范围规划器在原始单元上提出分段范围。校验要求连续、不重叠、完整覆盖并满足大小上限;无效方案回退到确定性切分,避免模型给出的边界悄悄漏掉或改写原文。
检索与范围
检索结合稠密、稀疏与媒体特有的召回通道,再融合、重排候选。没有固定知识库时,可用知识库画像辅助选择范围;权限与用户选择的搜索范围共同约束可参与的来源。
@ 引用是输入材料,并不自动等于搜索范围。Pi 的不可变 AccessScope 区分允许访问的知识库、搜索知识库与文件、以及输入引用。已绑定的输入材料不能被包装成刚检索到的新结果。
Pi Agent 路径
Pi Agent 是独立接入的 earendil-works/pi 循环,由 Node 运行时与 Python 宿主配合执行,不是把旧有界 Agent 模式换一个名称。Pi 负责迭代研究、来源选择与最终撰写;宿主负责范围、权限、来源身份、用量、事件和最终校验。
工具提供受范围约束的只读检索与证据操作,不授予通用 Shell、任意文件系统或不受限网页工具。当前 Pi 生命周期围绕任务完成、取消与错误控制,不能把旧循环的固定轮次限制套到所有模式。
证据与引用
Pi 使用 SQLite 保存运行、事件与证据。证据身份由来源、版本、定位信息、内容和观察记录共同计算哈希;重复证据去重并获得稳定编号。运行进入终态后不能随意重写。
引用把答案连接到文档段落、图片或音视频位置。读者可以沿定位信息核查一句结论的依据。显示了引用,或者有一张架构示意图,本身都不能证明答案正确。
访问与边界
仓库公开可读;核验时未发现软件许可证文件。自部署需要配置解析、模型服务与数据存储。默认本地或可信网络部署不等于现成的公网多租户服务,公开访问还需要认证和运维控制。
本地检索评测工作仍有正在修改的内容。本 Wiki 不根据未完成实验或文档中的测试数量,新增准确率、延迟、成本或优于竞品的结论。