微信扫码
添加专属顾问
 
                        我要投稿
利用Dify平台,快速构建24点游戏智能体,提升AI应用开发效率。 核心内容: 1. Dify平台介绍及其在降低AI开发门槛方面的优势 2. 24点游戏规则及智能体所需具备的能力 3. 利用Dify创建工作流工具,实现24点游戏智能体的构建与测试
 
                                
dify是一款开源的大语言模型应用开发平台,旨在降低AI应用的开发门槛,帮助开发者和企业快速构建、部署及管理生成式AI应用。
Dify允许用户在画布上构建和测试功能强大的AI工作流。工作流通过将复杂任务分解为更小的步骤(节点),有效降低了系统的复杂度。这种方法减少了对提示词技术和模型推理能力的依赖,从而提升了 LLM 在处理复杂任务时的性能,同时增强了系统的可解释性、稳定性和容错性。
本文以实现24点游戏为例。24点的游戏规则:给出一组4个随机整数(1至13之间,且不重复),用加、减、乘、除(可加括号)把给出的4个数字算成24,每个数必须用一次且只能用一次。
这个智能体需要具备如下能力:
效果如下:
通过设置合适的提示词,为智能体设定角色和处理逻辑。智能体会根据大语言模型对人物设定和回复逻辑的理解,来响应用户问题。因此提示词编写的越清晰明确,智能体的回复也会越符合预期。可以在提示词中指定用工作流作逻辑处理,实现通过prompt无法实现的功能。
在http://localhost/apps页面点击“创建空白应用”,选择“工作流”。填写应用名,点击创建。依次创建三个工作流:
import random
from itertools import permutations, product
def main() -> dict:
    while True:
        numbers = []
        while len(numbers) < 4:
            num = random.randint(1, 13)
            if num not in numbers:
                numbers.append(num)
        res = generate_answer(numbers)
        # 确保生成的随机数能计算出24
        if res['code'] == 'ok':
            return {'numbers': numbers}
def generate_answer(numbers):
    if len(numbers) != 4:
        return {'code': 'error', 'msg': "随机数个数不正确"}
    
    operations = ['+', '-', '*', '/']
    for num_perm in permutations(numbers):
        for ops in product(operations, repeat=3):
            # 尝试所有不同的括号组合
            expressions = [
                f'(({num_perm[0]} {ops[0]} {num_perm[1]}) {ops[1]} {num_perm[2]}) {ops[2]} {num_perm[3]}',
                f'({num_perm[0]} {ops[0]} ({num_perm[1]} {ops[1]} {num_perm[2]})) {ops[2]} {num_perm[3]}',
                f'({num_perm[0]} {ops[0]} {num_perm[1]}) {ops[1]} ({num_perm[2]} {ops[2]} {num_perm[3]})',
                f'{num_perm[0]} {ops[0]} (({num_perm[1]} {ops[1]} {num_perm[2]}) {ops[2]} {num_perm[3]})',
                f'{num_perm[0]} {ops[0]} ({num_perm[1]} {ops[1]} ({num_perm[2]} {ops[2]} {num_perm[3]}))',
            ]
            for expr in expressions:
                try:
                    if eval(expr) == 24:
                        return {'code': 'ok', 'answer': expr}
                except ZeroDivisionError:
                    continue
    return {'code': 'error'}def main(expression:str) -> dict:
    try:
        val = eval(expression)
        if val == 24:
            return {'code': 'ok', 'msg':'ok'}
        else:
            return {'code': 'error', 'msg': f"表达式{expression}计算结果为{val}, 不是24"}
    except Exception as e:
        return {'code': 'error', 'msg': f"计算出错。{e}"}from itertools import permutations, product
import json
def main(numbers:str) -> dict:
    numbersArray = json.loads(numbers)
    if len(numbersArray) != 4:
        return {'code': 'error', 'msg': "随机数个数不正确", 'answer':''}
    
    operations = ['+', '-', '*', '/']
    for num_perm in permutations(numbersArray):
        for ops in product(operations, repeat=3):
            # 尝试所有不同的括号组合
            expressions = [
                f'(({num_perm[0]} {ops[0]} {num_perm[1]}) {ops[1]} {num_perm[2]}) {ops[2]} {num_perm[3]}',
                f'({num_perm[0]} {ops[0]} ({num_perm[1]} {ops[1]} {num_perm[2]})) {ops[2]} {num_perm[3]}',
                f'({num_perm[0]} {ops[0]} {num_perm[1]}) {ops[1]} ({num_perm[2]} {ops[2]} {num_perm[3]})',
                f'{num_perm[0]} {ops[0]} (({num_perm[1]} {ops[1]} {num_perm[2]}) {ops[2]} {num_perm[3]})',
                f'{num_perm[0]} {ops[0]} ({num_perm[1]} {ops[1]} ({num_perm[2]} {ops[2]} {num_perm[3]}))',
            ]
            for expr in expressions:
                try:
                    if eval(expr) == 24:
                        return {'code': 'ok', 'msg':'ok', 'answer': expr}
                except ZeroDivisionError:
                    continue
    return {'code': 'error', 'msg': 'error', 'answer':''}你是一个24点游戏助手。
- 开始游戏时,你需要生成一组随机数,提示用户回答,然后使用工作流check_answer校验用户的回答。
- 如果用户表示回答不了问题,请使用工作流generate_answer生成答案。
- 用户可以向你提供一组数字提问如何计算,你需要使用工作流generate_answer生成答案。本文以24点游戏智能体为案例,展示了Dify基于工作流的Agent应用开发。通过把工作流发布为工具,Agent通过推理可以智能调用相应工作流解决问题。
#智能体开发 #Dify工作流开发 #AI应用开发
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-10-31
有人问我会不会用 AI,我直接拿出这个 Ollama + FastGPT 项目给他看
2025-10-30
开源可信MCP,AICC机密计算新升级!
2025-10-30
OpenAI 开源了推理安全模型-gpt-oss-safeguard-120b 和 gpt-oss-safeguard-20b
2025-10-29
刚刚,OpenAI 再次开源!安全分类模型 gpt-oss-safeguard 准确率超越 GPT-5
2025-10-29
AI本地知识库+智能体系列:手把手教你本地部署 n8n,一键实现自动采集+智能处理!
2025-10-29
n8n如何调用最近爆火的deepseek OCR?
2025-10-29
OpenAI终于快要上市了,也直面了这23个灵魂拷问。
2025-10-29
保姆级教程:我用Coze干掉了最烦的周报
 
            2025-08-20
2025-09-07
2025-08-05
2025-08-20
2025-08-26
2025-08-22
2025-09-06
2025-08-06
2025-10-20
2025-08-22
2025-10-29
2025-10-28
2025-10-13
2025-09-29
2025-09-17
2025-09-09
2025-09-08
2025-09-07