Léim go dtí an príomhábhar
OpenAI

6 Lúnasa 2024

Cuideachta

Ag tabhairt Aschur Struchtúrtha isteach san API

Táimid ag tabhairt Aschur Struchtúrtha isteach san API—cloíonn aschuir samhla go hiontaofa anois le Scéimrí JSON a sholáthraíonn forbróirí.

Taispeánann an íomhá patrún teibí de chearnóga beaga i scáileanna éagsúla gorma, glasa agus buí éadroma. Tá na cearnóga socraithe i bhfoirm cosúil le greille, rud a chruthaíonn éifeacht mósáice le pailéad dathanna bog, pastail.

Anuraidh ag DevDay, thugamar mód JSON isteach—bunbhloic úsáideach d’fhorbróirí atá ag iarraidh feidhmchláir iontaofa a thógáil lenár samhlacha. Cé go bhfeabhsaíonn mód JSON iontaofacht na samhla maidir le haschuir JSON bhailí a ghiniúint, ní ráthaíonn sé go mbeidh freagra na samhla i gcomhréir le scéimre ar leith. Inniu táimid ag tabhairt Aschur Struchtúrtha isteach san API, gné nua atá deartha chun a chinntiú go meaitseálfaidh aschuir a ghineann an tsamhail go díreach le Scéimrí JSON a sholáthraíonn forbróirí.

Tá giniúint sonraí struchtúrtha ó ionchuir neamhstruchtúrtha ar cheann de na príomhchásanna úsáide don IA in fheidhmchláir an lae inniu. Úsáideann forbróirí OpenAI API chun cúntóirí cumhachtacha a thógáil a bhfuil an cumas acu sonraí a aisghabháil agus ceisteanna a fhreagairt trí glao feidhme(osclaíonn i bhfuinneog nua), sonraí struchtúrtha a bhaint le haghaidh iontráil sonraí, agus sreafaí oibre ilchéime gníomhaireacha a thógáil a ligeann do LLManna gníomhartha a dhéanamh. Tá forbróirí le fada ag dul timpeall ar theorainneacha LLManna sa réimse seo trí uirlisiú foinse oscailte, leideanna, agus iarratais a thriail arís agus arís eile chun a chinntiú go meaitseálann aschuir na samhla leis na formáidí is gá chun idir-inoibritheacht lena gcórais a chumasú. Réitíonn Aschur Struchtúrtha an fhadhb seo trí shamhlacha OpenAI a shrianadh chun meaitseáil leis na scéimrí a sholáthraíonn forbróirí agus trí oiliúint a chur ar ár samhlacha chun scéimrí casta a thuiscint níos fearr.

Ar ár measúnuithe maidir le scéimre chasta JSON a leanúint, scórálann ár samhail nua gpt-4o-2024-08-06 le hAschur Struchtúrtha 100% foirfe. I gcomparáid leis sin, scórálann gpt-4-0613 níos lú ná 40%.

Le hAschur Struchtúrtha, gpt-4o-2024-08-06 sroicheann sé iontaofacht 100% inár meastóireachtaí, agus meaitseálann sé na scéimrí aschuir go foirfe.

Conas Aschur Struchtúrtha a úsáid

Táimid ag tabhairt Aschur Struchtúrtha isteach san API i dhá fhoirm: 

1. Glao feidhme: Tá Aschur Struchtúrtha trí tools ar fáil trí strict: true a shocrú laistigh de do shainmhíniú feidhme. Oibríonn an ghné seo le gach samhail a thacaíonn le huirlisí, lena n-áirítear gach samhail gpt-4-0613 agus gpt-3.5-turbo-0613 agus níos déanaí. Nuair a chumasaítear Aschur Struchtúrtha, meaitseálfaidh aschuir na samhla an sainmhíniú uirlise a soláthraíodh.

JSON

1
POST /v1/chat/completions
2
{
3
"model": "gpt-4o-2024-08-06",
4
"messages": [
5
{
6
"role": "system",
7
"content": "You are a helpful assistant. The current date is August 6, 2024. You help users query for the data they are looking for by calling the query function."
8
},
9
{
10
"role": "user",
11
"content": "look up all my orders in may of last year that were fulfilled but not delivered on time"
12
}
13
],
14
"tools": [
15
{
16
"type": "function",
17
"function": {
18
"name": "query",
19
"description": "Execute a query.",
20
"strict": true,
21
"parameters": {
22
"type": "object",
23
"properties": {
24
"table_name": {
25
"type": "string",
26
"enum": ["orders"]
27
},
28
"columns": {
29
"type": "array",
30
"items": {
31
"type": "string",
32
"enum": [
33
"id",
34
"status",
35
"expected_delivery_date",
36
"delivered_at",
37
"shipped_at",
38
"ordered_at",
39
"canceled_at"
40
]
41
}
42
},
43
"conditions": {
44
"type": "array",
45
"items": {
46
"type": "object",
47
"properties": {
48
"column": {
49
"type": "string"
50
},
51
"operator": {
52
"type": "string",
53
"enum": ["=", ">", "<", ">=", "<=", "!="]
54
},
55
"value": {
56
"anyOf": [
57
{
58
"type": "string"
59
},
60
{
61
"type": "number"
62
},
63
{
64
"type": "object",
65
"properties": {
66
"column_name": {
67
"type": "string"
68
}
69
},
70
"required": ["column_name"],
71
"additionalProperties": false
72
}
73
]
74
}
75
},
76
"required": ["column", "operator", "value"],
77
"additionalProperties": false
78
}
79
},
80
"order_by": {
81
"type": "string",
82
"enum": ["asc", "desc"]
83
}
84
},
85
"required": ["table_name", "columns", "conditions", "order_by"],
86
"additionalProperties": false
87
}
88
}
89
}
90
]
91
}

2. Rogha nua don pharaiméadar response_format: is féidir le forbróirí Scéimre JSON a sholáthar anois trí json_schema, rogha nua don pharaiméadar response_format. Tá sé seo úsáideach nuair nach bhfuil an tsamhail ag glaoch uirlise, ach ag freagairt don úsáideoir ar bhealach struchtúrtha. Oibríonn an ghné seo lenár samhlacha GPT‑4o is nuaí: gpt-4o-2024-08-06, a eisíodh inniu, agus gpt-4o-mini-2024-07-18. Nuair a sholáthraítear response_format le strict: true, meaitseálfaidh aschuir na samhla an scéimre a soláthraíodh.

Iarratas

1
POST /v1/chat/completions
2
{
3
"model": "gpt-4o-2024-08-06",
4
"messages": [
5
{
6
"role": "system",
7
"content": "You are a helpful math tutor."
8
},
9
{
10
"role": "user",
11
"content": "solve 8x + 31 = 2"
12
}
13
],
14
"response_format": {
15
"type": "json_schema",
16
"json_schema": {
17
"name": "math_response",
18
"strict": true,
19
"schema": {
20
"type": "object",
21
"properties": {
22
"steps": {
23
"type": "array",
24
"items": {
25
"type": "object",
26
"properties": {
27
"explanation": {
28
"type": "string"
29
},
30
"output": {
31
"type": "string"
32
}
33
},
34
"required": ["explanation", "output"],
35
"additionalProperties": false
36
}
37
},
38
"final_answer": {
39
"type": "string"
40
}
41
},
42
"required": ["steps", "final_answer"],
43
"additionalProperties": false
44
}
45
}
46
}
47
}

Aschur Struchtúrtha sábháilte

Is tosaíocht den chéad scoth í an tsábháilteacht do OpenAI—cloífidh an fheidhmiúlacht nua Aschuir Struchtúrtha lenár mbeartais sábháilteachta reatha agus ligfidh sí fós don tsamhail iarratas neamhshábháilte a dhiúltú. Chun forbairt a dhéanamh níos simplí, tá luach teaghráin nua refusal ar fhreagraí API a chuireann ar chumas forbróirí a bhrath go ríomhchláraithe an bhfuil diúltú ginte ag an tsamhail in ionad aschuir a mheaitseálann an scéimre. Nuair nach n-áirítear diúltú sa fhreagra agus nuair nár cuireadh isteach roimh am ar fhreagra na samhla (mar a léirítear le finish_reason), ansin tabharfaidh freagra na samhla JSON bailí ar a mbeidh meaitseáil iontaofa leis an scéimre a soláthraíodh.

JSON

1
{
2
"id": "chatcmpl-9nYAG9LPNonX8DAyrkwYfemr3C8HC",
3
"object": "chat.completion",
4
"created": 1721596428,
5
"model": "gpt-4o-2024-08-06",
6
"choices": [
7
{
8
"index": 0,
9
"message": {
10
"role": "assistant",
11
"refusal": "I'm sorry, I cannot assist with that request."
12
},
13
"logprobs": null,
14
"finish_reason": "stop"
15
}
16
],
17
"usage": {
18
"prompt_tokens": 81,
19
"completion_tokens": 11,
20
"total_tokens": 92
21
},
22
"system_fingerprint": "fp_3407719c7f"
23
}

Tacaíocht dhúchasach SDK

Nuashonraíodh ár SDKanna Python agus Node le tacaíocht dhúchasach d’Aschur Struchtúrtha. Tá sé chomh héasca scéimre a sholáthar d’uirlisí nó mar fhormáid freagartha le hoibiacht Pydantic nó Zod a sholáthar, agus láimhseálfaidh ár SDKanna an cineál sonraí a thiontú go scéimre JSON a dtacaítear léi, an freagra JSON a dhísrathú isteach sa struchtúr sonraí clóscríofa go huathoibríoch, agus diúltuithe a pharsáil má thagann siad chun cinn.

Taispeánann na samplaí seo a leanas tacaíocht dhúchasach d’Aschur Struchtúrtha le glao feidhme.

Python

1
from enum import Enum
2
from typing import Union
3

4
from pydantic import BaseModel
5

6
import openai
7
from openai import OpenAI
8

9

10
class Table(str, Enum):
11
orders = "orders"
12
customers = "customers"
13
products = "products"
14

15

16
class Column(str, Enum):
17
id = "id"
18
status = "status"
19
expected_delivery_date = "expected_delivery_date"
20
delivered_at = "delivered_at"
21
shipped_at = "shipped_at"
22
ordered_at = "ordered_at"
23
canceled_at = "canceled_at"
24

25

26
class Operator(str, Enum):
27
eq = "="
28
gt = ">"
29
lt = "<"
30
le = "<="
31
ge = ">="
32
ne = "!="
33

34

35
class OrderBy(str, Enum):
36
asc = "asc"
37
desc = "desc"
38

39

40
class DynamicValue(BaseModel):
41
column_name: str
42

43

44
class Condition(BaseModel):
45
column: str
46
operator: Operator
47
value: Union[str, int, DynamicValue]
48

49

50
class Query(BaseModel):
51
table_name: Table
52
columns: list[Column]
53
conditions: list[Condition]
54
order_by: OrderBy
55

56

57
client = OpenAI()
58

59
completion = client.beta.chat.completions.parse(
60
model="gpt-4o-2024-08-06",
61
messages=[
62
{
63
"role": "system",
64
"content": "You are a helpful assistant. The current date is August 6, 2024. You help users query for the data they are looking for by calling the query function.",
65
},
66
{
67
"role": "user",
68
"content": "look up all my orders in may of last year that were fulfilled but not delivered on time",
69
},
70
],
71
tools=[
72
openai.pydantic_function_tool(Query),
73
],
74
)
75

76
print(completion.choices[0].message.tool_calls[0].function.parsed_arguments)

Tá tacaíocht dhúchasach d’Aschur Struchtúrtha ar fáil freisin do response_format.

Python

1
from pydantic import BaseModel
2

3
from openai import OpenAI
4

5

6
class Step(BaseModel):
7
explanation: str
8
output: str
9

10

11
class MathResponse(BaseModel):
12
steps: list[Step]
13
final_answer: str
14

15

16
client = OpenAI()
17

18
completion = client.beta.chat.completions.parse(
19
model="gpt-4o-2024-08-06",
20
messages=[
21
{"role": "system", "content": "You are a helpful math tutor."},
22
{"role": "user", "content": "solve 8x + 31 = 2"},
23
],
24
response_format=MathResponse,
25
)
26

27
message = completion.choices[0].message
28
if message.parsed:
29
print(message.parsed.steps)
30
print(message.parsed.final_answer)
31
else:
32
print(message.refusal)

Cásanna úsáide breise

Is minic a úsáideann forbróirí samhlacha OpenAI chun sonraí struchtúrtha a ghiniúint do chásanna úsáide éagsúla. I measc roinnt samplaí breise tá:

Comhéadain úsáideora a ghiniúint go dinimiciúil bunaithe ar rún an úsáideora

Mar shampla, is féidir le forbróirí Aschur Struchtúrtha a úsáid chun feidhmchláir a chruthú a ghineann cód nó comhéadain úsáideora. Úsáideann na samplaí seo a leanas go léir an response_format céanna, agus is féidir iad a úsáid chun comhéadain úsáideora éagsúla a ghiniúint bunaithe ar ionchur úsáideora.

Córas
Is cúntóir comhéadan úsáideora thú. Is é do phost cabhrú le húsáideoirí a gcuid smaointe do shuíomh gréasáin agus d’aip a shamhlú.
Formáid freagartha
Cúntóir
1
{
2
"type": "div",
3
"label": "",
4
"children": [
5
{
6
"type": "header",
7
"label": "",
8
"children": [
9
{
10
"type": "div",
11
"label": "Green Thumb Gardening",
12
"children": [],
13
"attributes": [{ "name": "className", "value": "site-title" }]
14
},
15
{
16
"type": "div",
17
"label": "Bringing Life to Your Garden",
18
"children": [],
19
"attributes": [{ "name": "className", "value": "site-tagline" }]
20
}
21
],
22
"attributes": [{ "name": "className", "value": "header" }]
23
},
24
{
25
"type": "section",
26
"label": "",
27
"children": [
28
{
29
"type": "div",
30
"label": "",
31
"children": [
32
{
33
"type": "div",
34
"label": "About Us",
35
"children": [
36
{
37
"type": "div",
38
"label": "At Green Thumb Gardening, we specialize in transforming your outdoor spaces into beautiful, thriving gardens. Our team has decades of experience in horticulture and landscape design.",
39
"children": [],
40
"attributes": [
41
{ "name": "className", "value": "about-description" }
42
]
43
}
44
],
45
"attributes": [{ "name": "className", "value": "about-section" }]
46
}
47
],
48
"attributes": [{ "name": "className", "value": "content" }]
49
}
50
],
51
"attributes": [{ "name": "className", "value": "about-container" }]
52
},
53
{
54
"type": "section",
55
"label": "",
56
"children": [
57
{
58
"type": "div",
59
"label": "",
60
"children": [
61
{
62
"type": "div",
63
"label": "Our Services",
64
"children": [
65
{
66
"type": "div",
67
"label": "Garden Design",
68
"children": [],
69
"attributes": [
70
{ "name": "className", "value": "service-item" }
71
]
72
},
73
{
74
"type": "div",
75
"label": "Plant Care & Maintenance",
76
"children": [],
77
"attributes": [
78
{ "name": "className", "value": "service-item" }
79
]
80
},
81
{
82
"type": "div",
83
"label": "Seasonal Cleanup",
84
"children": [],
85
"attributes": [
86
{ "name": "className", "value": "service-item" }
87
]
88
},
89
{
90
"type": "div",
91
"label": "Custom Landscaping",
92
"children": [],
93
"attributes": [
94
{ "name": "className", "value": "service-item" }
95
]
96
}
97
],
98
"attributes": [{ "name": "className", "value": "services-list" }]
99
}
100
],
101
"attributes": [{ "name": "className", "value": "content" }]
102
}
103
],
104
"attributes": [{ "name": "className", "value": "services-container" }]
105
}
106
],
107
"attributes": [{ "name": "className", "value": "landing-page" }]
108
}
109

Welcome to Green Thumb Gardening
Bringing Life to Your Garden
At Green Thumb Gardening, we specialize in transforming your outdoor spaces into beautiful, thriving gardens. Our team has decades of experience in horticulture and landscape design.
Our services
Garden Design
Plant Care & Maintenance
Seasonal Cleanup
Custom Landscaping

Freagra deiridh a scaradh ó réasúnaíocht thacúil nó tráchtaireacht bhreise

D’fhéadfadh sé a bheith úsáideach réimse ar leith a thabhairt don tsamhail le haghaidh chain of thought chun cáilíocht dheiridh an fhreagra a fheabhsú.

JSON

1
{
2
"model": "gpt-4o-2024-08-06",
3
"messages": [
4
{
5
"role": "system",
6
"content": "You are a helpful assistant"
7
},
8
{
9
"role": "user",
10
"content": "9.11 and 9.9 -- which is bigger?"
11
}
12
],
13
"response_format": {
14
"type": "json_schema",
15
"json_schema": {
16
"name": "reasoning_schema",
17
"strict": true,
18
"schema": {
19
"type": "object",
20
"properties": {
21
"reasoning_steps": {
22
"type": "array",
23
"items": {
24
"type": "string"
25
},
26
"description": "The reasoning steps leading to the final conclusion."
27
},
28
"answer": {
29
"type": "string",
30
"description": "The final answer, taking into account the reasoning steps."
31
}
32
},
33
"required": ["reasoning_steps", "answer"],
34
"additionalProperties": false
35
}
36
}
37
}
38
}

Sonraí struchtúrtha a bhaint as sonraí neamhstruchtúrtha

Mar shampla, treoir a thabhairt don tsamhail rudaí cosúil le míreanna le déanamh, dátaí dlite, agus sannacháin a bhaint as nótaí cruinnithe.

JSON

1
POST /v1/chat/completions
2
{
3
"model": "gpt-4o-2024-08-06",
4
"messages": [
5
{
6
"role": "system",
7
"content": "Extract action items, due dates, and owners from meeting notes."
8
},
9
{
10
"role": "user",
11
"content": "...meeting notes go here..."
12
}
13
],
14
"response_format": {
15
"type": "json_schema",
16
"json_schema": {
17
"name": "action_items",
18
"strict": true,
19
"schema": {
20
"type": "object",
21
"properties": {
22
"action_items": {
23
"type": "array",
24
"items": {
25
"type": "object",
26
"properties": {
27
"description": {
28
"type": "string",
29
"description": "Description of the action item."
30
},
31
"due_date": {
32
"type": ["string", "null"],
33
"description": "Due date for the action item, can be null if not specified."
34
},
35
"owner": {
36
"type": ["string", "null"],
37
"description": "Owner responsible for the action item, can be null if not specified."
38
}
39
},
40
"required": ["description", "due_date", "owner"],
41
"additionalProperties": false
42
},
43
"description": "List of action items from the meeting."
44
}
45
},
46
"required": ["action_items"],
47
"additionalProperties": false
48
}
49
}
50
}
51
}

Taobh thiar de na radhairc

Ghlacamar cur chuige dhá chuid chun iontaofacht a fheabhsú d’aschuir samhla a mheaitseálann le Scéimre JSON. Ar dtús, chuireamar oiliúint ar ár samhail is nuaí gpt-4o-2024-08-06 chun scéimrí casta a thuiscint agus conas is fearr aschuir a tháirgeadh a mheaitseálann leo. Mar sin féin, tá iompar samhla neamhdhiongbháilte go bunúsach—in ainneoin fheabhsuithe feidhmíochta na samhla seo (93% ar ár mbinse), níor chomhlíon sí fós an iontaofacht atá de dhíth ar fhorbróirí chun feidhmchláir láidre a thógáil. Mar sin ghlacamar freisin cur chuige innealtóireachta, bunaithe ar dheimhneacht, chun aschuir na samhla a shrianadh agus iontaofacht 100% a bhaint amach.

Díchódú srianta

Tá ár gcur chuige bunaithe ar theicníc ar a dtugtar sampláil srianta nó díchódú srianta. De réir réamhshocraithe, nuair a dhéantar sampláil ar shamhlacha chun aschuir a tháirgeadh, bíonn siad go hiomlán gan srianta agus is féidir leo aon téacschomhartha ón stór focal a roghnú mar an chéad aschur eile. Is í an tsolúbthacht seo a ligeann do shamhlacha botúin a dhéanamh; mar shampla, is gnách go mbíonn siad saor chun téacschomhartha lúib chataí a shampláil am ar bith, fiú nuair nach gcruthódh sé sin JSON bailí. Chun iallach a chur ar aschuir bhailí, srianaimid ár samhlacha do théacschomharthaí amháin a bheadh bailí de réir na scéimre a soláthraíodh, seachas gach téacschomhartha atá ar fáil.

D’fhéadfadh sé a bheith dúshlánach an srianadh seo a chur i bhfeidhm go praiticiúil, ós rud é go n-athraíonn na téacschomharthaí atá bailí ar fud aschur samhla. Abair go bhfuil an scéimre seo a leanas againn:

JSON

1
{
2
"type": "object",
3
"properties": {
4
"value": { "type": "number" }
5
},
6
"required": ["value"],
7
"additionalProperties": false
8
}

I measc na dtéacschomharthaí atá bailí ag tús an aschuir tá rudaí cosúil le {, {“, {
, srl. Mar sin féin, a luaithe is atá {“val sampláilte cheana ag an tsamhail, ní téacschomhartha bailí é { a thuilleadh. Dá bhrí sin, ní mór dúinn díchódú srianta dinimiciúil a chur i bhfeidhm, agus a chinneadh cé na téacschomharthaí atá bailí tar éis gach téacschomhartha a ghiniúint, seachas roimh ré ag tús an fhreagra.

Chun é seo a dhéanamh, tiontaímid an Scéimre JSON a soláthraíodh ina ghramadach shaor ó chomhthéacs (CFG). Is éard is gramadach ann tacar rialacha a shainíonn teanga, agus is gramadach í gramadach shaor ó chomhthéacs a chloíonn le rialacha sonracha. Is féidir leat smaoineamh ar JSON agus ar Scéimre JSON mar theangacha ar leith a bhfuil rialacha acu chun a shainiú cad atá bailí laistigh den teanga. Díreach mar nach bhfuil sé bailí sa Bhéarla abairt a bheith ann gan briathar, níl sé bailí in JSON camóg chríochnaitheach a bheith ann.

Dá bhrí sin, do gach Scéimre JSON, ríomhtar gramadach a léiríonn an scéimre sin, agus réamhphróiseálaimid a comhpháirteanna chun go mbeidh siad inrochtana go héasca le linn samplála na samhla. Sin é an fáth a mbíonn pionós moille ar an gcéad iarratas le scéimre nua—ní mór dúinn an scéimre a réamhphróiseáil chun an déantán seo a ghiniúint gur féidir linn a úsáid go héifeachtach le linn samplála.

Le linn samplála, i ndiaidh gach téacschomhartha, cinnfidh ár n-inneall tátail cé na téacschomharthaí atá bailí le táirgeadh ina dhiaidh sin bunaithe ar na téacschomharthaí a gineadh roimhe seo agus ar na rialacha laistigh den ghramadach a léiríonn cé na téacschomharthaí atá bailí ina dhiaidh sin. Ansin úsáidimid an liosta téacschomharthaí seo chun an chéad chéim samplála eile a mhascadh, rud a íslíonn go héifeachtach dóchúlacht téacschomharthaí neamhbhailí go 0. Toisc go bhfuil an scéimre réamhphróiseáilte againn, is féidir linn struchtúr sonraí i dtaisce a úsáid chun é seo a dhéanamh go héifeachtach, le híosualach moille.

Cur chuige malartacha

Is minic a úsáideann cur chuige malartacha don fhadhb seo innill chríochstaide (FSManna) nó regexanna (a chuirtear i bhfeidhm de ghnáth le FSManna) le haghaidh díchódú srianta. Feidhmíonn siad go comhchosúil sa mhéid is go nuashonraíonn siad go dinimiciúil cé na téacschomharthaí atá bailí tar éis gach téacschomhartha a tháirgeadh, ach tá roinnt príomhdhifríochtaí acu ón gcur chuige CFG. Go háirithe, is féidir le CFGanna aicme níos leithne teangacha a chur in iúl ná mar is féidir le FSManna. Go praiticiúil, ní bhaineann sé seo le scéimrí an-simplí cosúil leis an scéimre value a thaispeántar thuas. Mar sin féin, feicimid go bhfuil an difríocht suntasach do scéimrí níos casta a bhaineann le struchtúir sonraí neadaithe nó athchúrsacha. Mar shampla, ní féidir le FSManna cineálacha athchúrsacha a chur in iúl go ginearálta, rud a chiallaíonn go bhféadfadh cur chuige bunaithe ar FSM streachailt le lúibíní a mheaitseáil in JSON atá neadaithe go domhain. Seo a leanas sampla de scéimre athchúrsach a dtacaítear léi ar OpenAI API le hAschur Struchtúrtha ach nach bhféadfaí a chur in iúl le FSM.

JSON

1
{
2
"name": "ui",
3
"description": "Dynamically generated UI",
4
"strict": true,
5
"schema": {
6
"type": "object",
7
"properties": {
8
"type": {
9
"type": "string",
10
"description": "The type of the UI component",
11
"enum": ["div", "button", "header", "section", "field", "form"]
12
},
13
"label": {
14
"type": "string",
15
"description": "The label of the UI component, used for buttons or form fields"
16
},
17
"children": {
18
"type": "array",
19
"description": "Nested UI components",
20
"items": {
21
"$ref": "#"
22
}
23
},
24
"attributes": {
25
"type": "array",
26
"description": "Arbitrary attributes for the UI component, suitable for any element",
27
"items": {
28
"type": "object",
29
"properties": {
30
"name": {
31
"type": "string",
32
"description": "The name of the attribute, for example onClick or className"
33
},
34
"value": {
35
"type": "string",
36
"description": "The value of the attribute"
37
}
38
}
39
}
40
}
41
},
42
"required": ["type", "label", "children", "attributes"],
43
"additionalProperties": false
44
}
45
}

Tabhair faoi deara gur féidir le páistí treallacha a bheith ag gach eilimint UI a dhéanann tagairt don fhréamhscéimre go hathchúrsach. Is é an cur chuige CFG a chuireann an tsolúbthacht seo ar fáil.

Teorainneacha agus srianta

Tá cúpla teorainn le coinneáil i gcuimhne agus Aschur Struchtúrtha á úsáid:

  • Ní cheadaíonn Aschur Struchtúrtha ach fo-thacar de Scéimre JSON, mionsonraithe inár gcáipéisí(osclaíonn i bhfuinneog nua). Cuidíonn sé seo linn an fheidhmíocht is fearr is féidir a chinntiú.
  • Beidh moill bhreise ar an gcéad fhreagra API le scéimre nua, ach beidh freagraí ina dhiaidh sin tapa gan phionós moille. Is é sin toisc go bpróiseálaimid an scéimre le linn an chéad iarratais mar a léirítear thuas agus ansin go gcuirimid na déantáin seo i dtaisce le haghaidh athúsáide tapa níos déanaí. Tógann sé níos lú ná 10 soicind de ghnáth gnáthscéimrí a phróiseáil ar an gcéad iarratas, ach d’fhéadfadh sé suas le nóiméad a thógáil le scéimrí níos casta.
  • D’fhéadfadh sé go dteipfeadh ar an tsamhail an scéimre a leanúint má roghnaíonn an tsamhail iarratas neamhshábháilte a dhiúltú. Má roghnaíonn sí diúltú, beidh an luach Booleach refusal socraithe go true sa teachtaireacht fillte chun é seo a chur in iúl. 
  • D’fhéadfadh sé go dteipfeadh ar an tsamhail an scéimre a leanúint má shroicheann an ghiniúint max_tokens nó coinníoll stad eile sula gcríochnaíonn sí. 
  • Ní choisceann Aschur Struchtúrtha gach cineál botúin samhla. Mar shampla, d’fhéadfadh an tsamhail botúin a dhéanamh fós laistigh de luachanna an oibiachta JSON (m.sh., céim a fháil mícheart i gcothromóid mhatamaiticiúil). Má aimsíonn forbróirí botúin, molaimid samplaí a sholáthar sna treoracha córais nó tascanna a roinnt ina bhfo-thascanna níos simplí.
  • Níl Aschur Struchtúrtha comhoiriúnach le glaonna feidhme comhthreomhara. Nuair a ghintear glao feidhme comhthreomhar, d’fhéadfadh sé nach meaitseálfadh sé leis na scéimrí a soláthraíodh. Socraigh parallel_tool_calls: false chun glao feidhme comhthreomhar a dhíchumasú.
  • Níl Scéimrí JSON a sholáthraítear le hAschur Struchtúrtha incháilithe do gan coinneáil sonraí(osclaíonn i bhfuinneog nua) (ZDR).

Infhaighteacht

Tá Aschur Struchtúrtha ar fáil go ginearálta san API inniu. 

Tá Aschur Struchtúrtha le glao feidhme ar fáil ar gach samhail a thacaíonn le glao feidhme san API. Áirítear leis seo na samhlacha is nuaí againn (
gpt-4o, gpt-4o-mini), gach samhail ó gpt-4-0613 agus gpt-3.5-turbo-0613 ar aghaidh, agus aon samhlacha mionchoigeartaithe a thacaíonn le glao feidhme. Tá an fheidhmiúlacht seo ar fáil ar an API Críochnuithe Comhráite, API Assistants, agus Batch API. Tá Aschur Struchtúrtha le glao feidhme comhoiriúnach freisin le hionchuir fhíse.

Tá Aschur Struchtúrtha le formáidí freagartha ar fáil ar
gpt-4o-mini agus gpt-4o-2024-08-06 agus ar aon mhionchoigeartuithe atá bunaithe ar na samhlacha seo. Tá an fheidhmiúlacht seo ar fáil ar an API Críochnuithe Comhráite, API Assistants, agus Batch API. Tá Aschur Struchtúrtha le formáidí freagartha comhoiriúnach freisin le hionchuir fhíse. 

Trí aistriú chuig an
gpt-4o-2024-08-06 nua, sábhálann forbróirí 50% ar ionchuir ($2.50/1M téacschomhartha ionchuir) agus 33% ar aschuir ($10.00/1M téacschomhartha aschuir) i gcomparáid le gpt-4o-2024-05-13.

Chun tús a chur le hAschur Struchtúrtha a úsáid, féach ar ár
gcáipéisí(osclaíonn i bhfuinneog nua)

Admhálacha

Údar

Michelle Pokrass

Príomh-rannpháirtithe

Chris Colby, Melody Guan, Michelle Pokrass, Ted Sanders, Brian Zhang

Admhálacha

John Allard, Filipe de Avila Belbute Peres, Ilan Bigio, Owen Campbell-Moore, Chen Ding, Atty Eleti, Elie Georges, Katia Gil Guzman, Jeff Harris, Johannes Heidecke, Beth Hoover, Romain Huet, Tomer Kaftan, Jillian Khoo, Karolis Kosas, Ryan Liu, Kevin Lu, Lindsay McCallum, Rohan Nuttall, Joe Palermo, Leher Pathak, Ishaan Singal, Felipe Petroski Such, Freddie Sulit, David Weedon