<SOURCE_TEXT>
SkyAGI:大语言模型中新兴的人类行为模拟能力
https://github.com/litanlitudan/skyagi/assets/4970420/a584b364-e659-476d-a884-932b3c04df61
SkyAGI
是一个 Python 包,展示了大语言模型在模拟可信人类行为方面的新兴能力。
具体来说,SkyAGI
实现了生成型代理的理念,并提供了一个角色扮演游戏,带来了非常有趣的用户体验。
与之前基于 AI 的 NPC 系统不同,SkyAGI
的 NPC 能生成非常逼真的人类反应。
这个演示中的有趣观察显示了在许多方面重新思考游戏开发的巨大潜力,例如 NPC 剧本编写。
为展示这一点,SkyAGI
提供了《生活大爆炸》和《复仇者联盟》中的示例角色作为起点。
用户还可以通过创建类似 customized_character.json 的配置 JSON 文件定义自定义角色。
有关有趣观察的详细信息,请参阅演示中的有趣观察部分。
快速开始
安装
pip install --upgrade skyagi
或者
make install
运行方式
export OPENAI_API_KEY="..."
skyagi
# 或者
OPENAI_API_KEY="..." skyagi
例如,如果 OpenAI 密钥是 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
,则具体命令如下
# 确保令牌周围没有引号
export OPENAI_API_KEY=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
skyagi
# 或者
OPENAI_API_KEY=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 skyagi
要使用示例代理配置,请从这里下载:https://github.com/litanlitudan/skyagi/tree/main/examples (pip 安装不包含代理配置)
一个示例代理配置(Sheldon)大致如下:
{
"name": "Sheldon",
"age": 27,
"personality": "聪明、死板、社交能力欠缺、古怪、自负。",
"memories": [
"Sheldon 是一名在加州理工学院工作的理论物理学家。",
"Sheldon 拥有惊人的记忆力和超高的智商,但社交能力和理解讽刺的能力很差。",
...
"敲门,敲门,敲门,Penny - 这是 Sheldon 去 Penny 公寓时特有的敲门方式,他会重复三次。",
"Bazinga! - 这是 Sheldon 的口头禅,表示他在开玩笑或捉弄别人。"
],
"current_status": "Sheldon 正在芝士蛋糕工厂"
}
演示中的有趣观察
这是使用《生活大爆炸》示例进行实时演示的截图。 从对话中,我们可以观察到三个在以往系统中不常见的有趣点:
- Leonard 记得 Penny 曾让他劝 Sheldon 去远足,这表明代理具有某种记忆能力。
- 在 Sheldon 对他耳语后,Leonard 改变了主意,甚至试图说服 Penny 加入科学研究,这表明即使没有人类干预,代理也在故事中取得了有意义的进展。
- 所有的回应都非常像人类。作为用户,很难判断回应背后是否真的是 AI。
参考文献
- https://arxiv.org/abs/2304.03442
- https://python.langchain.com/en/latest/use_cases/agent_simulations/characters.html#create-a-generative-character
</SOURCE_TEXT>