【扣子Coze 智能体案例四】五行八卦占卜智能体
目录
一、意图识别
二、时间格式转换
三、八字转换
四、八字提取
五、八字提取2
六、数据汇总
七、统计五行占比
八、雷达图生成
九、表格生成
十、AI占卜
十一、结束节点
一、意图识别
用户输入的信息包含各种时间格式的年月日时
用户输入的信息包含天干地支八字
二、时间格式转换
三、八字转换
四、八字提取
请将输入的信息中的八字抽取出来,仅保留八字信息,不要输出其他任何内容
{{input}}
五、八字提取2
请将输入的信息中的八字抽取出来,仅保留八字信息,不要输出其他任何内容
{{input}}
六、数据汇总
# 在这里,您可以通过 ‘args’ 获取节点中的输入变量,并通过 'ret' 输出结果
# 'args' 和 'ret' 已经被正确地注入到环境中
# 下面是一个示例,首先获取节点的全部输入参数params,其次获取其中参数名为‘input’的值:
# params = args.params;
# input = params.input;
# 下面是一个示例,输出一个包含多种数据类型的 'ret' 对象:
# ret: Output = { "name": ‘小明’, "hobbies": [“看书”, “旅游”] };async def main(args: Args) -> Output:params = args.paramsinput1 = params['input1']input2 = params['input2']if input1:res = input1else:res = input2# 构建输出对象ret: Output = {"bazi": res,}return ret
七、统计五行占比
# 在这里,您可以通过 ‘args’ 获取节点中的输入变量,并通过 'ret' 输出结果
# 'args' 和 'ret' 已经被正确地注入到环境中
# 下面是一个示例,首先获取节点的全部输入参数params,其次获取其中参数名为‘input’的值:
# params = args.params;
# input = params.input;
# 下面是一个示例,输出一个包含多种数据类型的 'ret' 对象:
# ret: Output = { "name": ‘小明’, "hobbies": [“看书”, “旅游”] };def parser(data):map1 = {"gold": "金","wood": "木","water": "水","fire": "火","soil": "土",}map2 = {"gold": ["庚", "辛", "申", "酉", "丑"],"wood": ["甲", "乙", "寅", "卯", "未"],"water": ["壬", "癸", "子", "亥", "辰"],"fire": ["丙", "丁", "巳", "午", "戌"],"soil": ["戊", "己", "丑", "辰", "未", "戌"],}user_wuxing_info = {"gold": [],"wood": [],"water": [],"fire": [],"soil": [],}for wuxing_item in data:if wuxing_item == " ":continuefor key, value in map2.items():if wuxing_item in value:user_wuxing_info[key].append(wuxing_item)user_wuxing_desc = ""user_wuxing_count = {"gold": 0,"wood": 0,"water": 0,"fire": 0,"soil": 0,}for key, value in user_wuxing_info.items():if value:user_wuxing_desc += map1[key] + f":{','.join(value)} ({len(value)})\n"else:user_wuxing_desc += map1[key] + f":(0)\n"user_wuxing_count[key] = len(value)user_wuxing_desc += "注:辰戌丑未有双重五行属性。"return user_wuxing_count, user_wuxing_descasync def main(args: Args) -> Output:params = args.paramsbazi = params["bazi"]user_wuxing_count, user_wuxing_desc = parser(bazi)# 构建输出对象ret: Output = {"user_wuxing_count": user_wuxing_count,"user_wuxing_desc": user_wuxing_desc}return ret
八、雷达图生成
请按照输入的内容,将英文翻译为对应的金木水火土中文,并按照数据生成雷达图,如果有空值替换为0,四舍五入保留整数,数值上限与最大值相同, 禁止返回除图片以外的内容
{{input}}
九、表格生成
请按照用户输入的天干地支八字按照如下格式生成三行四列的表格:
第一行为表头:年柱,月柱,日柱,时柱
第二行为天干
第三行为地支仅返回表格,禁止返回其他内容
{{input}}
十、AI占卜
系统提示词
结合输入的数据,如果有空值当做0,如果有知识库,优先采用知识库的内容进行回答,仅返回建议内容,禁止返回翻译过程和数据转换过程的任何信息,仅返回建议
用户提示词
将英文按照金木水火土翻译后,对用户的五行属性进行分析,结合性格、行为给出生活化的五行平衡参考建议,字数200字以内
{{input}}
十一、结束节点
# 您好,欢迎使用[AI五行平衡助手]!
我们期待您能从古老的东方智慧中得到启示。
通过平衡五行、了解优势和不足、找到成长的方向,从自身开始改变,在生活中进行“知行合一”的实修。
# 1、您的五行结构如下 :
{{table}}
# 2、您的五行元素分析:
{{desc}}
# 3、您的五行平衡图:
{{radio}}
# 专业五行平衡思路:1、无寄有、有生无;
2、顺应时空有妙法;
3、流通才是真平衡;# 4、AI给您的建议
注:本报告中的【AI建议】仅供拓展和延伸,可能会打开你的思路。但AI的判断来自大数据,网络上的体系和判断标准多样,缺乏一致性,存在偏差和误区。
# [AI给您的五行平衡参考建议]:
{{ai_suggest}}
感谢您使用