What conversation dictionary keys exist (that we can use)?

When using ChatML v0 we have access to the “role” and “content” keys

We’re all familiar with them I’m sure.

[{"role":"user", "content":"hello world"}]

Over summer I realised we had access to a “name” key

[{"role":"system", "name":"prime_directive","content": "you're just a pretty cool guy"}]

In the way I’ve been using the “name” key i’ve found it very useful for encoding additional metadata into a dictionary entry. Describing a system prompt as “prime directive” or differentiating between different entries when they come from different inputs/devices.

[{"role":"system", "name":"prime_directive","content": f"you're just a pretty cool guy with access to some tools {tool_list}"},
{"role":"system","name":"user_uploaded_file","content":"/file_location"},
{"role":"user", "name":"from_desktop","content":"pass the file through ocr"},]

with the release of assistants and deeper integration of function calling as “tools” are there new “tool”:“tool_name” keys? has anyone discovered other keys/have interesting ways they use currently available ones?

surround yourself with high-perplexity people

-vidalion

Hi and welcome to the Developer Forum!

The name property was developed to allow commercial users to keep track of which user was making the prompts, this could then be used to address problems with usage or content moderation.