docs: add assistants api reference (#801)
docs: add assistants api reference (#801)
This commit is contained in:
commit
9b00f6a31f
@ -40,6 +40,10 @@ In Jan, assistants are `primary` entities with the following capabilities:
|
|||||||
|
|
||||||
## `assistant.json`
|
## `assistant.json`
|
||||||
|
|
||||||
|
- Each `assistant` folder contains an `assistant.json` file, which is a representation of an assistant.
|
||||||
|
- `assistant.json` contains metadata and model parameter overrides
|
||||||
|
- There are no required fields.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
{
|
{
|
||||||
"id": "asst_abc123", // Defaults to foldername
|
"id": "asst_abc123", // Defaults to foldername
|
||||||
|
|||||||
@ -16,7 +16,7 @@ servers:
|
|||||||
tags:
|
tags:
|
||||||
- name: Models
|
- name: Models
|
||||||
description: List and describe the various models available in the API.
|
description: List and describe the various models available in the API.
|
||||||
- name: Chat
|
- name: Chat
|
||||||
description: |
|
description: |
|
||||||
Given a list of messages comprising a conversation, the model will return a response.
|
Given a list of messages comprising a conversation, the model will return a response.
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ paths:
|
|||||||
operationId: createChatCompletion
|
operationId: createChatCompletion
|
||||||
tags:
|
tags:
|
||||||
- Chat
|
- Chat
|
||||||
summary: |
|
summary: |
|
||||||
Create chat completion
|
Create chat completion
|
||||||
description: |
|
description: |
|
||||||
Creates a model response for the given chat conversation. <a href = "https://platform.openai.com/docs/api-reference/chat/create"> Equivalent to OpenAI's create chat completion. </a>
|
Creates a model response for the given chat conversation. <a href = "https://platform.openai.com/docs/api-reference/chat/create"> Equivalent to OpenAI's create chat completion. </a>
|
||||||
@ -72,7 +72,7 @@ paths:
|
|||||||
},
|
},
|
||||||
]
|
]
|
||||||
}'
|
}'
|
||||||
|
|
||||||
### MODELS
|
### MODELS
|
||||||
/models:
|
/models:
|
||||||
get:
|
get:
|
||||||
@ -111,7 +111,7 @@ paths:
|
|||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl -X POST https://localhost:1337/v1/models
|
curl -X POST https://localhost:1337/v1/models
|
||||||
/models/{model_id}:
|
/models/{model_id}:
|
||||||
get:
|
get:
|
||||||
operationId: retrieveModel
|
operationId: retrieveModel
|
||||||
tags:
|
tags:
|
||||||
@ -139,7 +139,7 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl https://localhost:1337/v1/models/zephyr-7b
|
curl https://localhost:1337/v1/models/{model_id}
|
||||||
delete:
|
delete:
|
||||||
operationId: deleteModel
|
operationId: deleteModel
|
||||||
tags:
|
tags:
|
||||||
@ -166,7 +166,7 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl -X DELETE https://localhost:1337/v1/models/zephyr-7b
|
curl -X DELETE https://localhost:1337/v1/models/{model_id}
|
||||||
/models/{model_id}/start:
|
/models/{model_id}/start:
|
||||||
put:
|
put:
|
||||||
operationId: startModel
|
operationId: startModel
|
||||||
@ -195,7 +195,7 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl -X PUT https://localhost:1337/v1/models/zephyr-7b/start
|
curl -X PUT https://localhost:1337/v1/models/{model_id}/start
|
||||||
/models/{model_id}/stop:
|
/models/{model_id}/stop:
|
||||||
put:
|
put:
|
||||||
operationId: stopModel
|
operationId: stopModel
|
||||||
@ -223,7 +223,7 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl -X PUT https://localhost:1337/v1/models/zephyr-7b/stop
|
curl -X PUT https://localhost:1337/v1/models/{model_id}/stop
|
||||||
|
|
||||||
### THREADS
|
### THREADS
|
||||||
/threads:
|
/threads:
|
||||||
@ -245,14 +245,14 @@ paths:
|
|||||||
type: array
|
type: array
|
||||||
description: "Initial set of messages for the thread."
|
description: "Initial set of messages for the thread."
|
||||||
items:
|
items:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/ThreadMessageObject'
|
$ref: "specs/threads.yaml#/components/schemas/ThreadMessageObject"
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: Thread created successfully
|
description: Thread created successfully
|
||||||
content:
|
content:
|
||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/CreateThreadResponse'
|
$ref: "specs/threads.yaml#/components/schemas/CreateThreadResponse"
|
||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "cURL"
|
- lang: "cURL"
|
||||||
source: |
|
source: |
|
||||||
@ -267,7 +267,7 @@ paths:
|
|||||||
"role": "user",
|
"role": "user",
|
||||||
"content": "How does AI work? Explain it in simple terms."
|
"content": "How does AI work? Explain it in simple terms."
|
||||||
}]
|
}]
|
||||||
}'
|
}'
|
||||||
get:
|
get:
|
||||||
operationId: listThreads
|
operationId: listThreads
|
||||||
tags:
|
tags:
|
||||||
@ -283,7 +283,7 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/ThreadObject'
|
$ref: "specs/threads.yaml#/components/schemas/ThreadObject"
|
||||||
example:
|
example:
|
||||||
- id: "thread_abc123"
|
- id: "thread_abc123"
|
||||||
object: "thread"
|
object: "thread"
|
||||||
@ -299,9 +299,9 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl http://localhost:1337/v1/threads \
|
curl http://localhost:1337/v1/threads \
|
||||||
-H "Content-Type: application/json" \
|
-H "Content-Type: application/json" \
|
||||||
|
|
||||||
/threads/{thread_id}:
|
/threads/{thread_id}:
|
||||||
get:
|
get:
|
||||||
operationId: getThread
|
operationId: getThread
|
||||||
@ -359,29 +359,29 @@ paths:
|
|||||||
type: array
|
type: array
|
||||||
description: "Set of messages to update in the thread."
|
description: "Set of messages to update in the thread."
|
||||||
items:
|
items:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/ThreadMessageObject'
|
$ref: "specs/threads.yaml#/components/schemas/ThreadMessageObject"
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: Thread modified successfully
|
description: Thread modified successfully
|
||||||
content:
|
content:
|
||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/ModifyThreadResponse'
|
$ref: "specs/threads.yaml#/components/schemas/ModifyThreadResponse"
|
||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl -X POST http://localhost:1337/v1/threads/{thread_id} \
|
curl -X POST http://localhost:1337/v1/threads/{thread_id} \
|
||||||
-H "Content-Type: application/json" \
|
-H "Content-Type: application/json" \
|
||||||
-d '{
|
-d '{
|
||||||
"messages": [{
|
"messages": [{
|
||||||
"role": "user",
|
"role": "user",
|
||||||
"content": "Hello, what is AI?",
|
"content": "Hello, what is AI?",
|
||||||
"file_ids": ["file-abc123"]
|
"file_ids": ["file-abc123"]
|
||||||
}, {
|
}, {
|
||||||
"role": "user",
|
"role": "user",
|
||||||
"content": "How does AI work? Explain it in simple terms."
|
"content": "How does AI work? Explain it in simple terms."
|
||||||
}]
|
}]
|
||||||
}'
|
}'
|
||||||
delete:
|
delete:
|
||||||
operationId: deleteThread
|
operationId: deleteThread
|
||||||
tags:
|
tags:
|
||||||
@ -404,7 +404,7 @@ paths:
|
|||||||
content:
|
content:
|
||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/DeleteThreadResponse'
|
$ref: "specs/threads.yaml#/components/schemas/DeleteThreadResponse"
|
||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
@ -445,17 +445,17 @@ paths:
|
|||||||
- Threads
|
- Threads
|
||||||
summary: Modify Thread.Assistants
|
summary: Modify Thread.Assistants
|
||||||
description: |
|
description: |
|
||||||
|
|
||||||
|
|
||||||
Can achieve this goal by calling Modify Assistant API with thread.assistant[]
|
Can achieve this goal by calling Modify Assistant API with thread.assistant[]
|
||||||
|
|
||||||
/threads/{thread_id}/:
|
/threads/{thread_id}/:
|
||||||
get:
|
get:
|
||||||
operationId: listThreadMessage
|
operationId: listThreadMessage
|
||||||
tags:
|
tags:
|
||||||
- Threads
|
- Threads
|
||||||
summary: List Thread.Messages
|
summary: List Thread.Messages
|
||||||
description: |
|
description: |
|
||||||
Can achieve this goal by calling Get Thread API
|
Can achieve this goal by calling Get Thread API
|
||||||
parameters:
|
parameters:
|
||||||
- in: path
|
- in: path
|
||||||
@ -476,6 +476,218 @@ paths:
|
|||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl http://localhost:1337/v1/threads/{thread_id}
|
curl http://localhost:1337/v1/threads/{thread_id}
|
||||||
|
### ASSISTANTS
|
||||||
|
/assistants/:
|
||||||
|
get:
|
||||||
|
operationId: listAssistants
|
||||||
|
tags:
|
||||||
|
- Assistants
|
||||||
|
summary: List assistants
|
||||||
|
description: |
|
||||||
|
Return a list of assistants. <a href = "https://platform.openai.com/docs/api-reference/assistants/listAssistants"> Equivalent to OpenAI's list assistants. </a>
|
||||||
|
responses:
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: List of threads retrieved successfully
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
example:
|
||||||
|
- id: "asst_abc123"
|
||||||
|
object: "assistant"
|
||||||
|
version: 1
|
||||||
|
created_at: 1698984975
|
||||||
|
name: "Math Tutor"
|
||||||
|
description: null
|
||||||
|
avatar: "https://pic.png"
|
||||||
|
models:
|
||||||
|
- model_id: "model_0"
|
||||||
|
instructions: "Be concise"
|
||||||
|
events:
|
||||||
|
in: []
|
||||||
|
out: []
|
||||||
|
metadata: {}
|
||||||
|
|
||||||
|
- id: "asst_abc456"
|
||||||
|
object: "assistant"
|
||||||
|
version: 1
|
||||||
|
created_at: 1698984975
|
||||||
|
name: "Physics Tutor"
|
||||||
|
description: null
|
||||||
|
avatar: "https://pic.png"
|
||||||
|
models:
|
||||||
|
- model_id: "model_1"
|
||||||
|
instructions: "Be concise!"
|
||||||
|
events:
|
||||||
|
in: []
|
||||||
|
out: []
|
||||||
|
metadata: {}
|
||||||
|
x-codeSamples:
|
||||||
|
- lang: "curl"
|
||||||
|
source: |
|
||||||
|
curl http://localhost:1337/v1/assistants \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
post:
|
||||||
|
operationId: createAssistant
|
||||||
|
tags:
|
||||||
|
- Assistants
|
||||||
|
summary: Create assistant
|
||||||
|
description: |
|
||||||
|
Create an assistant with a model and instructions. <a href = "https://platform.openai.com/docs/api-reference/assistants/createAssistant"> Equivalent to OpenAI's create assistants. </a>
|
||||||
|
requestBody:
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "specs/assistants.yaml#/components/schemas/CreateAssistantResponse"
|
||||||
|
x-codeSamples:
|
||||||
|
- lang: "curl"
|
||||||
|
source: |
|
||||||
|
curl http://localhost:1337/v1/assistants \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"models": [
|
||||||
|
{
|
||||||
|
"model_id": "model_0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}'
|
||||||
|
/assistants/{assistant_id}:
|
||||||
|
get:
|
||||||
|
operationId: getAssistant
|
||||||
|
tags:
|
||||||
|
- Assistants
|
||||||
|
summary: Retrieve assistant
|
||||||
|
description: |
|
||||||
|
Retrieves an assistant. <a href = "https://platform.openai.com/docs/api-reference/assistants/getAssistant"> Equivalent to OpenAI's retrieve assistants. </a>
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: assistant_id
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
example: asst_abc123
|
||||||
|
description: |
|
||||||
|
The ID of the assistant to retrieve.
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "specs/assistants.yaml#/components/schemas/RetrieveAssistantResponse"
|
||||||
|
x-codeSamples:
|
||||||
|
- lang: "curl"
|
||||||
|
source: |
|
||||||
|
curl http://localhost:1337/v1/assistants/{assistant_id} \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
post:
|
||||||
|
operationId: modifyAssistant
|
||||||
|
tags:
|
||||||
|
- Assistants
|
||||||
|
summary: Modify assistant
|
||||||
|
description: |
|
||||||
|
Modifies an assistant. <a href = "https://platform.openai.com/docs/api-reference/assistants/modifyAssistant"> Equivalent to OpenAI's modify assistant. </a>
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: assistant_id
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
example: asst_abc123
|
||||||
|
description: |
|
||||||
|
The ID of the assistant to modify.
|
||||||
|
requestBody:
|
||||||
|
required: false
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: "Name of the assistant."
|
||||||
|
example: "Physics Tutor"
|
||||||
|
instructions:
|
||||||
|
type: string
|
||||||
|
description: "A system prompt for the assistant."
|
||||||
|
example: Be concise!
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "specs/assistants.yaml#/components/schemas/ModifyAssistantResponse"
|
||||||
|
x-codeSamples:
|
||||||
|
- lang: "curl"
|
||||||
|
source: |
|
||||||
|
curl http://localhost:1337/v1/assistants/{assistant_id} \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"models": [
|
||||||
|
{
|
||||||
|
"model_id": "model_0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "Physics Tutor",
|
||||||
|
"instructions": "Be concise!",
|
||||||
|
}'
|
||||||
|
|
||||||
|
delete:
|
||||||
|
operationId: deleteAssistant
|
||||||
|
tags:
|
||||||
|
- Assistants
|
||||||
|
summary: Delete assistant
|
||||||
|
description: |
|
||||||
|
Delete an assistant. <a href = "https://platform.openai.com/docs/api-reference/assistants/deleteAssistant"> Equivalent to OpenAI's delete assistant. </a>
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: assistant_id
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
example: asst_abc123
|
||||||
|
description: |
|
||||||
|
The ID of the assistant to delete.
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: Deletion status
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "specs/assistants.yaml#/components/schemas/DeleteAssistantResponse"
|
||||||
|
x-codeSamples:
|
||||||
|
- lang: "curl"
|
||||||
|
source: |
|
||||||
|
curl -X DELETE http://localhost:1337/v1/assistants/{assistant_id}
|
||||||
|
|
||||||
### MESSAGES
|
### MESSAGES
|
||||||
/threads/{thread_id}/messages:
|
/threads/{thread_id}/messages:
|
||||||
@ -533,18 +745,14 @@ paths:
|
|||||||
role:
|
role:
|
||||||
type: string
|
type: string
|
||||||
description: |
|
description: |
|
||||||
"Role of the sender, either 'user' or 'assistant'."
|
Role of the sender, either 'user' or 'assistant'.
|
||||||
|
|
||||||
<span style="color:#228B22">OpenAI compatible</span>
|
|
||||||
example: "user"
|
example: "user"
|
||||||
enum: ["user", "assistant"]
|
enum: ["user", "assistant"]
|
||||||
content:
|
content:
|
||||||
type: string
|
type: string
|
||||||
description: |
|
description: |
|
||||||
"Text content of the message."
|
Text content of the message.
|
||||||
|
example: How does AI work? Explain it in simple terms.
|
||||||
<span style="color:#228B22">OpenAI compatible</span>
|
|
||||||
example: "How does AI work? Explain it in simple terms."
|
|
||||||
required:
|
required:
|
||||||
- role
|
- role
|
||||||
- content
|
- content
|
||||||
@ -558,12 +766,12 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl -X POST http://localhost:1337/v1/threads/{thread_id}/messages \
|
curl -X POST http://localhost:1337/v1/threads/{thread_id}/messages \
|
||||||
-H "Content-Type: application/json" \
|
-H "Content-Type: application/json" \
|
||||||
-d '{
|
-d '{
|
||||||
"role": "user",
|
"role": "user",
|
||||||
"content": "How does AI work? Explain it in simple terms."
|
"content": "How does AI work? Explain it in simple terms."
|
||||||
}'
|
}'
|
||||||
|
|
||||||
/threads/{thread_id}/messages/{message_id}:
|
/threads/{thread_id}/messages/{message_id}:
|
||||||
get:
|
get:
|
||||||
@ -582,7 +790,6 @@ paths:
|
|||||||
example: thread_abc123
|
example: thread_abc123
|
||||||
description: |
|
description: |
|
||||||
The ID of the thread containing the message.
|
The ID of the thread containing the message.
|
||||||
|
|
||||||
- in: path
|
- in: path
|
||||||
name: message_id
|
name: message_id
|
||||||
required: true
|
required: true
|
||||||
@ -602,8 +809,8 @@ paths:
|
|||||||
x-codeSamples:
|
x-codeSamples:
|
||||||
- lang: "curl"
|
- lang: "curl"
|
||||||
source: |
|
source: |
|
||||||
curl http://localhost:1337/v1/threads/{thread_id}/messages/{message_id} \
|
curl http://localhost:1337/v1/threads/{thread_id}/messages/{message_id} \
|
||||||
-H "Content-Type: application/json"
|
-H "Content-Type: application/json"
|
||||||
|
|
||||||
/threads/{thread_id}/messages/{message_id}/files:
|
/threads/{thread_id}/messages/{message_id}/files:
|
||||||
get:
|
get:
|
||||||
@ -611,8 +818,8 @@ paths:
|
|||||||
tags:
|
tags:
|
||||||
- Messages
|
- Messages
|
||||||
summary: |
|
summary: |
|
||||||
List message files
|
List message files
|
||||||
description: |
|
description: |
|
||||||
Returns a list of message files. <a href = "https://platform.openai.com/docs/api-reference/messages/listMessageFiles"> Equivalent to OpenAI's list message files. </a>
|
Returns a list of message files. <a href = "https://platform.openai.com/docs/api-reference/messages/listMessageFiles"> Equivalent to OpenAI's list message files. </a>
|
||||||
parameters:
|
parameters:
|
||||||
- in: path
|
- in: path
|
||||||
@ -630,9 +837,9 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
example: msg_abc123
|
example: msg_abc123
|
||||||
description: |
|
description: |
|
||||||
The ID of the message whose files are to be listed.
|
The ID of the message whose files are to be listed.
|
||||||
|
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: List of files retrieved successfully
|
description: List of files retrieved successfully
|
||||||
@ -681,7 +888,7 @@ paths:
|
|||||||
example: file-abc123
|
example: file-abc123
|
||||||
description: |
|
description: |
|
||||||
The ID of the file to retrieve.
|
The ID of the file to retrieve.
|
||||||
|
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: File retrieved successfully
|
description: File retrieved successfully
|
||||||
@ -708,7 +915,20 @@ x-webhooks:
|
|||||||
content:
|
content:
|
||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: 'specs/models.yaml#/components/schemas/ModelObject'
|
$ref: "specs/models.yaml#/components/schemas/ModelObject"
|
||||||
|
AssistantObject:
|
||||||
|
post:
|
||||||
|
summary: The assistant object
|
||||||
|
description: |
|
||||||
|
Build assistants that can call models and use tools to perform tasks. <a href = "https://platform.openai.com/docs/api-reference/assistants"> Equivalent to OpenAI's assistants object. </a>
|
||||||
|
operationId: AssistantObjects
|
||||||
|
tags:
|
||||||
|
- Assistants
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "specs/assistants.yaml#/components/schemas/AssistantObject"
|
||||||
MessageObject:
|
MessageObject:
|
||||||
post:
|
post:
|
||||||
summary: The message object
|
summary: The message object
|
||||||
@ -721,7 +941,7 @@ x-webhooks:
|
|||||||
content:
|
content:
|
||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: 'specs/messages.yaml#/components/schemas/MessageObject'
|
$ref: "specs/messages.yaml#/components/schemas/MessageObject"
|
||||||
ThreadObject:
|
ThreadObject:
|
||||||
post:
|
post:
|
||||||
summary: The thread object
|
summary: The thread object
|
||||||
@ -733,4 +953,4 @@ x-webhooks:
|
|||||||
content:
|
content:
|
||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: 'specs/threads.yaml#/components/schemas/ThreadObject'
|
$ref: "specs/threads.yaml#/components/schemas/ThreadObject"
|
||||||
|
|||||||
@ -1,59 +0,0 @@
|
|||||||
AssistantObject:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
avatar:
|
|
||||||
type: string
|
|
||||||
description: "URL of the assistant's avatar. Jan-specific property."
|
|
||||||
example: "https://lala.png"
|
|
||||||
id:
|
|
||||||
type: string
|
|
||||||
description: "The identifier of the assistant."
|
|
||||||
example: "asst_abc123"
|
|
||||||
object:
|
|
||||||
type: string
|
|
||||||
description: "Type of the object, indicating it's an assistant."
|
|
||||||
default: "assistant"
|
|
||||||
version:
|
|
||||||
type: integer
|
|
||||||
description: "Version number of the assistant."
|
|
||||||
example: 1
|
|
||||||
created_at:
|
|
||||||
type: integer
|
|
||||||
format: int64
|
|
||||||
description: "Unix timestamp representing the creation time of the assistant."
|
|
||||||
name:
|
|
||||||
type: string
|
|
||||||
description: "Name of the assistant."
|
|
||||||
example: "Math Tutor"
|
|
||||||
description:
|
|
||||||
type: string
|
|
||||||
description: "Description of the assistant. Can be null."
|
|
||||||
models:
|
|
||||||
type: array
|
|
||||||
description: "List of models associated with the assistant. Jan-specific property."
|
|
||||||
items:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
model_id:
|
|
||||||
type: string
|
|
||||||
# Additional properties for models can be added here
|
|
||||||
events:
|
|
||||||
type: object
|
|
||||||
description: "Event subscription settings for the assistant."
|
|
||||||
properties:
|
|
||||||
in:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
out:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
# If there are specific event types, they can be detailed here
|
|
||||||
metadata:
|
|
||||||
type: object
|
|
||||||
description: "Metadata associated with the assistant."
|
|
||||||
required:
|
|
||||||
- name
|
|
||||||
- models
|
|
||||||
- events
|
|
||||||
329
docs/openapi/specs/assistants.yaml
Normal file
329
docs/openapi/specs/assistants.yaml
Normal file
@ -0,0 +1,329 @@
|
|||||||
|
components:
|
||||||
|
schemas:
|
||||||
|
AssistantObject:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
description: "The identifier of the assistant."
|
||||||
|
example: "asst_abc123"
|
||||||
|
object:
|
||||||
|
type: string
|
||||||
|
description: "Type of the object, indicating it's an assistant."
|
||||||
|
default: "assistant"
|
||||||
|
version:
|
||||||
|
type: integer
|
||||||
|
description: "Version number of the assistant."
|
||||||
|
example: 1
|
||||||
|
created_at:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
description: "Unix timestamp representing the creation time of the assistant."
|
||||||
|
example: 1698984975
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: "Name of the assistant."
|
||||||
|
example: "Math Tutor"
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: "Description of the assistant. Can be null."
|
||||||
|
example: null
|
||||||
|
avatar:
|
||||||
|
type: string
|
||||||
|
description: "URL of the assistant's avatar. Jan-specific property."
|
||||||
|
example: "https://pic.png"
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
instructions:
|
||||||
|
type: string
|
||||||
|
description: "A system prompt for the assistant."
|
||||||
|
example: Be concise
|
||||||
|
events:
|
||||||
|
type: object
|
||||||
|
description: "Event subscription settings for the assistant."
|
||||||
|
properties:
|
||||||
|
in:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
out:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
# If there are specific event types, they can be detailed here
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
description: "Metadata associated with the assistant."
|
||||||
|
|
||||||
|
ListAssistantsResponse:
|
||||||
|
|
||||||
|
CreateAssistantResponse:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
description: "The identifier of the assistant."
|
||||||
|
example: "asst_abc123"
|
||||||
|
object:
|
||||||
|
type: string
|
||||||
|
description: "Type of the object, indicating it's an assistant."
|
||||||
|
default: "assistant"
|
||||||
|
version:
|
||||||
|
type: integer
|
||||||
|
description: "Version number of the assistant."
|
||||||
|
example: 1
|
||||||
|
created_at:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
description: "Unix timestamp representing the creation time of the assistant."
|
||||||
|
example: 1698984975
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: "Name of the assistant."
|
||||||
|
example: "Math Tutor"
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: "Description of the assistant. Can be null."
|
||||||
|
example: null
|
||||||
|
avatar:
|
||||||
|
type: string
|
||||||
|
description: "URL of the assistant's avatar. Jan-specific property."
|
||||||
|
example: "https://pic.png"
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
instructions:
|
||||||
|
type: string
|
||||||
|
description: "A system prompt for the assistant."
|
||||||
|
example: Be concise
|
||||||
|
events:
|
||||||
|
type: object
|
||||||
|
description: "Event subscription settings for the assistant."
|
||||||
|
properties:
|
||||||
|
in:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
out:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
# If there are specific event types, they can be detailed here
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
description: "Metadata associated with the assistant."
|
||||||
|
|
||||||
|
RetrieveAssistantResponse:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
description: "The identifier of the assistant."
|
||||||
|
example: "asst_abc123"
|
||||||
|
object:
|
||||||
|
type: string
|
||||||
|
description: "Type of the object, indicating it's an assistant."
|
||||||
|
default: "assistant"
|
||||||
|
version:
|
||||||
|
type: integer
|
||||||
|
description: "Version number of the assistant."
|
||||||
|
example: 1
|
||||||
|
created_at:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
description: "Unix timestamp representing the creation time of the assistant."
|
||||||
|
example: 1698984975
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: "Name of the assistant."
|
||||||
|
example: "Math Tutor"
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: "Description of the assistant. Can be null."
|
||||||
|
example: null
|
||||||
|
avatar:
|
||||||
|
type: string
|
||||||
|
description: "URL of the assistant's avatar. Jan-specific property."
|
||||||
|
example: "https://pic.png"
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
instructions:
|
||||||
|
type: string
|
||||||
|
description: "A system prompt for the assistant."
|
||||||
|
example: Be concise
|
||||||
|
events:
|
||||||
|
type: object
|
||||||
|
description: "Event subscription settings for the assistant."
|
||||||
|
properties:
|
||||||
|
in:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
out:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
# If there are specific event types, they can be detailed here
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
description: "Metadata associated with the assistant."
|
||||||
|
|
||||||
|
ModifyAssistantObject:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
description: "The identifier of the assistant."
|
||||||
|
example: "asst_abc123"
|
||||||
|
object:
|
||||||
|
type: string
|
||||||
|
description: "Type of the object, indicating it's an assistant."
|
||||||
|
default: "assistant"
|
||||||
|
version:
|
||||||
|
type: integer
|
||||||
|
description: "Version number of the assistant."
|
||||||
|
example: 1
|
||||||
|
created_at:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
description: "Unix timestamp representing the creation time of the assistant."
|
||||||
|
example: 1698984975
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: "Name of the assistant."
|
||||||
|
example: "Math Tutor"
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: "Description of the assistant. Can be null."
|
||||||
|
example: null
|
||||||
|
avatar:
|
||||||
|
type: string
|
||||||
|
description: "URL of the assistant's avatar. Jan-specific property."
|
||||||
|
example: "https://pic.png"
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
instructions:
|
||||||
|
type: string
|
||||||
|
description: "A system prompt for the assistant."
|
||||||
|
example: Be concise
|
||||||
|
events:
|
||||||
|
type: object
|
||||||
|
description: "Event subscription settings for the assistant."
|
||||||
|
properties:
|
||||||
|
in:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
out:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
# If there are specific event types, they can be detailed here
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
description: "Metadata associated with the assistant."
|
||||||
|
|
||||||
|
ModifyAssistantResponse:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
description: "The identifier of the assistant."
|
||||||
|
example: "asst_abc123"
|
||||||
|
object:
|
||||||
|
type: string
|
||||||
|
description: "Type of the object, indicating it's an assistant."
|
||||||
|
default: "assistant"
|
||||||
|
version:
|
||||||
|
type: integer
|
||||||
|
description: "Version number of the assistant."
|
||||||
|
example: 1
|
||||||
|
created_at:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
description: "Unix timestamp representing the creation time of the assistant."
|
||||||
|
example: 1698984975
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: "Name of the assistant."
|
||||||
|
example: "Physics Tutor"
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: "Description of the assistant. Can be null."
|
||||||
|
example: null
|
||||||
|
avatar:
|
||||||
|
type: string
|
||||||
|
description: "URL of the assistant's avatar. Jan-specific property."
|
||||||
|
example: "https://pic.png"
|
||||||
|
models:
|
||||||
|
type: array
|
||||||
|
description: "List of models associated with the assistant. Jan-specific property."
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
model_id:
|
||||||
|
type: string
|
||||||
|
example: model_0
|
||||||
|
instructions:
|
||||||
|
type: string
|
||||||
|
description: "A system prompt for the assistant."
|
||||||
|
example: Be concise!
|
||||||
|
events:
|
||||||
|
type: object
|
||||||
|
description: "Event subscription settings for the assistant."
|
||||||
|
properties:
|
||||||
|
in:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
out:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
# If there are specific event types, they can be detailed here
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
description: "Metadata associated with the assistant."
|
||||||
|
|
||||||
|
DeleteAssistantResponse:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
description: "The identifier of the deleted assistant."
|
||||||
|
example: asst_abc123
|
||||||
|
object:
|
||||||
|
type: string
|
||||||
|
description: "Type of the object, indicating the assistant has been deleted."
|
||||||
|
example: assistant.deleted
|
||||||
|
deleted:
|
||||||
|
type: boolean
|
||||||
|
description: "Indicates whether the assistant was successfully deleted."
|
||||||
|
example: true
|
||||||
@ -109,8 +109,6 @@ components:
|
|||||||
description: |
|
description: |
|
||||||
Set probability threshold for more relevant outputs
|
Set probability threshold for more relevant outputs
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ChatCompletionResponse:
|
ChatCompletionResponse:
|
||||||
type: object
|
type: object
|
||||||
description: Description of the response structure
|
description: Description of the response structure
|
||||||
|
|||||||
@ -44,7 +44,6 @@ components:
|
|||||||
description: |
|
description: |
|
||||||
"Type of content, e.g., 'text'."
|
"Type of content, e.g., 'text'."
|
||||||
|
|
||||||
|
|
||||||
text:
|
text:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
@ -207,7 +206,7 @@ components:
|
|||||||
data:
|
data:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
$ref: '#/components/schemas/ListMessageObject'
|
$ref: "#/components/schemas/ListMessageObject"
|
||||||
first_id:
|
first_id:
|
||||||
type: string
|
type: string
|
||||||
description: "Identifier of the first message in the list."
|
description: "Identifier of the first message in the list."
|
||||||
@ -315,4 +314,4 @@ components:
|
|||||||
data:
|
data:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
$ref: '#/components/schemas/MessageFileObject'
|
$ref: "#/components/schemas/MessageFileObject"
|
||||||
|
|||||||
@ -130,7 +130,7 @@ components:
|
|||||||
created:
|
created:
|
||||||
type: integer
|
type: integer
|
||||||
format: int64
|
format: int64
|
||||||
description: |
|
description: |
|
||||||
"Unix timestamp representing the creation time of the model."
|
"Unix timestamp representing the creation time of the model."
|
||||||
|
|
||||||
example: "1253935178"
|
example: "1253935178"
|
||||||
@ -307,7 +307,7 @@ components:
|
|||||||
- source_url
|
- source_url
|
||||||
- parameters
|
- parameters
|
||||||
- metadata
|
- metadata
|
||||||
|
|
||||||
DeleteModelResponse:
|
DeleteModelResponse:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
@ -324,7 +324,6 @@ components:
|
|||||||
description: "Indicates whether the model was successfully deleted."
|
description: "Indicates whether the model was successfully deleted."
|
||||||
example: true
|
example: true
|
||||||
|
|
||||||
|
|
||||||
StartModelResponse:
|
StartModelResponse:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
@ -380,4 +379,3 @@ components:
|
|||||||
type: string
|
type: string
|
||||||
description: "The current state of the model after the start operation."
|
description: "The current state of the model after the start operation."
|
||||||
example: "downloaded"
|
example: "downloaded"
|
||||||
|
|
||||||
|
|||||||
@ -17,15 +17,14 @@ components:
|
|||||||
example: thread
|
example: thread
|
||||||
title:
|
title:
|
||||||
type: string
|
type: string
|
||||||
description: |
|
description: |
|
||||||
"A brief summary or description of the thread, defaults to an empty string."
|
"A brief summary or description of the thread, defaults to an empty string."
|
||||||
|
|
||||||
|
|
||||||
example: "funny physics joke"
|
example: "funny physics joke"
|
||||||
assistants:
|
assistants:
|
||||||
type: array
|
type: array
|
||||||
description: |
|
description: |
|
||||||
|
|
||||||
items:
|
items:
|
||||||
properties:
|
properties:
|
||||||
assistant_id:
|
assistant_id:
|
||||||
@ -33,7 +32,6 @@ components:
|
|||||||
description: |
|
description: |
|
||||||
The identifier of assistant, defaults to "jan"
|
The identifier of assistant, defaults to "jan"
|
||||||
|
|
||||||
|
|
||||||
example: jan
|
example: jan
|
||||||
model:
|
model:
|
||||||
type: object
|
type: object
|
||||||
@ -41,20 +39,17 @@ components:
|
|||||||
id:
|
id:
|
||||||
type: string
|
type: string
|
||||||
description: |
|
description: |
|
||||||
|
|
||||||
example: ...
|
example: ...
|
||||||
settings:
|
settings:
|
||||||
type: object
|
type: object
|
||||||
description: |
|
description: |
|
||||||
Defaults to and overrides assistant.json's "settings" (and if none, then model.json "settings")
|
Defaults to and overrides assistant.json's "settings" (and if none, then model.json "settings")
|
||||||
|
|
||||||
|
|
||||||
parameters:
|
parameters:
|
||||||
type: object
|
type: object
|
||||||
description: |
|
description: |
|
||||||
Defaults to and overrides assistant.json's "parameters" (and if none, then model.json "parameters")
|
Defaults to and overrides assistant.json's "parameters" (and if none, then model.json "parameters")
|
||||||
|
|
||||||
|
|
||||||
created:
|
created:
|
||||||
type: integer
|
type: integer
|
||||||
format: int64
|
format: int64
|
||||||
@ -143,7 +138,6 @@ components:
|
|||||||
type: string
|
type: string
|
||||||
description: |
|
description: |
|
||||||
"Array of file IDs associated with the message, if any."
|
"Array of file IDs associated with the message, if any."
|
||||||
|
|
||||||
|
|
||||||
ModifyThreadResponse:
|
ModifyThreadResponse:
|
||||||
type: object
|
type: object
|
||||||
@ -181,4 +175,4 @@ components:
|
|||||||
deleted:
|
deleted:
|
||||||
type: boolean
|
type: boolean
|
||||||
description: "Indicates whether the thread was successfully deleted."
|
description: "Indicates whether the thread was successfully deleted."
|
||||||
example: true
|
example: true
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user