File size: 1,344 Bytes
497f49b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import asyncio
import sys

sys.path.insert(0, ".")

from agents.claim_verifier_agent import VERIFY_SYSTEM, ClaimVerifierAgent
from services.llm_service import LLMService

KW = ["profit margin", "cogs", "gross margin", "factor analysis", "gross margins",
      "alternative energy", "momentum factor", "trading strategy", "dividend yield"]

CLAIMS = [
    ("The momentum effect in stock returns is a well-documented anomaly in academic literature.",
     ["momentum factor", "trading strategy"]),
    ("Higher gross profit margins generally indicate better profitability for a company.",
     ["profit margin", "gross margin"]),
    ("Diversification reduces portfolio risk.",
     ["factor analysis", "trading strategy"]),
]


async def main():
    agent = ClaimVerifierAgent()
    llm = LLMService()
    for text, kw in CLAIMS:
        evidence = await agent._gather_evidence(text, kw)
        block = "\n".join(
            f"- [{e['source']}] {e['title']}: {e['snippet']}" for e in evidence[:5]
        )
        verdict = await llm.complete_json(
            VERIFY_SYSTEM, f"Claim: {text}\n\nRetrieved evidence:\n{block}"
        )
        print("CLAIM:", text[:60])
        print("  evidence:", len(evidence), "| verdict:", (verdict or {}).get("verdict"),
              "| conf:", (verdict or {}).get("confidence"))


asyncio.run(main())