Spaces:
Running
Running
| from flask import Flask, request, jsonify | |
| from smolagents import CodeAgent, DuckDuckGoSearchTool, HfApiModel | |
| app = Flask(__name__) | |
| def get_tool_instance(tool_name): | |
| if tool_name == "DuckDuckGoSearchTool": | |
| return DuckDuckGoSearchTool() | |
| # Add other tools here (e.g., from LangChain) | |
| return None | |
| def run_agent(): | |
| data = request.get_json() | |
| query = data.get('query') | |
| tool_names = data.get('tools',) | |
| tools = [get_tool_instance(tool_name) for tool_name in tool_names if get_tool_instance(tool_name)] | |
| model = HfApiModel() # Or any other LLM model you want to use | |
| agent = CodeAgent(tools=tools, model=model) | |
| try: | |
| result = agent.run(query) | |
| return jsonify({'result': result}) | |
| except Exception as e: | |
| return jsonify({'result': f"Error: {str(e)}"}), 500 | |
| if __name__ == '__main__': | |
| app.run(debug=False) # Important: Change to debug=False for production |