update MemoryToolDefinition

This commit is contained in:
Xi Yan 2024-09-20 17:51:53 -07:00
parent 942cb87a3c
commit 06abd7e6c8
3 changed files with 333 additions and 318 deletions

View file

@ -21,7 +21,7 @@
"info": {
"title": "[DRAFT] Llama Stack Specification",
"version": "0.0.1",
"description": "This is the specification of the llama stack that provides\n a set of endpoints and their corresponding interfaces that are tailored to\n best leverage Llama Models. The specification is still in draft and subject to change.\n Generated at 2024-09-18 19:27:39.955190"
"description": "This is the specification of the llama stack that provides\n a set of endpoints and their corresponding interfaces that are tailored to\n best leverage Llama Models. The specification is still in draft and subject to change.\n Generated at 2024-09-20 17:50:36.257743"
},
"servers": [
{
@ -2147,6 +2147,116 @@
"$ref": "#/components/schemas/FunctionCallToolDefinition"
},
{
"$ref": "#/components/schemas/MemoryToolDefinition"
}
]
}
},
"tool_choice": {
"$ref": "#/components/schemas/ToolChoice"
},
"tool_prompt_format": {
"$ref": "#/components/schemas/ToolPromptFormat"
},
"model": {
"type": "string"
},
"instructions": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"model",
"instructions"
]
},
"BuiltinShield": {
"type": "string",
"enum": [
"llama_guard",
"code_scanner_guard",
"third_party_shield",
"injection_shield",
"jailbreak_shield"
]
},
"CodeInterpreterToolDefinition": {
"type": "object",
"properties": {
"input_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"output_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"type": {
"type": "string",
"const": "code_interpreter"
},
"enable_inline_code_execution": {
"type": "boolean"
},
"remote_execution": {
"$ref": "#/components/schemas/RestAPIExecutionConfig"
}
},
"additionalProperties": false,
"required": [
"type",
"enable_inline_code_execution"
]
},
"FunctionCallToolDefinition": {
"type": "object",
"properties": {
"input_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"output_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"type": {
"type": "string",
"const": "function_call"
},
"function_name": {
"type": "string"
},
"description": {
"type": "string"
},
"parameters": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/ToolParamDefinition"
}
},
"remote_execution": {
"$ref": "#/components/schemas/RestAPIExecutionConfig"
}
},
"additionalProperties": false,
"required": [
"type",
"function_name",
"description",
"parameters"
]
},
"MemoryToolDefinition": {
"type": "object",
"properties": {
"input_shields": {
@ -2324,113 +2434,6 @@
"max_tokens_in_context",
"max_chunks"
]
}
]
}
},
"tool_choice": {
"$ref": "#/components/schemas/ToolChoice"
},
"tool_prompt_format": {
"$ref": "#/components/schemas/ToolPromptFormat"
},
"model": {
"type": "string"
},
"instructions": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"model",
"instructions"
]
},
"BuiltinShield": {
"type": "string",
"enum": [
"llama_guard",
"code_scanner_guard",
"third_party_shield",
"injection_shield",
"jailbreak_shield"
]
},
"CodeInterpreterToolDefinition": {
"type": "object",
"properties": {
"input_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"output_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"type": {
"type": "string",
"const": "code_interpreter"
},
"enable_inline_code_execution": {
"type": "boolean"
},
"remote_execution": {
"$ref": "#/components/schemas/RestAPIExecutionConfig"
}
},
"additionalProperties": false,
"required": [
"type",
"enable_inline_code_execution"
]
},
"FunctionCallToolDefinition": {
"type": "object",
"properties": {
"input_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"output_shields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ShieldDefinition"
}
},
"type": {
"type": "string",
"const": "function_call"
},
"function_name": {
"type": "string"
},
"description": {
"type": "string"
},
"parameters": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/ToolParamDefinition"
}
},
"remote_execution": {
"$ref": "#/components/schemas/RestAPIExecutionConfig"
}
},
"additionalProperties": false,
"required": [
"type",
"function_name",
"description",
"parameters"
]
},
"OnViolationAction": {
"type": "integer",
@ -5149,37 +5152,37 @@
],
"tags": [
{
"name": "BatchInference"
},
{
"name": "PostTraining"
"name": "Safety"
},
{
"name": "Inference"
},
{
"name": "Safety"
},
{
"name": "RewardScoring"
},
{
"name": "Telemetry"
},
{
"name": "Evaluations"
},
{
"name": "SyntheticDataGeneration"
"name": "PostTraining"
},
{
"name": "BatchInference"
},
{
"name": "Memory"
},
{
"name": "Datasets"
},
{
"name": "RewardScoring"
},
{
"name": "Agents"
},
{
"name": "Datasets"
"name": "Telemetry"
},
{
"name": "SyntheticDataGeneration"
},
{
"name": "BuiltinTool",
@ -5317,6 +5320,10 @@
"name": "FunctionCallToolDefinition",
"description": "<SchemaDefinition schemaRef=\"#/components/schemas/FunctionCallToolDefinition\" />"
},
{
"name": "MemoryToolDefinition",
"description": "<SchemaDefinition schemaRef=\"#/components/schemas/MemoryToolDefinition\" />"
},
{
"name": "OnViolationAction",
"description": "<SchemaDefinition schemaRef=\"#/components/schemas/OnViolationAction\" />"
@ -5763,6 +5770,7 @@
"MemoryBank",
"MemoryBankDocument",
"MemoryRetrievalStep",
"MemoryToolDefinition",
"MetricEvent",
"OnViolationAction",
"OptimizerConfig",

View file

@ -30,123 +30,7 @@ components:
- $ref: '#/components/schemas/PhotogenToolDefinition'
- $ref: '#/components/schemas/CodeInterpreterToolDefinition'
- $ref: '#/components/schemas/FunctionCallToolDefinition'
- additionalProperties: false
properties:
input_shields:
items:
$ref: '#/components/schemas/ShieldDefinition'
type: array
max_chunks:
type: integer
max_tokens_in_context:
type: integer
memory_bank_configs:
items:
oneOf:
- additionalProperties: false
properties:
bank_id:
type: string
type:
const: vector
type: string
required:
- bank_id
- type
type: object
- additionalProperties: false
properties:
bank_id:
type: string
keys:
items:
type: string
type: array
type:
const: keyvalue
type: string
required:
- bank_id
- type
- keys
type: object
- additionalProperties: false
properties:
bank_id:
type: string
type:
const: keyword
type: string
required:
- bank_id
- type
type: object
- additionalProperties: false
properties:
bank_id:
type: string
entities:
items:
type: string
type: array
type:
const: graph
type: string
required:
- bank_id
- type
- entities
type: object
type: array
output_shields:
items:
$ref: '#/components/schemas/ShieldDefinition'
type: array
query_generator_config:
oneOf:
- additionalProperties: false
properties:
sep:
type: string
type:
const: default
type: string
required:
- type
- sep
type: object
- additionalProperties: false
properties:
model:
type: string
template:
type: string
type:
const: llm
type: string
required:
- type
- model
- template
type: object
- additionalProperties: false
properties:
type:
const: custom
type: string
required:
- type
type: object
type:
const: memory
type: string
required:
- type
- memory_bank_configs
- query_generator_config
- max_tokens_in_context
- max_chunks
type: object
- $ref: '#/components/schemas/MemoryToolDefinition'
type: array
required:
- model
@ -1190,6 +1074,124 @@ components:
- memory_bank_ids
- inserted_context
type: object
MemoryToolDefinition:
additionalProperties: false
properties:
input_shields:
items:
$ref: '#/components/schemas/ShieldDefinition'
type: array
max_chunks:
type: integer
max_tokens_in_context:
type: integer
memory_bank_configs:
items:
oneOf:
- additionalProperties: false
properties:
bank_id:
type: string
type:
const: vector
type: string
required:
- bank_id
- type
type: object
- additionalProperties: false
properties:
bank_id:
type: string
keys:
items:
type: string
type: array
type:
const: keyvalue
type: string
required:
- bank_id
- type
- keys
type: object
- additionalProperties: false
properties:
bank_id:
type: string
type:
const: keyword
type: string
required:
- bank_id
- type
type: object
- additionalProperties: false
properties:
bank_id:
type: string
entities:
items:
type: string
type: array
type:
const: graph
type: string
required:
- bank_id
- type
- entities
type: object
type: array
output_shields:
items:
$ref: '#/components/schemas/ShieldDefinition'
type: array
query_generator_config:
oneOf:
- additionalProperties: false
properties:
sep:
type: string
type:
const: default
type: string
required:
- type
- sep
type: object
- additionalProperties: false
properties:
model:
type: string
template:
type: string
type:
const: llm
type: string
required:
- type
- model
- template
type: object
- additionalProperties: false
properties:
type:
const: custom
type: string
required:
- type
type: object
type:
const: memory
type: string
required:
- type
- memory_bank_configs
- query_generator_config
- max_tokens_in_context
- max_chunks
type: object
MetricEvent:
additionalProperties: false
properties:
@ -2362,7 +2364,7 @@ info:
description: "This is the specification of the llama stack that provides\n \
\ a set of endpoints and their corresponding interfaces that are tailored\
\ to\n best leverage Llama Models. The specification is still in\
\ draft and subject to change.\n Generated at 2024-09-18 19:27:39.955190"
\ draft and subject to change.\n Generated at 2024-09-20 17:50:36.257743"
title: '[DRAFT] Llama Stack Specification'
version: 0.0.1
jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema
@ -3150,17 +3152,17 @@ security:
servers:
- url: http://any-hosted-llama-stack.com
tags:
- name: BatchInference
- name: PostTraining
- name: Inference
- name: Safety
- name: RewardScoring
- name: Telemetry
- name: Inference
- name: Evaluations
- name: SyntheticDataGeneration
- name: PostTraining
- name: BatchInference
- name: Memory
- name: Agents
- name: Datasets
- name: RewardScoring
- name: Agents
- name: Telemetry
- name: SyntheticDataGeneration
- description: <SchemaDefinition schemaRef="#/components/schemas/BuiltinTool" />
name: BuiltinTool
- description: <SchemaDefinition schemaRef="#/components/schemas/CompletionMessage"
@ -3272,6 +3274,9 @@ tags:
- description: <SchemaDefinition schemaRef="#/components/schemas/FunctionCallToolDefinition"
/>
name: FunctionCallToolDefinition
- description: <SchemaDefinition schemaRef="#/components/schemas/MemoryToolDefinition"
/>
name: MemoryToolDefinition
- description: <SchemaDefinition schemaRef="#/components/schemas/OnViolationAction"
/>
name: OnViolationAction
@ -3634,6 +3639,7 @@ x-tagGroups:
- MemoryBank
- MemoryBankDocument
- MemoryRetrievalStep
- MemoryToolDefinition
- MetricEvent
- OnViolationAction
- OptimizerConfig

View file

@ -151,6 +151,7 @@ MemoryQueryGeneratorConfig = Annotated[
]
@json_schema_type
class MemoryToolDefinition(ToolDefinitionCommon):
type: Literal[AgentTool.memory.value] = AgentTool.memory.value
memory_bank_configs: List[MemoryBankConfig] = Field(default_factory=list)