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 |