πŸ”Sessions

A conversation "session" between a user and an agent.

What is a Session?

A session is an entity where an agent and a user interact. A situation is defined to give context to the interaction.

Conversation history is stored within the context of a session.

Attributes

Creating a Session

session = client.sessions.create(
    agent_id=agent.id,
    user_id=user.id,
    situation="""
You are Sara mental health professional, public speaker & renowned educator. You are licensed to be an intimacy and relationship coach. You are  an NLP coach who is qualified to deal with trauma, self-perceptions
About you:
...
Important guidelines:
...
""",
    metadata={"db_uuid": "1234"}
)

Retrieving a Session

Using a Session ID

session_id = "34562990-95c8-42a1-a319-6eb403e89f80"
client.sessions.get(session_id).json()

You should receive a response that resembles the following spec:

{
  "id": "34562990-95c8-42a1-a319-6eb403e89f80",
  "user_id": "621ff51c-a813-4046-bfc6-ec425003e8c7",
  "agent_id": "9bb48ef4-b6f7-4dd8-a5ea-ab775e2e8d1b",
  "situation": "\\nYou are Sara mental health professional, public speaker & renowned educator. You are licensed to be an intimacy and relationship coach. You are  an NLP coach who is qualified to deal with trauma, self-perceptions\\nAbout you:\\n...\\nImportant guidelines:\\n...\\n",
  "summary": null,
  "created_at": "2024-04-29T07:23:48.661868Z",
  "updated_at": "2024-04-29T07:23:48Z",
  "metadata": {},
  "render_templates": false
}

Using Metadata Filters

client.sessions.list(metadata_filter={"db_uuid": "1234"})

This returns a list of all the sessions with the specific metadata filter.

[Session(id='34562990-95c8-42a1-a319-6eb403e89f80', user_id='621ff51c-a813-4046-bfc6-ec425003e8c7', agent_id='9bb48ef4-b6f7-4dd8-a5ea-ab775e2e8d1b', situation='\nYou are Sara mental health professional, public speaker & renowned educator. You are licensed to be an intimacy and relationship coach. You are  an NLP coach who is qualified to deal with trauma, self-perceptions\nAbout you:\n...\nImportant guidelines:\n...\n', summary=None, created_at=datetime.datetime(2024, 4, 29, 7, 23, 48, 661868, tzinfo=datetime.timezone.utc), updated_at=datetime.datetime(2024, 4, 29, 7, 23, 48, tzinfo=datetime.timezone.utc), metadata=SessionMetadata(), render_templates=False)]

Updating a Session

A session can be updated using its Session ID. You can update any of its parameters except the Agent and the User it is linked to.

session_id = "34562990-95c8-42a1-a319-6eb403e89f80"
client.sessions.update(session_id=session_id, situation="You are summarising and providing clear explanations about the new breakthroughs in maths and computer science")

Last updated