"""上下文构建器:数据切片 + 拼接(聚合门面)。 实现按 slice 拆分(单文件 → slices 包),本模块只做再导出: - 切片函数: 每个领域 agent 一个数据切片 → src/llm/slices/{form,h2h,stats,home_away,standings}.py - 共享类型/头信息/查询助手 → src/llm/slices/common.py - build_context: 单 agent 路径,拼接全部切片(行为与旧版一致) → src/llm/slices/aggregate.py multi-agent 路径由 agents/orchestrator.py 调用切片函数,每个专家只拿自己的切片。 性能说明: build_context 创建一个共享 session 并传给所有切片函数, 避免每个切片独立创建 session —— 回测 20 场并发时, 5 个切片 × 20 场 = 100 个连接会耗尽连接池(pool_size=15)。 消费方(路由/orchestrator/tests)仍从本模块 import,签名与拆分前完全一致。 """ from __future__ import annotations # ── 共享类型与基础(判空/赛果/统计可用性) ── from src.llm.slices.common import ( # noqa: F401 MatchContext, MatchHeader, SliceResult, _is_stats_available, _outcome, header_text, load_match_header, ) # ── 领域切片 ── from src.llm.slices.form import form_slice # noqa: F401 from src.llm.slices.h2h import h2h_slice # noqa: F401 from src.llm.slices.home_away import home_away_slice # noqa: F401 from src.llm.slices.standings import standings_slice # noqa: F401 from src.llm.slices.stats import stats_slice # noqa: F401 # ── 底层查询助手(切片函数共用;orchestrator/tests 直接引用) ── from src.llm.slices.form import _get_form # noqa: F401 from src.llm.slices.h2h import _get_h2h # noqa: F401 from src.llm.slices.home_away import _get_home_away # noqa: F401 # ── 单 agent 聚合入口 ── from src.llm.slices.aggregate import build_context # noqa: F401