We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 76d637d commit e486b3aCopy full SHA for e486b3a
1 file changed
src/agents/util/_transforms.py
@@ -1,11 +1,21 @@
1
import re
2
3
+from ..logger import logger
4
+
5
6
def transform_string_function_style(name: str) -> str:
7
# Replace spaces with underscores
8
name = name.replace(" ", "_")
9
10
# Replace non-alphanumeric characters with underscores
- name = re.sub(r"[^a-zA-Z0-9]", "_", name)
11
+ transformed_name = re.sub(r"[^a-zA-Z0-9_]", "_", name)
12
13
+ if transformed_name != name:
14
+ final_name = transformed_name.lower()
15
+ logger.warning(
16
+ f"Tool name {name!r} contains invalid characters for function calling and has been "
17
+ f"transformed to {final_name!r}. Please use only letters, digits, and underscores "
18
+ "to avoid potential naming conflicts."
19
+ )
20
- return name.lower()
21
+ return transformed_name.lower()
0 commit comments