feat(classifier): add multilingual ECP inherence classifier POC
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
"""Unit tests for optional adapter interfaces (Tier 2 / Tier 3)."""
|
||||
|
||||
from src.adapters.embeddings import LocalEmbeddingsAdapter
|
||||
from src.adapters.llm import LLMFallbackAdapter
|
||||
from src.classifier import InherenceClassifier
|
||||
from src.models import ECPSnapshot
|
||||
|
||||
|
||||
def test_embeddings_adapter_interface():
|
||||
adapter = LocalEmbeddingsAdapter()
|
||||
assert isinstance(adapter.is_available(), bool)
|
||||
assert adapter.evaluate_similarity("test text", ["term1", "term2"]) == 0.0
|
||||
|
||||
|
||||
def test_llm_adapter_interface():
|
||||
adapter = LLMFallbackAdapter()
|
||||
assert isinstance(adapter.is_available(), bool)
|
||||
|
||||
|
||||
def test_classifier_with_adapter_flags():
|
||||
classifier = InherenceClassifier(enable_embeddings=True, enable_llm=True)
|
||||
assert classifier._embeddings_adapter is not None
|
||||
assert classifier._llm_adapter is not None
|
||||
|
||||
ecp = ECPSnapshot(
|
||||
target_entity_id="ent_test",
|
||||
target_name="TestCorp",
|
||||
aliases=["TestCorp"],
|
||||
domain="Tech",
|
||||
anchors=["software"]
|
||||
)
|
||||
res = classifier.classify(ecp, "TestCorp builds enterprise cloud software.")
|
||||
assert res.decision.value == "DIRECT_INHERENT"
|
||||
assert res.is_inherent is True
|
||||
Reference in New Issue
Block a user