Threads
caution
This is currently under development.
Overview
Threads
are conversations between an assistant
and the user:
- Users can tweak
model
params andassistant
behavior within each thread. - Users can import and export threads.
- An OpenAI Thread API compatible endpoint at
localhost:1337/v1/threads
.
Folder Structure
- Threads are saved in the
/threads
folder. - Threads are organized by folders, one for each thread, and can be easily zipped, exported, and cleared.
- Thread folders follow the naming:
assistant_id
+thread_created_at
. - Thread folders also contain
messages.jsonl
files. See messages.
janroot/
threads/
assistant_name_unix_timestamp/ # Thread `ID`
thread.json
thread.json
- Each
thread
folder contains athread.json
file, which is a representation of a thread. thread.json
contains metadata and model parameter overrides.- There are no required fields.
Example
Here's a standard example thread.json
for a conversation between the user and the default Jan assistant.
"id": "thread_....", // Defaults to foldername
"object": "thread", // Defaults to "thread"
"title": "funny physics joke", // Defaults to ""
"assistants": [
{
"assistant_id": "jan", // Defaults to "jan"
"model": { // Defaults to the currently active model (can be changed before thread is begun)
"id": "...",
"settings": {}, // Defaults to and overrides assistant.json's "settings" (and if none, then model.json "settings")
"parameters": {}, // Defaults to and overrides assistant.json's "parameters" (and if none, then model.json "parameters")
}
},
],
"created": 1231231 // Defaults to file creation time
"metadata": {}, // Defaults to {}
API Reference
Jan's Threads API is compatible with OpenAI's Threads API, with additional methods for managing threads locally.
See Jan Threads API.