feat: solution for 'Экзамен: Самокорректирующийся агент'
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
from typing import TypedDict, Optional
|
||||
|
||||
class AgentState(TypedDict):
|
||||
task: str
|
||||
result: str
|
||||
attempts: int
|
||||
status: str # pending | success | failed | max_attempts
|
||||
error: Optional[str]
|
||||
max_attempts: int
|
||||
@@ -0,0 +1,12 @@
|
||||
import random
|
||||
|
||||
def unreliable_tool(task: str) -> str:
|
||||
"""
|
||||
Simulate a tool that fails 30% of the time.
|
||||
"""
|
||||
if random.random() < 0.3:
|
||||
raise ValueError("Tool failed due to random error.")
|
||||
# Simple implementation: if task contains arithmetic, compute it
|
||||
if "2+2" in task:
|
||||
return "4"
|
||||
return "unknown"
|
||||
Reference in New Issue
Block a user