Spaces:
Sleeping
Sleeping
| # from smolagents import DuckDuckGoSearchTool, load_tool,tool | |
| import sys | |
| # import datetime | |
| import time | |
| import yaml | |
| import os | |
| import pytz # Had to give it permission in Code agent | |
| from ui.contentagentui import ContentAgentUI | |
| # from ui.gradioui import GradioUI | |
| from smolagents import CodeAgent, InferenceClientModel | |
| from status_check import resolve_endpoint, is_endpoint_healthy | |
| from tools.tools import load_tools | |
| from prompts import load_prompts | |
| def initialize_agent(endpoint_uri: str): | |
| # Load prompts | |
| custom_prompts = load_prompts() | |
| combined_tools = load_tools() ## from the tools folder (don't remove final answer) | |
| """Initialize and configure the CodeAgent""" | |
| model = InferenceClientModel ( | |
| max_tokens=2096, | |
| temperature=0.5, | |
| model_id=endpoint_uri, | |
| custom_role_conversions=None, | |
| ) | |
| agent = CodeAgent( | |
| model=model, | |
| tools=combined_tools, | |
| max_steps=6, | |
| verbosity_level=3, | |
| name="content_agent", | |
| description="Evaluates whether text is polite or impolite.", | |
| #prompt_templates=custom_prompts, # override prompts | |
| instructions = custom_prompts, # adds additional instructions instead of overriding default prompt | |
| additional_authorized_imports=["pytz"] | |
| ) | |
| return agent | |
| def main(): | |
| uri = resolve_endpoint() | |
| if not uri: | |
| print("❌ Endpoint not ready: no URI configured. Ensure that the HF_ENDPOINT_URI secret has been defined in the current Space.") | |
| sys.exit(1) # exit with non-zero status for clarity | |
| ok, msg = is_endpoint_healthy(uri) | |
| if not ok: | |
| print(f"Endpoint not ready: {msg}") | |
| # We want to create a basic GUI calling the ContentAgentUI.. | |
| # The default flow should be to show the "Wake Endpoint" button | |
| # If the end point is ready, don't show it. | |
| ui = ContentAgentUI( | |
| endpoint_uri=uri, | |
| is_healthy=ok, | |
| health_message=msg, | |
| agent_initializer=initialize_agent, | |
| ) | |
| ui.launch() | |
| # Initialize and run the agent | |
| #agent = initialize_agent(endpoint_uri) | |
| # Create an instance of the ContentAgentUI class | |
| #ui = ContentAgentUI() | |
| #ui.pass_through_agent(agent) # Pass through the agent | |
| if __name__ == "__main__": | |
| main() | |