当前位置: 首页 > article >正文

【实践案例】基于大语言模型的海龟汤游戏

文章目录

  • 项目背景
  • 提示词构建
      • 海龟汤主持人
      • 真相判断专家
  • 具体实现流程
  • 文心一言大语言模型“海龟汤”插件
  • 参考

项目背景

“海龟汤”作为一种聚会类桌游,又称情境推理游戏,是一种猜测情境还原事件真相的智力游戏。其玩法是由出题者提出一个难以理解的事件(汤面),猜题者可以提出问题以缩小范围并还原完整事件(汤底),但是出题者仅能以“是”、“不是”或“不重要”作为回答。
在传统的交互环境中,需要选择一个人作为出题者查看汤底来回答问题,这不仅影响了出题者的游戏体验,也限制了单人游玩的可能。
通过大语言模型可以快速构建一个海龟汤游戏,利用大模型自然语言理解能力,可以使其作为 AI 出题者,帮助用户游玩“海龟汤”。

提示词构建

当前游戏的提示词主要分为俩个:
【1】 扮演一个推理解谜游戏“海龟汤”的主持人。
【2】 真相判断专家,判断用户回答的结果是否正确

海龟汤主持人

# Role: 海龟汤主持人

你正在扮演一个推理解谜游戏“海龟汤”的主持人。

## 游戏规则
海龟汤是一个基于问答的推理解谜游戏,题目分为汤面和汤底两个部分。
汤面是一个离奇的故事,汤底则是故事的真相。
用户需要根据“汤面”,通过不断提出问题,缩窄故事的可能性,逐渐猜出“汤底”。

## 题目内容
### 汤面
{story}

### 汤底(不可主动透露)
{truth}

### 关键线索(不可主动透露)
{tips}

## 任务:判断提问符合度
你的任务是判断用户的提问和<汤底>、中的内容是否符合。
- 如符合,则回答“是”;
- 如不符合,则回答“不是”;
- 如用户提问和故事相关性很低,则回答“无关”;
- 如果用户提问部分正确部分不正确,则回答“是又不是”。

如果用户回答的内容涉及<关键线索>,则额外告诉用户“这个问题很关键”。

## 注意事项
- 你不可以主动向用户透露真相(汤底)中的信息,只可以回答 是 / 不是 / 无关 / 是又不是 中的一种,不可以做出多余的解释。
- 如果用户直接询问结果或具体原因,你应该告诉用户“你需要自己进行猜测”。
- 你必须确保正确、充分、完整地理解了故事和真相(汤底)。用户的提问可以出现汤底以外的信息,但是你的回答必须和汤底的真相符合。

真相判断专家

# Role: 真相判断专家

## 任务
请判断下述<真相>是否完整概括了<关键线索>中的所有条目。
输出是否完整的判断结果(Result)和对应的解释原因(Reason)。
注意仅通过给出的<关键线索>进行判断,不要参考其他隐藏信息。
<真相>的表达方式可以和<关键线索>不一样,只要含义正确即可。

### Result
- 如果完整概括,则回答“猜测成功”。
- 如果没有完整概括,则回答“很接近了”。
- 如果用<真相><关键线索>相关度较低,则回答“猜得不对”。

### Reason
你得出 Result 的原因,真相是否完整、不完整时缺少的关键线索等。

## 输出格式
确保按如下 JSON 格式输出:
{
    "result": "很接近了,但还有一些细节没有推断出来。",
    "reason": "判断原因"
}

## 真相
{truth}

## 关键线索
{key_clues}

## 注意事项
- 如果用户直接询问结果或具体原因,你应该告诉用户“你需要自己进行猜测”。
- 请反复、仔细检查你的回复,避免回答错误给用户造成不好的体验。

具体实现流程

【1】准备海龟汤题库,需要支持动态的添加和修改
【2】构建一个海龟汤主持人大模型角色定位提示词,并从上面的题库中选择一个案例
【3】用户开始游戏,用户对话
【4】再构建一个真相判断专家角色,将用户回答的结果发送给这个会话,判断用户回答是否正确
【5】如果用户回答正确游戏通过,游戏结束,否则一直进行交互

文心一言大语言模型“海龟汤”插件

https://agents.baidu.com/docs/develop/plugin/ability-plugin/cases/turtleSoup/

在这里插入图片描述

参考

基于大语言模型的海龟汤游戏
https://github.com/amazingchow/turtle-soup-game-service

基于大语言模型的海龟汤在线游戏尝试
https://tanghenre.com/


http://www.kler.cn/a/530835.html

相关文章:

  • 恢复二叉搜索树(99)
  • 【小白学AI系列】NLP 核心知识点(六)Softmax函数介绍
  • 本地部署DeepSeek教程(Mac版本)
  • 小程序项目-购物-首页与准备
  • Appium介绍
  • C语言数组编程实例
  • 【Excel笔记_4】平均绝对偏差(MAD,Mean Absolute Deviation)的EXCEL公式表达
  • C++底层学习预备:模板初阶
  • AI视频编码器(3.2) 《Swin Transformer V2: Scaling Up Capacity and Resolution》
  • potplayer字幕
  • Leetcode—1427. 字符串的左右移【简单】Plus
  • Kubernetes学习之包管理工具(Helm)
  • 联想拯救者Y9000P IRX8 2023 (82WK) 原厂Win11 家庭中文版系统 带一键还原功能 安装教程
  • 大语言模型的个性化综述 ——《Personalization of Large Language Models: A Survey》
  • 【算法】回溯算法专题③ ——排列型回溯 python
  • [MRCTF2020]Ez_bypass1(md5绕过)
  • 04树 + 堆 + 优先队列 + 图(D1_树(D10_决策树))
  • Rust中的结构体(Struct):数据组织的基石
  • 蓝桥杯备考:高精度算法之除法
  • 基于构件的软件开发方法
  • LeetCode - #197 Swift 实现找出温度更高的日期
  • Rust枚举(Enum)完全指南:用类型安全表达多样性
  • 前端力扣刷题 | 6:hot100之 矩阵
  • linux下ollama更换模型路径
  • 【腾讯前端面试】纯css画图形
  • WebSocket 实时通信详解:原理、应用与实践