__init__.py 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # -*- coding: utf-8 -*-
  2. """预测器层(PREDICTORS)。
  3. 只做模型推理和模型后处理,不直接读写 Redis/PG,模型路径从配置读取。
  4. 按 ARCHITECTURE.md §6.2 Predictor 接口约束:
  5. - Predictor 不直接读写 Redis/PG。
  6. - 模型路径从配置读取,不拼接代码目录。
  7. - load() 与 predict() 分离,便于启动预热和测试 mock。
  8. - Predictor 之间不互相 import,通过 Pipeline 编排顺序传递结果。
  9. Phase 5 已填充模块(从 interface/predictor.py 迁出):
  10. _common.py <- sess_config / agency_set / header_set / is_agency / get_td_companys / get_role
  11. codename.py <- CodeNamePredict
  12. prem.py <- PREMPredict / EPCPredict
  13. form.py <- FormPredictor
  14. role.py <- RoleRulePredictor / RoleRuleFinalAdd / TendereeRuleRecall(Phase E 起薄委托 role_recall_engine)/ RoleGrade / role_special_predictor
  15. role_context.py <- RoleContext / build_role_contexts(Phase A 上下文预计算,prem/roleRule/tendereeRuleRecall 共享)
  16. role_recall_engine.py <- RoleRecallEngine(Phase E 召回规则统一引擎,消费 role_context.yaml / role_fallback.yaml)
  17. role_rule_engine.py <- RoleRuleEngine(Phase C 模型后修正引擎,消费 role_context_fix.yaml / role_money_fix.yaml)
  18. money.py <- MoneyGrade / DepositPaymentWay / TotalUnitMoney
  19. time.py <- TimePredictor
  20. product.py <- ProductPredictor
  21. product_attrs.py <- TableResult / ProductAttributesPredictor
  22. channel.py <- DocChannel
  23. label.py <- ProjectLabel / IndustryLabel / PropertyLabel / BiddingScore
  24. industry.py <- IndustryPredictor
  25. district.py <- DistrictPredictor
  26. table_prem.py <- TableTag2List / TablePremExtractor / CandidateExtractor / is_head_line / get_header_line
  27. websource.py <- WebsourceTenderee
  28. approval.py <- ApprovalPredictor
  29. entity_type.py <- EntityTypeRulePredictor / get_package_moneys
  30. Phase 2 已建立:
  31. base.py <- BasePredictor 抽象基类
  32. registry.py <- PredictorRegistry(替代 dict_predictor)
  33. 依赖方向(§4.3):
  34. - predictors 可引用 common / infra / interface.Entitys / interface.modelFactory / model_runtime
  35. - predictors 不反向依赖 pipeline / assembly / rules
  36. - predictors 之间不互相 import(通过 Pipeline 编排)
  37. - predictors._common 提供共享状态(sess_config / agency_set / header_set / 辅助函数)
  38. """