From 742790588224ad227a768e47d5fdaf481944b7da Mon Sep 17 00:00:00 2001 From: anuragts Date: Thu, 30 Jan 2025 17:21:48 +0530 Subject: [PATCH 1/2] feat: simple agent --- agents/settings.py | 1 + agents/simple_agent.py | 36 ++++++++++++++++++++++++++++++++++++ api/routes/playground.py | 5 +++-- 3 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 agents/simple_agent.py diff --git a/agents/settings.py b/agents/settings.py index 6dcf524..213b0c0 100644 --- a/agents/settings.py +++ b/agents/settings.py @@ -8,6 +8,7 @@ class AgentSettings(BaseSettings): """ gpt_4: str = "gpt-4o" + gpt_4o_mini: str = "gpt-4o-mini" embedding_model: str = "text-embedding-3-small" default_max_completion_tokens: int = 16000 default_temperature: float = 0 diff --git a/agents/simple_agent.py b/agents/simple_agent.py new file mode 100644 index 0000000..261ffbc --- /dev/null +++ b/agents/simple_agent.py @@ -0,0 +1,36 @@ +from typing import Optional + +from agno.agent import Agent +from agno.models.openai import OpenAIChat +from agno.storage.agent.postgres import PostgresAgentStorage + +from agents.settings import agent_settings +from db.session import db_url + + +simple_agent_storage = PostgresAgentStorage(table_name="simple_agent", db_url=db_url) + + +def get_simple_agent( + user_id: Optional[str] = None, + session_id: Optional[str] = None, + debug_mode: bool = False, +) -> Agent: + return Agent( + name="Simple Agent", + role="Simple agent", + agent_id="simple-agent", + session_id=session_id, + user_id=user_id, + model=OpenAIChat( + id=agent_settings.gpt_4o_mini, + max_tokens=agent_settings.default_max_completion_tokens, + temperature=agent_settings.default_temperature, + ), + storage=simple_agent_storage, + add_history_to_messages=True, + num_history_responses=5, + add_datetime_to_instructions=True, + markdown=True, + debug_mode=debug_mode, + ) diff --git a/api/routes/playground.py b/api/routes/playground.py index 8c0a2c7..f94548f 100644 --- a/api/routes/playground.py +++ b/api/routes/playground.py @@ -5,7 +5,7 @@ from agents.finance import get_finance_agent from agents.research import get_research_agent from agents.web_search import get_web_search_agent - +from agents.simple_agent import get_simple_agent # Import workflows from workflows.blog_post_generator import get_blog_post_generator from workflows.investment_report_generator import get_investment_report_generator @@ -18,6 +18,7 @@ finance_agent = get_finance_agent(debug_mode=True) research_agent = get_research_agent(debug_mode=True) web_search_agent = get_web_search_agent(debug_mode=True) +simple_agent = get_simple_agent(debug_mode=True) blog_post_generator = get_blog_post_generator(debug_mode=True) investment_report_generator = get_investment_report_generator(debug_mode=True) @@ -25,7 +26,7 @@ # Create a playground instance playground = Playground( - agents=[web_search_agent, research_agent, finance_agent], + agents=[web_search_agent, research_agent, finance_agent, simple_agent], workflows=[blog_post_generator, investment_report_generator, startup_idea_validator], ) # Log the playground endpoint with phidata.app From 67c99b60112b84cd2aecd0498808ae92d1e60039 Mon Sep 17 00:00:00 2001 From: anuragts Date: Thu, 30 Jan 2025 17:24:30 +0530 Subject: [PATCH 2/2] fix: update --- api/routes/playground.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/routes/playground.py b/api/routes/playground.py index f94548f..2e6bb09 100644 --- a/api/routes/playground.py +++ b/api/routes/playground.py @@ -26,7 +26,7 @@ # Create a playground instance playground = Playground( - agents=[web_search_agent, research_agent, finance_agent, simple_agent], + agents=[simple_agent,web_search_agent, research_agent, finance_agent], workflows=[blog_post_generator, investment_report_generator, startup_idea_validator], ) # Log the playground endpoint with phidata.app