Configurazioni dell'app #27
@@ -77,7 +77,6 @@ if __name__ == "__main__":
|
|||||||
save_btn.click(save_current_chat, inputs=None, outputs=None)
|
save_btn.click(save_current_chat, inputs=None, outputs=None)
|
||||||
load_btn.click(load_previous_chat, inputs=None, outputs=[chatbot, chatbot])
|
load_btn.click(load_previous_chat, inputs=None, outputs=[chatbot, chatbot])
|
||||||
|
|
||||||
server, port = ("0.0.0.0", 8000) # 0.0.0.0 per accesso esterno (Docker)
|
_app, local, shared = demo.launch(server_name="0.0.0.0", server_port=configs.port, quiet=True, prevent_thread_lock=True, share=configs.gradio_share)
|
||||||
server_log = "localhost" if server == "0.0.0.0" else server
|
log_info(f"Starting UPO AppAI Chat on {shared or local}")
|
||||||
log_info(f"Starting UPO AppAI Chat on http://{server_log}:{port}") # noqa
|
demo.queue().block_thread()
|
||||||
demo.launch(server_name=server, server_port=port, quiet=True)
|
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ class Pipeline:
|
|||||||
team_model = self.configs.get_model_by_name(self.configs.agents.team_model)
|
team_model = self.configs.get_model_by_name(self.configs.agents.team_model)
|
||||||
leader_model = self.configs.get_model_by_name(self.configs.agents.team_leader_model)
|
leader_model = self.configs.get_model_by_name(self.configs.agents.team_leader_model)
|
||||||
|
|
||||||
team = create_team_with(team_model, leader_model)
|
team = create_team_with(self.configs, team_model, leader_model)
|
||||||
team_outputs = team.run(query) # type: ignore
|
team_outputs = team.run(query) # type: ignore
|
||||||
|
|
||||||
# Step 2: aggregazione output strutturati
|
# Step 2: aggregazione output strutturati
|
||||||
|
|||||||
@@ -3,25 +3,21 @@ from app.api.markets import MarketAPIsTool
|
|||||||
from app.api.news import NewsAPIsTool
|
from app.api.news import NewsAPIsTool
|
||||||
from app.api.social import SocialAPIsTool
|
from app.api.social import SocialAPIsTool
|
||||||
from app.agents.prompts import *
|
from app.agents.prompts import *
|
||||||
from app.configs import AppModel
|
from app.configs import AppConfig, AppModel
|
||||||
|
|
||||||
|
|
||||||
def create_team_with(model: AppModel, coordinator: AppModel | None = None) -> Team:
|
def create_team_with(configs: AppConfig, model: AppModel, coordinator: AppModel | None = None) -> Team:
|
||||||
market_agent = model.get_agent(
|
|
||||||
instructions=MARKET_INSTRUCTIONS,
|
market_tool = MarketAPIsTool(currency=configs.api.currency)
|
||||||
name="MarketAgent",
|
market_tool.handler.set_retries(configs.api.retry_attempts, configs.api.retry_delay_seconds)
|
||||||
tools=[MarketAPIsTool()]
|
news_tool = NewsAPIsTool()
|
||||||
)
|
news_tool.handler.set_retries(configs.api.retry_attempts, configs.api.retry_delay_seconds)
|
||||||
news_agent = model.get_agent(
|
social_tool = SocialAPIsTool()
|
||||||
instructions=NEWS_INSTRUCTIONS,
|
social_tool.handler.set_retries(configs.api.retry_attempts, configs.api.retry_delay_seconds)
|
||||||
name="NewsAgent",
|
|
||||||
tools=[NewsAPIsTool()]
|
market_agent = model.get_agent(instructions=MARKET_INSTRUCTIONS, name="MarketAgent", tools=[market_tool])
|
||||||
)
|
news_agent = model.get_agent(instructions=NEWS_INSTRUCTIONS, name="NewsAgent", tools=[news_tool])
|
||||||
social_agent = model.get_agent(
|
social_agent = model.get_agent(instructions=SOCIAL_INSTRUCTIONS, name="SocialAgent", tools=[social_tool])
|
||||||
instructions=SOCIAL_INSTRUCTIONS,
|
|
||||||
name="SocialAgent",
|
|
||||||
tools=[SocialAPIsTool()]
|
|
||||||
)
|
|
||||||
|
|
||||||
coordinator = coordinator or model
|
coordinator = coordinator or model
|
||||||
return Team(
|
return Team(
|
||||||
|
|||||||
@@ -35,6 +35,16 @@ class WrapperHandler(Generic[WrapperType]):
|
|||||||
self.retry_delay = retry_delay
|
self.retry_delay = retry_delay
|
||||||
self.index = 0
|
self.index = 0
|
||||||
|
|
||||||
|
def set_retries(self, try_per_wrapper: int, retry_delay: int) -> None:
|
||||||
|
"""
|
||||||
|
Sets the retry parameters for the handler.
|
||||||
|
Args:
|
||||||
|
try_per_wrapper (int): Number of retries per wrapper before switching to the next.
|
||||||
|
retry_delay (int): Delay in seconds between retries.
|
||||||
|
"""
|
||||||
|
self.retry_per_wrapper = try_per_wrapper
|
||||||
|
self.retry_delay = retry_delay
|
||||||
|
|
||||||
def try_call(self, func: Callable[[WrapperType], OutputType]) -> OutputType:
|
def try_call(self, func: Callable[[WrapperType], OutputType]) -> OutputType:
|
||||||
"""
|
"""
|
||||||
Attempts to call the provided function on the current wrapper.
|
Attempts to call the provided function on the current wrapper.
|
||||||
|
|||||||
Reference in New Issue
Block a user