背景介绍
第一次接触海龟汤时,我还以为这是某种美食烹饪挑战,直到朋友抛出第一个谜题 ——'一个人走进酒吧,要了一杯水,酒保却掏出一把枪对准他,可这个人不仅没害怕,反而说了声谢谢离开了',才惊觉这是场烧脑的逻辑游戏。海龟汤,学名情境猜谜,玩家只能通过提问获取'是''否'或'无关'的回答,一步步拼凑出汤底背后的完整故事。这种用有限线索破解无限想象的过程,就像在黑暗中摸索开关,每次提问都是试探,当真相突然亮起时,那种恍然大悟的快感让人上瘾。
作为计算机专业的学生,在完成课程设计时,我常思考如何将文本逻辑交互应用于实际项目。既然海龟汤的本质是文本逻辑交互,为什么不做一款属于自己的海龟汤游戏?最初的念头源于对解谜的热爱。深夜和朋友玩海龟汤时,看着大家为了一个谜题争论到面红耳赤,最后被反转的汤底惊得笑出眼泪,我意识到这种互动游戏的魅力。市面上虽然有不少海龟汤游戏,但要么谜题老套,要么交互不够灵活。我想利用大模型 API 的高反应速度和灵活度,打造一款能实时生成新谜题、根据玩家提问动态调整线索的游戏,让每场推理都充满新鲜感。
技术选型
在开发课程设计和参与项目实践时,API 的选择直接影响着开发效率和最终成果。经过对比,选择支持多种编程语言和调用方式的通用大模型 API,无论是 Python、Java 还是其他语言,都能轻松适配。接口设计人性化,配合详细的文档和示例代码,能快速上手,大大节省了学习成本和开发时间。
对于项目开发来说,充足的调用额度是常态需求。API 提供的调用额度十分慷慨,完全能满足日常学习和项目实践的需求,不用担心因为调用次数不够而中断开发。同时,合理的定价策略也降低了试错成本,让开发者能将更多精力集中在功能实现上。
实现步骤
首先进行 API 的获取以及确认需要调用的模型编号。在模型广场中选择一个模型,复制其名称下方的 AI 模型编号。
然后创建 API Key 并进行复制。
参考 API 调用的官方文档,这里选择 Python 代码进行 AI 的调用,需要将你的 API Key 和要调用的模型名称粘贴进去。
from openai import OpenAI
# 构造 client
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="YOUR_API_BASE_URL",
)
# 流式
stream = True
# 请求
chat_completion = client.chat.completions.create(
model="YOUR_MODEL_ID",
messages=[
{
"role": "user",
"content": "你是谁",
}
],
stream=stream,
)
if stream:
for chunk in chat_completion:
# 打印思维链内容
if hasattr(chunk.choices[0].delta, 'reasoning_content'):
print(f"{chunk.choices[0].delta.reasoning_content}")
# 打印模型最终返回的 content
if (chunk.choices[].delta, ):
chunk.choices[].delta.content != (chunk.choices[].delta.content) != :
(chunk.choices[].delta.content)
:
result = chat_completion.choices[].message.content


