|
@@ -0,0 +1,47 @@
|
|
|
|
|
+from langchain.tools import tool
|
|
|
|
|
+from .base_tool import call_csharp_api, get_tool_prompt
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+def get_mtrl_saleprice_default_config():
|
|
|
|
|
+ """get_mtrl_saleprice 工具的默认配置"""
|
|
|
|
|
+ return {
|
|
|
|
|
+ "get_mtrl_saleprice": {
|
|
|
|
|
+ "基础描述": "获取指定时间范围的销售金额,按月汇总",
|
|
|
|
|
+ "入参说明": {
|
|
|
|
|
+ "backend_url": "后端API地址",
|
|
|
|
|
+ "token": "认证令牌",
|
|
|
|
|
+ "mtrlname": "物料名称 或 物料编码, 支持模糊查询",
|
|
|
|
|
+ },
|
|
|
|
|
+ "返回值说明": {
|
|
|
|
|
+ "格式": "一个包含物料价格的字符串",
|
|
|
|
|
+ },
|
|
|
|
|
+ "输出格式要求": [
|
|
|
|
|
+ "以表格输出",
|
|
|
|
|
+ "币种、物料编码、物料名称:若所有行该列值完全一致,则整列隐藏",
|
|
|
|
|
+ "辅助单位,含税价辅助单位,转换率,数量区间:若所有行该列值为初始值(如'',0),则整列隐藏",
|
|
|
|
|
+ "其他列原样显示",
|
|
|
|
|
+ ],
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+tool_description = get_tool_prompt(
|
|
|
|
|
+ "get_mtrl_saleprice", get_mtrl_saleprice_default_config()
|
|
|
|
|
+)
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+def get_mtrl_saleprice_func(backend_url: str, token: str, mtrlname: str) -> str:
|
|
|
|
|
+ """实际的函数实现"""
|
|
|
|
|
+ print(f"正在获取物料{mtrlname}的价格")
|
|
|
|
|
+
|
|
|
|
|
+ return call_csharp_api(
|
|
|
|
|
+ backend_url,
|
|
|
|
|
+ token,
|
|
|
|
|
+ "price_data_ai",
|
|
|
|
|
+ "get_mtrl_saleprice",
|
|
|
|
|
+ {"arg_mtrlname": mtrlname},
|
|
|
|
|
+ )
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+get_mtrl_saleprice_func.__doc__ = tool_description
|
|
|
|
|
+get_mtrl_saleprice = tool(get_mtrl_saleprice_func)
|