摘要: Chroma 向量数据库概念 层级对应关系(类比 MySQL) Chroma MySQL 说明 persist_dir(存储实例) database 整个数据存放的根目录 collection table 检索的基本单位,一次 similarity_search 只能在一个 collection 内 阅读全文
posted @ 2026-07-20 17:32 asphyxiasea 阅读(1) 评论(0) 推荐(0)
摘要: 目标检测中高分辨率小目标检测训练总结 核心原则 训练时目标有多少像素,推理时尽量保持目标像素接近。 模型学习的是目标的像素特征,而不是现实中的实际大小。 例如: 训练: 1024×1024 虫子:40×40 pixel 推理: 1024×1024 虫子:38×38 pixel 效果通常最好。 而不是 阅读全文
posted @ 2026-07-17 16:29 asphyxiasea 阅读(3) 评论(0) 推荐(0)
摘要: dataclass / pydantic BaseModel / TypedDict 跨进程传递 背景 langgragh项目中中有个字段使用 @dataclass 定义,嵌套在 State(TypedDict)里。 该 State 会通过 AsyncRedisSaver 序列化并跨进程(API ↔ 阅读全文
posted @ 2026-07-15 17:42 asphyxiasea 阅读(8) 评论(0) 推荐(0)
摘要: 分层架构设计原则 原则一:先画依赖方向图,再定目录结构 在写任何目录之前,先明确一条单向依赖链,例如: api → application → domain(workflows/models) → infra(外部服务客户端) 规则: 箭头只能从左指向右,右边的模块永远不知道左边模块的存在。 dom 阅读全文
posted @ 2026-07-14 18:04 asphyxiasea 阅读(4) 评论(0) 推荐(0)
摘要: LangGraph 图初始化 & app.state 图初始化:两种写法 写法1:跟 lifespan/ctx 绑定 优点:启动即校验连接。 缺点:新增图要同步改 4 处(lifespan、路由、worker startup、handler)。 写法2:模块级异步单例 优点:随处 await get 阅读全文
posted @ 2026-07-13 17:17 asphyxiasea 阅读(4) 评论(0) 推荐(0)
摘要: @lru_cache装饰器; 核心概念 缓存的是函数调用后的返回值(一个具体对象),不是函数本身。 第一次调用真正执行函数体;之后所有调用直接返回同一个缓存对象。 maxsize=1 如果函数无参数、只有一种调用方式,写不写效果一样,但写出来更能表达"这是当单例用的"这个意图。 装饰在类上:可行,效 阅读全文
posted @ 2026-07-12 17:38 asphyxiasea 阅读(2) 评论(0) 推荐(0)
摘要: arq 在工作流中的使用 & 任务打断机制 核心认知:两个不同层面的"打断" 项目里有两种完全不同的"打断",容易混在一起,先分清楚: arq 取消 LangGraph 中断 触发方 外部主动调用 job.abort() 图节点内部主动调用 interrupt() 语义 "别跑了,不要这个结果了" 阅读全文
posted @ 2026-07-09 16:59 asphyxiasea 阅读(3) 评论(0) 推荐(0)
摘要: arq worker独立部署知识总结 1. worker 进程需要完整的业务代码和依赖 worker 进程启动时会真正执行 import 链,一路带出更深层的依赖,也就是实现任务流程的整条工作流。 worker 环境需要的东西 项目自己的完整代码,因为 worker 是在进程内直接调用这些函数,不是 阅读全文
posted @ 2026-07-08 16:14 asphyxiasea 阅读(3) 评论(0) 推荐(0)
摘要: 核心架构变化:手写异步队列改为成熟任务队列库 删除了自建的 TaskDispatcherService(asyncio.Queue + worker 协程 + 手写状态机),迁移到 arq(基于 Redis 的成熟任务队列库)。 为什么做这个决定 自建 dispatcher 要手写取消功能:区分"排 阅读全文
posted @ 2026-07-06 17:51 asphyxiasea 阅读(5) 评论(0) 推荐(0)
摘要: RAG 任务调度链路设计改动 1. 任务状态设计:PENDING 的语义 submit_task 写入 TaskRecord 时状态设为 PENDING,因为此时任务只是"被登记、进队列",尚未被 worker 消费,RUNNING 只能由真正开始执行的 worker 设置。 完整状态生命周期:PE 阅读全文
posted @ 2026-07-03 17:41 asphyxiasea 阅读(4) 评论(0) 推荐(0)