Skip to content
阅读进度

为什么使用 Go Core 与 Python Processor? ​

返回 EachOf 项目 目录

项目版本说明

这些问答整合历史设计与实现资料;当前 main 分支 README 以工作包描述建设状态。具体能力、实验数据与设计目标的边界见项目状态与证据。

标准回答 ​

Go Core 承担 API、授权、事务、任务协调和检索编排,使权威状态变更尽量可验证。Python Processor 承担更依赖模型生态的提取、泛化和向量生成,让模型和运行环境的变化不直接进入核心数据库写入路径。

这种拆分增加协议、部署和观测成本,因此需要版本化任务输入、候选结构、超时与错误语义。不是因为 Go 不会调用模型,而是为了限制谁能决定最终状态,以及让慢模型工作不长期占有数据库事务。

一个必须保留的例外是查询 Embedding:当前召回路径会通过有界的同步私有 RPC 获取查询向量。它不在 Go 进程内执行模型,也不是等待普通异步 Processor DAG;该依赖失败可降级到词法召回,完整语义体验会受到影响。

追问与回答 ​

Processor 全部停机后还能做什么 ​

已经提交的记忆仍可读取;依赖后台模型计算的新写入处理会延迟。语义召回还取决于单独的查询向量服务,不能笼统说所有功能无影响。

为什么不一开始全部用 Python ​

单语言可以降低复杂度;多语言只有在确定性边界、模型生态和独立运行需求值得其成本时才成立,应解释具体收益与额外维护。

易混淆点 ​

  • 声称整个系统所有模型调用都异步且不影响读取。

内容来源 ​

用完整回答理解机制,用真实证据解释项目。