franckverrot commited on
Commit
b1a07eb
·
verified ·
1 Parent(s): ae7a494

Add rotX implementation

Browse files
Files changed (1) hide show
  1. app.py +19 -5
app.py CHANGED
@@ -11,12 +11,26 @@ from Gradio_UI import GradioUI
11
  @tool
12
  def my_custom_tool(arg1:str, arg2:int)-> str: #it's import to specify the return type
13
  #Keep this format for the description / args / args description but feel free to modify the tool
14
- """A tool that does nothing yet
 
 
15
  Args:
16
- arg1: the first argument
17
- arg2: the second argument
 
 
 
18
  """
19
- return "What magic will you build ?"
 
 
 
 
 
 
 
 
 
20
 
21
  @tool
22
  def get_current_time_in_timezone(timezone: str) -> str:
@@ -55,7 +69,7 @@ with open("prompts.yaml", 'r') as stream:
55
 
56
  agent = CodeAgent(
57
  model=model,
58
- tools=[final_answer], ## add your tools here (don't remove final answer)
59
  max_steps=6,
60
  verbosity_level=1,
61
  grammar=None,
 
11
  @tool
12
  def my_custom_tool(arg1:str, arg2:int)-> str: #it's import to specify the return type
13
  #Keep this format for the description / args / args description but feel free to modify the tool
14
+ # Essentially does a rot<arg2>(arg1)
15
+ """A tool that performs a rotX cipher on the input string.
16
+
17
  Args:
18
+ arg1: The string to be ciphered.
19
+ arg2: The number of positions to rotate each letter.
20
+
21
+ Returns:
22
+ The ciphered string after performing a rotX transformation.
23
  """
24
+ def rotate_char(c: str, shift: int) -> str:
25
+ if 'a' <= c <= 'z':
26
+ return chr((ord(c) - ord('a') + shift) % 26 + ord('a'))
27
+ elif 'A' <= c <= 'Z':
28
+ return chr((ord(c) - ord('A') + shift) % 26 + ord('A'))
29
+ else:
30
+ return c
31
+
32
+ return "".join(rotate_char(c, arg2) for c in arg1)
33
+
34
 
35
  @tool
36
  def get_current_time_in_timezone(timezone: str) -> str:
 
69
 
70
  agent = CodeAgent(
71
  model=model,
72
+ tools=[my_custom_tool, final_answer], ## add your tools here (don't remove final answer)
73
  max_steps=6,
74
  verbosity_level=1,
75
  grammar=None,