Spaces:
Running on Zero
Running on Zero
File size: 1,395 Bytes
f8768df c4aee46 f8768df | 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 | """Extend the bundled general-economy taxonomy without modifying it in place."""
from __future__ import annotations
import json
from range_curate.examples.general_economy import DefaultTaxonomy, RelevanceEngine
def add_regional_indicator(builder) -> None:
builder.add_lexical_rule(
rule_id="regional-manufacturing-survey",
entity_concept="macroeconomic_indicator",
tag_type="macroeconomic",
phrases=("regional manufacturing survey",),
target_id="MACRO:REGIONAL_MANUFACTURING",
market_wide_authorized=True,
source_id="custom-example",
)
def main() -> None:
base = DefaultTaxonomy()
custom = base.extend(add_regional_indicator)
assert base.fingerprint != custom.fingerprint
assert "regional-manufacturing-survey" not in base.lexical_rule_ids
assert "regional-manufacturing-survey" in custom.lexical_rule_ids
decision = RelevanceEngine(taxonomy=custom, workers=1).predict(
"The regional manufacturing survey weakened sharply.",
timestamp="2025-01-15T08:30:00-05:00",
article_id="custom-economy-1",
source="custom-example",
)
print(json.dumps(decision.summary(), indent=2))
print(f"\nBase taxonomy: {base.fingerprint}")
print(f"Custom taxonomy: {custom.fingerprint}")
if __name__ == "__main__":
main()
|