File size: 1,721 Bytes
e0bcf85
9b5b26a
 
 
c19d193
6aae614
8fe992b
9b5b26a
 
09fde55
 
 
 
 
 
9b5b26a
09fde55
 
 
9b5b26a
09fde55
 
9b5b26a
09fde55
 
9b5b26a
 
09fde55
 
 
9b5b26a
09fde55
9b5b26a
09fde55
 
 
 
 
 
 
8c01ffb
 
6aae614
e0bcf85
157453d
 
 
 
13d500a
8c01ffb
 
9b5b26a
 
8c01ffb
157453d
861422e
 
9b5b26a
8c01ffb
8fe992b
09fde55
8c01ffb
 
 
 
 
 
157453d
8fe992b
 
9b5b26a
8c01ffb
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
from smolagents import CodeAgent, DuckDuckGoSearchTool, HfApiModel, load_tool, tool
import datetime
import requests
import pytz
import yaml
from tools.final_answer import FinalAnswerTool

from Gradio_UI import GradioUI

# 两个适合练习 Agent Tool 机制的简单工具

from smolagents import tool
import random


@tool
def add_numbers(a: int, b: int) -> int:
    """
    Add two integers together.
    Args:
        a: first integer
        b: second integer
    """
    return a + b


@tool
def random_motivation(name: str) -> str:
    """
    Return a random motivational message for the user.
    Args:
        name: user's name
    """
    messages = [
        f"{name}, keep going — progress compounds.",
        f"{name}, consistency beats intensity.",
        f"{name}, today is a good day to build something.",
        f"{name}, small steps still move you forward.",
    ]
    return random.choice(messages)


final_answer = FinalAnswerTool()
model = HfApiModel(
    max_tokens=2096,
    temperature=0.5,
    model_id='Qwen/Qwen2.5-Coder-32B-Instruct',
    custom_role_conversions=None,
)


# Import tool from Hub
image_generation_tool = load_tool("agents-course/text-to-image", trust_remote_code=True)

# Load system prompt from prompt.yaml file
with open("prompts.yaml", 'r') as stream:
    prompt_templates = yaml.safe_load(stream)
    
agent = CodeAgent(
    model=model,
    tools=[final_answer,add_numbers,random_motivation], # add your tools here (don't remove final_answer)
    max_steps=6,
    verbosity_level=1,
    grammar=None,
    planning_interval=None,
    name=None,
    description=None,
    prompt_templates=prompt_templates # Pass system prompt to CodeAgent
)


GradioUI(agent).launch()