Skip to content

Commit a58eca7

Browse files
committed
Async callback
1 parent a7045d2 commit a58eca7

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

erniebot-agent/src/erniebot_agent/agents/function_agent.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
from collections import deque
1818
from dataclasses import dataclass, replace
1919
from typing import (
20+
Awaitable,
2021
Callable,
2122
Deque,
2223
Final,
@@ -92,7 +93,9 @@ def __init__(
9293
plugins: Optional[List[str]] = None,
9394
max_steps: Optional[int] = None,
9495
first_tools: Optional[Sequence[BaseTool]] = [],
95-
first_tools_rejected_callback: Optional[Callable[[BaseTool, List[Message], AgentStep], None]] = None,
96+
first_tools_rejected_callback: Optional[
97+
Callable[[BaseTool, List[Message], AgentStep], Awaitable[None]]
98+
] = None,
9699
) -> None:
97100
"""Initialize a function agent.
98101
@@ -183,7 +186,7 @@ async def _run(self, prompt: str, files: Optional[Sequence[File]] = None) -> Age
183186
# If tool choice not work, skip this round
184187
_logger.warning(f"Selected tool [{tool.tool_name}] not work")
185188
if self._first_tools_rejected_callback is not None:
186-
self._first_tools_rejected_callback(tool, new_messages, curr_step)
189+
await self._first_tools_rejected_callback(tool, new_messages, curr_step)
187190

188191
while num_steps_taken < self.max_steps:
189192
curr_step, new_messages = await self._step(chat_history)

0 commit comments

Comments
 (0)