bugfix
This commit is contained in:
parent
6e748bd482
commit
5201e2b0ac
@ -26,6 +26,7 @@ class SkillDecision:
|
||||
skill: str
|
||||
script: str
|
||||
params: dict
|
||||
missing_params: list
|
||||
reason: Optional[str] = None
|
||||
|
||||
@dataclass
|
||||
@ -116,17 +117,19 @@ class Agent:
|
||||
self.load_skills()
|
||||
candidates = await self._candidate_skills(user_text)
|
||||
decision = await self._plan_with_candidates(user_text, candidates)
|
||||
try:
|
||||
debug(f'{decision=}')
|
||||
validated_params = self._validate_params(decision)
|
||||
except MissingParams as e:
|
||||
question = await self._ask_user_for_params(user_text, decision.skill, decision.script, e.fields)
|
||||
if decision.missing_params != []:
|
||||
question = await self._ask_user_for_params(
|
||||
user_text,
|
||||
decision.skill,
|
||||
decision.script,
|
||||
decision.missing_params
|
||||
)
|
||||
state = PlanState(
|
||||
user_intent=user_text,
|
||||
skill=decision.skill,
|
||||
script=decision.script,
|
||||
params=decision.params,
|
||||
missing=e.fields
|
||||
missing=decision.missing_params
|
||||
)
|
||||
return {
|
||||
"type": "clarification",
|
||||
|
||||
@ -36,7 +36,6 @@ Output:
|
||||
1. 选择最符合用户需求的技能脚本
|
||||
|
||||
规则
|
||||
- 如果一个需要的参数缺失,设为null
|
||||
- 只输出JSON
|
||||
|
||||
输出:
|
||||
@ -44,6 +43,7 @@ Output:
|
||||
"skill": "...",
|
||||
"script": "...",
|
||||
"params": {},
|
||||
"missing_params":[...],
|
||||
"reason": "..."
|
||||
}
|
||||
"""
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user