30 lines
1.0 KiB
Python
30 lines
1.0 KiB
Python
"""Intent alignment: what user meant vs what user said for AGI."""
|
|
|
|
from typing import Any
|
|
|
|
from fusionagi._logger import logger
|
|
|
|
|
|
class IntentAlignment:
|
|
"""
|
|
Checks that system interpretation of user goal matches user intent.
|
|
Placeholder: returns True; wire to confirmation or paraphrase flow.
|
|
"""
|
|
|
|
def __init__(self) -> None:
|
|
self._checks: list[tuple[str, str]] = [] # (interpreted_goal, user_input)
|
|
|
|
def check(self, interpreted_goal: str, user_input: str, context: dict[str, Any] | None = None) -> tuple[bool, str]:
|
|
"""
|
|
Returns (aligned, message). If not aligned, message suggests clarification.
|
|
"""
|
|
if not interpreted_goal or not user_input:
|
|
return True, ""
|
|
self._checks.append((interpreted_goal, user_input))
|
|
logger.debug("IntentAlignment check", extra={"goal": interpreted_goal[:80]})
|
|
return True, ""
|
|
|
|
def suggest_paraphrase(self, goal: str) -> str:
|
|
"""Return suggested paraphrase for user to confirm."""
|
|
return f"Just to confirm, you want: {goal}"
|