Spaces:
Sleeping
Sleeping
File size: 3,147 Bytes
9c84f9d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | """νμ΄νλΌμΈ μ€ν μ€ λ§λλ μμΈ.
μμ μμ§μ λͺ¨λ₯΄λ step_type/rule_type μ λ§λλ©΄ μ무 μΌλ μ νκ³ ν
μ€νΈλ₯Ό
κ·Έλλ‘ ν΅κ³ΌμμΌ°λ€(μ‘°μ©ν no-op). μ€ν λ μ€ν
μ΄λ¦μ΄ API νΈμΆ ν λ² μμ΄
"μ±κ³΅"μΌλ‘ μ§λκ°λ λ²κ·Έμλ€. μ§κΈμ λ κ²ΉμΌλ‘ λ§λλ€:
1. **μμ± μμ κ²μ¦** -- `create_pipeline` μ΄ steps λͺ©λ‘ μ 체λ₯Ό STEP_REGISTRY μμ
ν΄μνλ€. λͺ¨λ₯΄λ μ΄λ¦μ run μ΄ μμλκΈ°λ μ μ μ¬κΈ° μμΈλ‘ μ£½λλ€.
2. μλ¬ λ©μμ§μ λ±λ‘λ μ€ν
λͺ©λ‘μ μ€μ΄, μ€νμΈμ§ 미ꡬνμΈμ§ λ°λ‘ 보μ΄κ² νλ€.
(`.agents/01-plans/harness/2026-08-09-chosun-proofread-evalsample-migration.md` Β§5-C)
"""
from __future__ import annotations
def _format_available(available: list[str] | None) -> str:
if not available:
return ""
return f" (registered steps: {', '.join(available)})"
class UnknownStepTypeError(ValueError):
"""step `type` μ΄ STEP_REGISTRY μ λ±λ‘λΌ μμ§ μμ λ."""
def __init__(self, step_type: str, available: list[str] | None = None) -> None:
super().__init__(f"Unknown pipeline step type: {step_type!r}{_format_available(available)}")
self.step_type = step_type
class KnowledgeAssetError(FileNotFoundError):
"""μ€ν
μ΄ μ μΈν μ§μ μμ°(μΉν μ¬μ Β·νμ΄νΈλ¦¬μ€νΈ λ±)μ μ½μ μ μμ λ.
2026-08-11 μ΄μ μλ μ΄κ±Έ μΌμΌ°λ€ -- `except Exception: warning; vocabulary = []`.
κ·Έ κ²°κ³Ό `pipeline_prod_251231` μ vocab μ€ν
2κ°κ° **λΉ μ¬μ μΌλ‘ ν΅κ³Ό**νλ©°
run μ "μ±κ³΅"μΌλ‘ λλ¬κ³ , μ΄μ κΈ°μ€μ μ μκ° μ€λ«λμ μΉν μμ΄ μΈ‘μ λλ€
(μ€μΈ‘: prod 0κ° λ‘λ vs v24 146κ°). λͺ¨λ₯΄λ μ€ν
μ΄λ¦μ μ¦μ μ£½μ΄λ©΄μ
μ§μ μμ° μ μ€μ ν΅κ³Όμν€λ 건 μλ€κ° μ λ§λλ€ -- λ λ€ "μ μΈν κ²μ΄
μ€νλμ§ μμλ€"λ κ°μ μ¬κ³ λ€.
μ μΈ μμ²΄κ° μμΌλ©΄(ν€ λΆμ¬) μ΄ μμΈλ λμ§ μλλ€ -- 그건 μ μμ μΈ no-op μ΄λ€.
"""
def __init__(self, asset: str, searched: list[str]) -> None:
locations = "\n ".join(searched)
super().__init__(
f"μ μΈλ μ§μ μμ°μ μ½μ μ μμ΅λλ€: {asset!r}\n {locations}\n"
f"(config μμ°μ 03-evaluation/resources/ μλ, λ°μ΄ν° μμ°μ λ°μ΄ν° λ£¨νΈ κΈ°μ€)"
)
self.asset = asset
self.searched = searched
class UnknownRuleTypeError(UnknownStepTypeError):
"""legacy `type: rule` μ€ν
μ `rule_type` μ΄ λ±λ‘λΌ μμ§ μμ λ.
`UnknownStepTypeError` μ νμ νμ
μ΄λ€ -- rule μ μ΄μ λ³λ λμ€ν¨μΉ κ³μΈ΅μ΄
μλλΌ λ μ§μ€νΈλ¦¬ νλͺ©μΌ λΏμ΄κ³ , μ΄ ν΄λμ€λ κΈ°μ‘΄ νΈμΆλΆ/ν
μ€νΈμμ νΈνμ©
ꡬλΆμλ‘λ§ λ¨λλ€.
"""
def __init__(self, rule_type: str, available: list[str] | None = None) -> None:
ValueError.__init__(
self, f"Unknown pipeline rule type: {rule_type!r}{_format_available(available)}"
)
self.step_type = rule_type
self.rule_type = rule_type
|