File size: 969 Bytes
756c5f6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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

@app.route('/run_agent', methods=['POST'])
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