Skip to content

Commit 0f6c6a0

Browse files
Wauplingithub-actions[bot]
authored andcommitted
Update tasks specs (automated commit)
1 parent 8ff8951 commit 0f6c6a0

File tree

2 files changed

+45
-77
lines changed

2 files changed

+45
-77
lines changed

packages/tasks/src/tasks/chat-completion/inference.ts

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -136,35 +136,17 @@ export interface ChatCompletionInputFunctionDefinition {
136136
[property: string]: unknown;
137137
}
138138
export interface ChatCompletionInputGrammarType {
139-
json_schema?: ChatCompletionInputJSONSchemaConfig;
140139
type: ChatCompletionInputGrammarTypeType;
141-
[property: string]: unknown;
142-
}
143-
export interface ChatCompletionInputJSONSchemaConfig {
144-
/**
145-
* A description of what the response format is for, used by the model to determine how to
146-
* respond in the format.
147-
*/
148-
description?: string;
149140
/**
150-
* The name of the response format.
151-
*/
152-
name: string;
153-
/**
154-
* The schema for the response format, described as a JSON Schema object. Learn how to build
155-
* JSON schemas [here](https://json-schema.org/).
156-
*/
157-
schema?: {
158-
[key: string]: unknown;
159-
};
160-
/**
161-
* Whether to enable strict schema adherence when generating the output. If set to true, the
162-
* model will always follow the exact schema defined in the `schema` field.
141+
* A string that represents a [JSON Schema](https://json-schema.org/).
142+
*
143+
* JSON Schema is a declarative language that allows to annotate JSON documents
144+
* with types and descriptions.
163145
*/
164-
strict?: boolean;
146+
value: unknown;
165147
[property: string]: unknown;
166148
}
167-
export type ChatCompletionInputGrammarTypeType = "text" | "json_schema" | "json_object";
149+
export type ChatCompletionInputGrammarTypeType = "json" | "regex" | "json_schema";
168150
export interface ChatCompletionInputStreamOptions {
169151
/**
170152
* If set, an additional chunk will be streamed before the data: [DONE] message. The usage

packages/tasks/src/tasks/chat-completion/spec/input.json

Lines changed: 39 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -291,75 +291,61 @@
291291
"ChatCompletionInputGrammarType": {
292292
"oneOf": [
293293
{
294-
"$ref": "#/$defs/ChatCompletionInputResponseFormatText"
294+
"type": "object",
295+
"required": ["type", "value"],
296+
"properties": {
297+
"type": {
298+
"type": "string",
299+
"enum": ["json"]
300+
},
301+
"value": {
302+
"description": "A string that represents a [JSON Schema](https://json-schema.org/).\n\nJSON Schema is a declarative language that allows to annotate JSON documents\nwith types and descriptions."
303+
}
304+
}
295305
},
296306
{
297-
"$ref": "#/$defs/ChatCompletionInputResponseFormatJSONSchema"
307+
"type": "object",
308+
"required": ["type", "value"],
309+
"properties": {
310+
"type": {
311+
"type": "string",
312+
"enum": ["regex"]
313+
},
314+
"value": {
315+
"type": "string"
316+
}
317+
}
298318
},
299319
{
300-
"$ref": "#/$defs/ChatCompletionInputResponseFormatJSONObject"
320+
"type": "object",
321+
"required": ["type", "value"],
322+
"properties": {
323+
"type": {
324+
"type": "string",
325+
"enum": ["json_schema"]
326+
},
327+
"value": {
328+
"$ref": "#/$defs/ChatCompletionInputJsonSchemaConfig"
329+
}
330+
}
301331
}
302332
],
303-
"title": "ChatCompletionInputGrammarType"
304-
},
305-
"ChatCompletionInputResponseFormatText": {
306-
"type": "object",
307-
"required": ["type"],
308-
"properties": {
309-
"type": {
310-
"type": "string",
311-
"enum": ["text"]
312-
}
313-
},
314-
"title": "ChatCompletionInputResponseFormatText"
315-
},
316-
"ChatCompletionInputResponseFormatJSONSchema": {
317-
"type": "object",
318-
"required": ["type", "json_schema"],
319-
"properties": {
320-
"type": {
321-
"type": "string",
322-
"enum": ["json_schema"]
323-
},
324-
"json_schema": {
325-
"$ref": "#/$defs/ChatCompletionInputJsonSchemaConfig"
326-
}
327-
},
328-
"title": "ChatCompletionInputResponseFormatJSONSchema"
329-
},
330-
"ChatCompletionInputResponseFormatJSONObject": {
331-
"type": "object",
332-
"required": ["type"],
333-
"properties": {
334-
"type": {
335-
"type": "string",
336-
"enum": ["json_object"]
337-
}
333+
"discriminator": {
334+
"propertyName": "type"
338335
},
339-
"title": "ChatCompletionInputResponseFormatJSONObject"
336+
"title": "ChatCompletionInputGrammarType"
340337
},
341338
"ChatCompletionInputJsonSchemaConfig": {
342339
"type": "object",
343-
"required": ["name"],
340+
"required": ["schema"],
344341
"properties": {
345342
"name": {
346343
"type": "string",
347-
"description": "The name of the response format."
348-
},
349-
"description": {
350-
"type": "string",
351-
"description": "A description of what the response format is for, used by the model to determine how to respond in the format.",
344+
"description": "Optional name identifier for the schema",
352345
"nullable": true
353346
},
354347
"schema": {
355-
"type": "object",
356-
"description": "The schema for the response format, described as a JSON Schema object. Learn how to build JSON schemas [here](https://json-schema.org/).",
357-
"nullable": true
358-
},
359-
"strict": {
360-
"type": "boolean",
361-
"description": "Whether to enable strict schema adherence when generating the output. If set to true, the model will always follow the exact schema defined in the `schema` field.",
362-
"nullable": true
348+
"description": "The actual JSON schema definition"
363349
}
364350
},
365351
"title": "ChatCompletionInputJsonSchemaConfig"

0 commit comments

Comments
 (0)