Add exponential backoff retry for Gemini 503s
Build Agents Runtime / build (push) Successful in 4m38s
Details
Build Agents Runtime / build (push) Successful in 4m38s
Details
This commit is contained in:
parent
76d6e98552
commit
b491b76644
|
|
@ -97,6 +97,12 @@ def send_email(to_email: str, subject: str, body: str) -> str:
|
|||
|
||||
tools = [send_whatsapp, set_reminder, schedule_calendar, trigger_utility_scraper, get_k8s_pods, delete_k8s_pod, send_email]
|
||||
|
||||
from tenacity import retry, stop_after_attempt, wait_exponential
|
||||
|
||||
@retry(stop=stop_after_attempt(5), wait=wait_exponential(multiplier=1, min=4, max=20))
|
||||
def _invoke_with_retry(agent, messages):
|
||||
return agent.invoke({"messages": messages})
|
||||
|
||||
@activity.defn
|
||||
def run_agent_activity(payload: dict) -> str:
|
||||
user_request = payload.get("text", "")
|
||||
|
|
@ -122,5 +128,5 @@ TOOLS AVAILABLE:
|
|||
"""
|
||||
|
||||
agent = create_react_agent(llm, tools)
|
||||
result = agent.invoke({"messages": [("system", system_prompt), ("user", user_request)]})
|
||||
result = _invoke_with_retry(agent, [("system", system_prompt), ("user", user_request)])
|
||||
return result["messages"][-1].content
|
||||
|
|
|
|||
Loading…
Reference in New Issue