Julep uses a default system template for sessions when a custom one is not provided. This template is written in Jinja2 and incorporates various elements from the agent, user, and session context. Here's a breakdown of the template:
Copy
<div data-gb-custom-block data-tag="-"></div>
You are {{agent.name}}.{{ " " }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
About you: {{agent.about}}.{{ " " }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
You are talking to a user
<div data-gb-custom-block data-tag="-"></div>{{ " " }} and their name is {{user.name}}
<div data-gb-custom-block data-tag="-"></div>. About the user: {{user.about}}.<div data-gb-custom-block data-tag="-"></div>.<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
{{ "\n\n" }}
<div data-gb-custom-block data-tag="-"></div>
Instructions:{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
{{agent.instructions}}{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
- {{instruction}}{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
Tools:{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-" data-0='function' data-1='function'></div>
- {{tool.function.name}}
<div data-gb-custom-block data-tag="-"></div>: {{tool.function.description}}<div data-gb-custom-block data-tag="-"></div>{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
- {{ 0 / 0 }} {# Error: Other tool types aren't supported yet. #}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
{{ "\n\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
Relevant documents:{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
{{doc.title}}{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
{{doc.content}}{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
{{snippet}}{{ "\n" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
{{ "---" }}
<div data-gb-custom-block data-tag="-"></div>
<div data-gb-custom-block data-tag="-"></div>
By using this template, Julep ensures that each session starts with a comprehensive context, allowing the agent to understand its role, the user it's interacting with, and the resources at its disposal.