This page details how to use ChatSonic's memory functionality in API
ChatSonic can maintain the context of your conversations just like you would with a person. It remembers past questions or comments in your conversation and can easily answer follow-up questions.
Field format
Here is how to use ChatSonic's memory functionality in API
- set
enable_memory
field totrue
- add previous conversations to the
history_data
in the following format
[{
"is_sent": bool,
"message": string
}]
- purpose of
is_sent
field is to flag whethermessage
is a user prompt or ChatSonic response - set
is_sent
totrue
for user prompt - set
is_sent
tofalse
for ChatSonic response
Example
Let's try this with an example
STEP 1
- Let's first ask ChatSonic
Who is the President of the United States?
- since this is the first message,
history_data
is an empty array of objects
// REQUEST BODY
{
"enable_memory": true,
"enable_google_results": true,
"input_text": "Who is the President of the United States?",
"history_data": []
}
// RESPONSE BODY
{
"message": "The 46th and current President of the United States is Joseph R. Biden, Jr., who was sworn in on January 20, 2021.",
"image_urls": null
}
STEP 2
- Now, let's ask
When was he born?
- Ensure to pass the previous prompt and response in the
history_data
field is_sent
is set astrue
for user promptis_sent
is set asfalse
for ChatSonic response
// REQUEST BODY
{
"enable_memory": true,
"enable_google_results": true,
"input_text": "When was he born?",
"history_data": [
{
"is_sent": true,
"message": "Who is the President of the United States?"
},
{
"is_sent": false,
"message": "The 46th and current President of the United States is Joseph R. Biden, Jr., who was sworn in on January 20, 2021."
}
]
}
// RESPONSE BODY
{
"message": "Joseph Robinette Biden Jr. was born on November 20, 1942, in Scranton, Pennsylvania.",
"image_urls": null
}
STEP 3
- Now, let's ask
What is his favorite sports team?
- Ensure to pass the previous prompt and response in the
history_data
field is_sent
is set astrue
for user promptis_sent
is set asfalse
for ChatSonic response
// REQUEST BODY
{
"enable_memory": true,
"enable_google_results": true,
"input_text": "What is his favorite sports team?",
"history_data": [
{
"is_sent": true,
"message": "Who is the President of the United States?"
},
{
"is_sent": false,
"message": "The 46th and current President of the United States is Joseph R. Biden, Jr., who was sworn in on January 20, 2021."
},
{
"is_sent": true,
"message": "When was he born?"
},
{
"is_sent": false,
"message": "Joseph Robinette Biden Jr. was born on November 20, 1942, in Scranton, Pennsylvania."
}
]
}
// RESPONSE BODY
{
"message": "Joe Biden is a Pennsylvania and Delaware native, and he roots for the Philadelphia Eagles. Biden was at Super Bowl LII cheering for his team with his family.",
"image_urls": null
}