跳到主要内容

大模型

图标

LLM001.png

功能

与大模型交互

要点

  • 支持指定和设置大模型
  • 支持通过端口动态访问仿真模型内的数据对象
  • 支持指定输出数据格式,以便后续流程建模
  • 支持编辑系统提示词和用户提示词
  • 支持实体种群建模
  • 未来:支持记忆,支持工具调用
提示

运行机制

  • 作为一个流程步,每当Trigger抵达时触发运行,系统将完整信息发送给大模型,大模型返回结果到输出端口,供后续建模使用(以LLM_object_name.output_port_name访问)
  • 发送给大模型的完整信息包括系统提示词用户提示词,系统将输入端口读取到的数据置换用户在提示词中的 {input_port_name} 方式表达,使得发送给大模型的完整信息带有当前仿真环境的最新动态信息
  • 当大模型组件是实体行为流程步时,实体的每个个体访问大模型的的动作是独立异步的,这会使得您感受到更快的运行速度,另一方面也会使该行为在当前Tick的运行完成时间滞后于其他常规流程

设置方法

LLM002.png

选择和设置模型

LLM003.png

  • 下拉菜单中选择你需要的模型底座
  • 确定大模型底座后,如有需要在右侧的模型设置中调整参数,如下图

LLM004.png

  • 目前暂不支持使用工具

输入端口

用于为大模型提供动态模型状态信息,用法类似普通端口

LLM005.png

  • 点击添加按钮增加一行新输入端口的设置
  • 左侧输入框输入端口名称
  • 右侧公式框输入表达式如下左图,或图形建模以状态链连接数据对象,如下右图

输出端口

用于寄存大模型返回的结果,供后续建模使用

LLM008.png

  • 点击添加按钮增加一行新输出端口的设置
  • 左侧下拉菜单指定数据格式如下图

LLM009.png

  • 如果选择了List格式,需要指定元素格式(即列表元素格式需一致且为简单格式)

LLM010.png

  • 右侧命名输入栏输入端口名称

系统提示词

输入框。
通常设定对话的系统性指导,如角色设定、工作方式、行为边界等,在背景中持续起作用。

用户提示词

输入框。
通常是用户向模型发出的自然语言指令或提问,是与模型交互的核心内容。
{input_port_name}是系统提供的特殊语法,系统会用该端口获取的数据置换提示词中相应的部分,例如

LLM011.png

使用技巧

提示词工程的技巧都可以应用在提示词的编写中,此外为提高效率,降低成本你可以:

  • 先确保模型能够正确运行,再聚焦大模型组件的配置
  • 大模型底座够用即可,从小规模开始更明智,如先用GPT-4o mini,再尝试GPT-4o
  • 提示词中的{input_port_name}并不意味着仅提及,因为系统会替换端口获取的数据,这可能导致没必要的LLM Token消耗,所以提示词中的不要出现多次,如有需要可直接提及,例如使用Markdown风格的port_name,这样不消耗额外的Token
  • 当输入端口的数据为Dict等本身带有大括号的数据格式时,提示词中可使用双层表达{{key: Value}}
  • 虽然没有强制要求,但推荐{input_port_name}出现在用户提示词中,而不是系统提示词
  • 如果有多个输出端口,通常需要为大模型描述清楚如何输出

案例

模型案例

两个大模型对象作为玩家,一个作为裁判,运行多局锤子剪刀布游戏

LLM012.png