顾文辉 發表於 2025-4-25 14:48:00

Day08:五行八卦智能体开发

<h1 id="五行八卦智能体">五行八卦智能体</h1>
<h2 id="1-意识识别">1 意识识别</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144753663-1308341894.png" alt="image-20250420下午72623697" loading="lazy"></p>
<pre><code class="language-apl">用户输入的信息包含各种时间格式的年月日时
用户输入的信息包含天干地支八字
</code></pre>
<h2 id="2-时间格式转换">2 时间格式转换</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144754190-643315507.png" alt="image-20250420下午72743543" loading="lazy"></p>
<h2 id="3-八字转换">3 八字转换</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144754571-747487120.png" alt="image-20250420下午72910571" loading="lazy"></p>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144754981-358100677.png" alt="image-20250420下午73021544" loading="lazy"></p>
<h2 id="4-八字提取">4 八字提取</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144755326-2108214820.png" alt="image-20250420下午73201888" loading="lazy"></p>
<pre><code class="language-apl">请将输入的信息中的八字抽取出来,仅保留八字信息,不要输出其他任何内容
{{input}}
</code></pre>
<h2 id="5-八字提取2">5 八字提取2</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144755684-339636064.png" alt="image-20250420下午73334343" loading="lazy"></p>
<pre><code class="language-apl">请将输入的信息中的八字抽取出来,仅保留八字信息,不要输出其他任何内容
{{input}}
</code></pre>
<h2 id="6-数据汇总">6 数据汇总</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144755988-1036403270.png" alt="image-20250420下午73700315" loading="lazy"></p>
<pre><code class="language-python"># 在这里,您可以通过 ‘args’获取节点中的输入变量,并通过 'ret' 输出结果
# 'args' 和 'ret' 已经被正确地注入到环境中
# 下面是一个示例,首先获取节点的全部输入参数params,其次获取其中参数名为‘input’的值:
# params = args.params;
# input = params.input;
# 下面是一个示例,输出一个包含多种数据类型的 'ret' 对象:
# ret: Output ={ "name": ‘小明’, "hobbies": [“看书”, “旅游”] };

async def main(args: Args) -&gt; Output:
    params = args.params
    input1 = params['input1']
    input2 = params['input2']
    if input1:
      res = input1
    else:
      res = input2
    # 构建输出对象
    ret: Output = {
      "bazi": res,
    }
    return ret
</code></pre>
<h2 id="7-统计五行占比">7 统计五行占比</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144756283-2044443281.png" alt="image-20250420下午74752660" loading="lazy"></p>
<pre><code class="language-python"># 在这里,您可以通过 ‘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 == " ":
            continue
      for key, value in map2.items():
            if wuxing_item in value:
                user_wuxing_info.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 + f":{','.join(value)} ({len(value)})\n"
      else:
            user_wuxing_desc += map1 + f":(0)\n"
      user_wuxing_count = len(value)
    user_wuxing_desc += "注:辰戌丑未有双重五行属性。"
    return user_wuxing_count, user_wuxing_desc

async def main(args: Args) -&gt; Output:
    params = args.params

    bazi = 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
</code></pre>
<h2 id="8-雷达图生成">8 雷达图生成</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144756555-47393612.png" alt="image-20250420下午74955271" loading="lazy"></p>
<pre><code class="language-apl">请按照输入的内容,将英文翻译为对应的金木水火土中文,并按照数据生成雷达图,如果有空值替换为0,四舍五入保留整数,数值上限与最大值相同, 禁止返回除图片以外的内容
{{input}}
</code></pre>
<h2 id="9-表格生成">9 表格生成</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144756827-1852091821.png" alt="image-20250420下午75217970" loading="lazy"></p>
<pre><code class="language-apl">请按照用户输入的天干地支八字按照如下格式生成三行四列的表格:
第一行为表头:年柱,月柱,日柱,时柱
第二行为天干
第三行为地支

仅返回表格,禁止返回其他内容
{{input}}
</code></pre>
<h2 id="10-ai占卜">10 AI占卜</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144757084-382752676.png" alt="image-20250420下午75445819" loading="lazy"></p>
<p>系统提示词</p>
<pre><code class="language-apl">结合输入的数据,如果有空值当做0,如果有知识库,优先采用知识库的内容进行回答,仅返回建议内容,禁止返回翻译过程和数据转换过程的任何信息,仅返回建议
</code></pre>
<p>用户提示词</p>
<pre><code class="language-apl">将英文按照金木水火土翻译后,对用户的五行属性进行分析,结合性格、行为给出生活化的五行平衡参考建议,字数200字以内
{{input}}
</code></pre>
<h2 id="11-结束节点">11 结束节点</h2>
<p><img src="https://img2024.cnblogs.com/other/2867340/202504/2867340-20250425144757341-620901333.png" alt="image-20250420下午75641287" loading="lazy"></p>
<pre><code class="language-apl"># 您好,欢迎使用!

我们期待您能从古老的东方智慧中得到启示。

通过平衡五行、了解优势和不足、找到成长的方向,从自身开始改变,在生活中进行“知行合一”的实修。

# 1、您的五行结构如下 :

{{table}}

# 2、您的五行元素分析:

{{desc}}

# 3、您的五行平衡图:

{{radio}}


# 专业五行平衡思路:

1、无寄有、有生无;
2、顺应时空有妙法;
3、流通才是真平衡;

# 4、AI给您的建议

注:本报告中的【AI建议】仅供拓展和延伸,可能会打开你的思路。但AI的判断来自大数据,网络上的体系和判断标准多样,缺乏一致性,存在偏差和误区。

# :

{{ai_suggest}}

感谢您使用

</code></pre><br><br>
来源:https://www.cnblogs.com/fuminer/p/18846712
頁: [1]
查看完整版本: Day08:五行八卦智能体开发