langfx.js 0.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/NOTICE +11 -0
- package/README.md +107 -0
- package/dist/agentic.d.ts +128 -0
- package/dist/agentic.js +265 -0
- package/dist/agentic.js.map +1 -0
- package/dist/cache.d.ts +32 -0
- package/dist/cache.js +135 -0
- package/dist/cache.js.map +1 -0
- package/dist/cancellation.d.ts +9 -0
- package/dist/cancellation.js +70 -0
- package/dist/cancellation.js.map +1 -0
- package/dist/errors.d.ts +40 -0
- package/dist/errors.js +44 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/json-stream.d.ts +73 -0
- package/dist/json-stream.js +222 -0
- package/dist/json-stream.js.map +1 -0
- package/dist/langfunc.d.ts +20 -0
- package/dist/langfunc.js +28 -0
- package/dist/langfunc.js.map +1 -0
- package/dist/language-model.d.ts +78 -0
- package/dist/language-model.js +218 -0
- package/dist/language-model.js.map +1 -0
- package/dist/llms/anthropic.d.ts +30 -0
- package/dist/llms/anthropic.js +365 -0
- package/dist/llms/anthropic.js.map +1 -0
- package/dist/llms/gemini.d.ts +34 -0
- package/dist/llms/gemini.js +380 -0
- package/dist/llms/gemini.js.map +1 -0
- package/dist/llms/images.d.ts +10 -0
- package/dist/llms/images.js +43 -0
- package/dist/llms/images.js.map +1 -0
- package/dist/llms/index.d.ts +7 -0
- package/dist/llms/index.js +4 -0
- package/dist/llms/index.js.map +1 -0
- package/dist/llms/openai.d.ts +30 -0
- package/dist/llms/openai.js +398 -0
- package/dist/llms/openai.js.map +1 -0
- package/dist/llms/transport.d.ts +4 -0
- package/dist/llms/transport.js +90 -0
- package/dist/llms/transport.js.map +1 -0
- package/dist/mapping.d.ts +71 -0
- package/dist/mapping.js +190 -0
- package/dist/mapping.js.map +1 -0
- package/dist/message.d.ts +56 -0
- package/dist/message.js +86 -0
- package/dist/message.js.map +1 -0
- package/dist/python-preview.d.ts +24 -0
- package/dist/python-preview.js +368 -0
- package/dist/python-preview.js.map +1 -0
- package/dist/python-stream.d.ts +15 -0
- package/dist/python-stream.js +29 -0
- package/dist/python-stream.js.map +1 -0
- package/dist/python.d.ts +85 -0
- package/dist/python.js +728 -0
- package/dist/python.js.map +1 -0
- package/dist/query.d.ts +31 -0
- package/dist/query.js +151 -0
- package/dist/query.js.map +1 -0
- package/dist/retry.d.ts +12 -0
- package/dist/retry.js +56 -0
- package/dist/retry.js.map +1 -0
- package/dist/schema/zod.d.ts +4 -0
- package/dist/schema/zod.js +7 -0
- package/dist/schema/zod.js.map +1 -0
- package/dist/schema.d.ts +10 -0
- package/dist/schema.js +7 -0
- package/dist/schema.js.map +1 -0
- package/dist/template.d.ts +14 -0
- package/dist/template.js +75 -0
- package/dist/template.js.map +1 -0
- package/dist/testing/index.d.ts +33 -0
- package/dist/testing/index.js +56 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/tool-call.d.ts +27 -0
- package/dist/tool-call.js +16 -0
- package/dist/tool-call.js.map +1 -0
- package/dist/tools.d.ts +43 -0
- package/dist/tools.js +155 -0
- package/dist/tools.js.map +1 -0
- package/docs/ANTHROPIC.md +43 -0
- package/docs/API_DESIGN.md +200 -0
- package/docs/GEMINI.md +68 -0
- package/docs/IMPLEMENTATION_STATUS.md +77 -0
- package/docs/LIVE_TESTING.md +24 -0
- package/docs/MAPPING.md +54 -0
- package/docs/OPENAI.md +40 -0
- package/docs/PORTING_PLAN.md +135 -0
- package/docs/PROMPT_PARITY.md +379 -0
- package/docs/PYTHON_PROTOCOL.md +109 -0
- package/docs/PYTHON_PROTOCOL_PARITY.md +964 -0
- package/docs/PYTHON_SCHEMA_EVALUATION.md +93 -0
- package/docs/PYTHON_STREAMING_PARITY.md +59 -0
- package/docs/RELEASING.md +25 -0
- package/docs/RETRIES_AND_CACHE.md +56 -0
- package/docs/SESSION_EVENTS.md +40 -0
- package/docs/SOURCE_AUDIT.md +133 -0
- package/docs/STREAMING.md +76 -0
- package/docs/TOOL_STREAMING.md +31 -0
- package/package.json +95 -0
|
@@ -0,0 +1,964 @@
|
|
|
1
|
+
# Python-protocol parity
|
|
2
|
+
|
|
3
|
+
Captured Python commit: `504233a5c4a10e45684530ff58d7e2bd9d8ae58e` (clean); Python 3.14.0.
|
|
4
|
+
|
|
5
|
+
The capture executes default Python lf.query with fake model responses and independently checks LfQuery.render/parse_result. The JS check uses the same responses with equivalent explicitly registered classes. No inference or credentials are used.
|
|
6
|
+
|
|
7
|
+
| Case | Parsed values/class identity | Roles + request | Exact full prompt |
|
|
8
|
+
| --- | --- | --- | --- |
|
|
9
|
+
| integer | PASS | PASS | PASS |
|
|
10
|
+
| class | PASS | PASS | PASS |
|
|
11
|
+
| union-foo | PASS | PASS | PASS |
|
|
12
|
+
| union-bar | PASS | PASS | PASS |
|
|
13
|
+
| nested | PASS | PASS | PASS |
|
|
14
|
+
| few-shot | PASS | PASS | PASS |
|
|
15
|
+
| nullable-list | PASS | PASS | PASS |
|
|
16
|
+
| nested-few-shot | PASS | PASS | PASS |
|
|
17
|
+
| few-shot-system | PASS | PASS | PASS |
|
|
18
|
+
|
|
19
|
+
## Scope and remaining limits
|
|
20
|
+
|
|
21
|
+
- For these captured cases, JS matches Python python:2.0 labels, built-in demonstration, schema declarations, dependency ordering, fences, few-shot formatting, and whitespace exactly.
|
|
22
|
+
- The check asserts complete role/text arrays with no normalization or substitutions. A whitespace mutation is checked to fail equality. Parsed results, class identity, and wrapper behavior are checked independently.
|
|
23
|
+
- This Python checkout rejects bare top-level union annotations in Schema.from_value. Union cases use the equivalent explicit PyGlove ValueSpec, recorded as schemaAdaptation in the fixture. This corrects the earlier assumption that a bare Foo | Bar works on every Python prompt-query path.
|
|
24
|
+
- JS requires explicit pure factories and supports only a bounded data grammar. This comparison does not establish parity for defaults, inheritance, tuples, recursive classes, arbitrary Python code, errors, streaming, or live model quality.
|
|
25
|
+
|
|
26
|
+
## Captures
|
|
27
|
+
|
|
28
|
+
### integer
|
|
29
|
+
|
|
30
|
+
Response: `42`
|
|
31
|
+
|
|
32
|
+
**Python**
|
|
33
|
+
|
|
34
|
+
````text
|
|
35
|
+
[system]
|
|
36
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
37
|
+
|
|
38
|
+
OUTPUT PYTHON TYPE:
|
|
39
|
+
Answer
|
|
40
|
+
|
|
41
|
+
```python
|
|
42
|
+
class Answer:
|
|
43
|
+
final_answer: int
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
REQUEST:
|
|
47
|
+
1 + 1 =
|
|
48
|
+
|
|
49
|
+
OUTPUT PYTHON OBJECT:
|
|
50
|
+
```python
|
|
51
|
+
output = Answer(
|
|
52
|
+
final_answer=2
|
|
53
|
+
)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
OUTPUT PYTHON TYPE:
|
|
57
|
+
int
|
|
58
|
+
|
|
59
|
+
[user]
|
|
60
|
+
REQUEST:
|
|
61
|
+
Return the requested value.
|
|
62
|
+
|
|
63
|
+
OUTPUT PYTHON OBJECT:
|
|
64
|
+
|
|
65
|
+
````
|
|
66
|
+
|
|
67
|
+
**TypeScript**
|
|
68
|
+
|
|
69
|
+
````text
|
|
70
|
+
[system]
|
|
71
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
72
|
+
|
|
73
|
+
OUTPUT PYTHON TYPE:
|
|
74
|
+
Answer
|
|
75
|
+
|
|
76
|
+
```python
|
|
77
|
+
class Answer:
|
|
78
|
+
final_answer: int
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
REQUEST:
|
|
82
|
+
1 + 1 =
|
|
83
|
+
|
|
84
|
+
OUTPUT PYTHON OBJECT:
|
|
85
|
+
```python
|
|
86
|
+
output = Answer(
|
|
87
|
+
final_answer=2
|
|
88
|
+
)
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
OUTPUT PYTHON TYPE:
|
|
92
|
+
int
|
|
93
|
+
|
|
94
|
+
[user]
|
|
95
|
+
REQUEST:
|
|
96
|
+
Return the requested value.
|
|
97
|
+
|
|
98
|
+
OUTPUT PYTHON OBJECT:
|
|
99
|
+
|
|
100
|
+
````
|
|
101
|
+
|
|
102
|
+
### class
|
|
103
|
+
|
|
104
|
+
Response: `Foo(text="hello")`
|
|
105
|
+
|
|
106
|
+
**Python**
|
|
107
|
+
|
|
108
|
+
````text
|
|
109
|
+
[system]
|
|
110
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
111
|
+
|
|
112
|
+
OUTPUT PYTHON TYPE:
|
|
113
|
+
Answer
|
|
114
|
+
|
|
115
|
+
```python
|
|
116
|
+
class Answer:
|
|
117
|
+
final_answer: int
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
REQUEST:
|
|
121
|
+
1 + 1 =
|
|
122
|
+
|
|
123
|
+
OUTPUT PYTHON OBJECT:
|
|
124
|
+
```python
|
|
125
|
+
output = Answer(
|
|
126
|
+
final_answer=2
|
|
127
|
+
)
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
OUTPUT PYTHON TYPE:
|
|
131
|
+
Foo
|
|
132
|
+
|
|
133
|
+
```python
|
|
134
|
+
class Foo:
|
|
135
|
+
text: str
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
[user]
|
|
139
|
+
REQUEST:
|
|
140
|
+
Return the requested value.
|
|
141
|
+
|
|
142
|
+
OUTPUT PYTHON OBJECT:
|
|
143
|
+
|
|
144
|
+
````
|
|
145
|
+
|
|
146
|
+
**TypeScript**
|
|
147
|
+
|
|
148
|
+
````text
|
|
149
|
+
[system]
|
|
150
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
151
|
+
|
|
152
|
+
OUTPUT PYTHON TYPE:
|
|
153
|
+
Answer
|
|
154
|
+
|
|
155
|
+
```python
|
|
156
|
+
class Answer:
|
|
157
|
+
final_answer: int
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
REQUEST:
|
|
161
|
+
1 + 1 =
|
|
162
|
+
|
|
163
|
+
OUTPUT PYTHON OBJECT:
|
|
164
|
+
```python
|
|
165
|
+
output = Answer(
|
|
166
|
+
final_answer=2
|
|
167
|
+
)
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
OUTPUT PYTHON TYPE:
|
|
171
|
+
Foo
|
|
172
|
+
|
|
173
|
+
```python
|
|
174
|
+
class Foo:
|
|
175
|
+
text: str
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
[user]
|
|
179
|
+
REQUEST:
|
|
180
|
+
Return the requested value.
|
|
181
|
+
|
|
182
|
+
OUTPUT PYTHON OBJECT:
|
|
183
|
+
|
|
184
|
+
````
|
|
185
|
+
|
|
186
|
+
### union-foo
|
|
187
|
+
|
|
188
|
+
Response: `Foo(text="hello")`
|
|
189
|
+
|
|
190
|
+
**Python**
|
|
191
|
+
|
|
192
|
+
````text
|
|
193
|
+
[system]
|
|
194
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
195
|
+
|
|
196
|
+
OUTPUT PYTHON TYPE:
|
|
197
|
+
Answer
|
|
198
|
+
|
|
199
|
+
```python
|
|
200
|
+
class Answer:
|
|
201
|
+
final_answer: int
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
REQUEST:
|
|
205
|
+
1 + 1 =
|
|
206
|
+
|
|
207
|
+
OUTPUT PYTHON OBJECT:
|
|
208
|
+
```python
|
|
209
|
+
output = Answer(
|
|
210
|
+
final_answer=2
|
|
211
|
+
)
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
OUTPUT PYTHON TYPE:
|
|
215
|
+
Union[Foo, Bar]
|
|
216
|
+
|
|
217
|
+
```python
|
|
218
|
+
class Foo:
|
|
219
|
+
text: str
|
|
220
|
+
|
|
221
|
+
class Bar:
|
|
222
|
+
count: int
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
[user]
|
|
226
|
+
REQUEST:
|
|
227
|
+
Return the requested value.
|
|
228
|
+
|
|
229
|
+
OUTPUT PYTHON OBJECT:
|
|
230
|
+
|
|
231
|
+
````
|
|
232
|
+
|
|
233
|
+
**TypeScript**
|
|
234
|
+
|
|
235
|
+
````text
|
|
236
|
+
[system]
|
|
237
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
238
|
+
|
|
239
|
+
OUTPUT PYTHON TYPE:
|
|
240
|
+
Answer
|
|
241
|
+
|
|
242
|
+
```python
|
|
243
|
+
class Answer:
|
|
244
|
+
final_answer: int
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
REQUEST:
|
|
248
|
+
1 + 1 =
|
|
249
|
+
|
|
250
|
+
OUTPUT PYTHON OBJECT:
|
|
251
|
+
```python
|
|
252
|
+
output = Answer(
|
|
253
|
+
final_answer=2
|
|
254
|
+
)
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
OUTPUT PYTHON TYPE:
|
|
258
|
+
Union[Foo, Bar]
|
|
259
|
+
|
|
260
|
+
```python
|
|
261
|
+
class Foo:
|
|
262
|
+
text: str
|
|
263
|
+
|
|
264
|
+
class Bar:
|
|
265
|
+
count: int
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
[user]
|
|
269
|
+
REQUEST:
|
|
270
|
+
Return the requested value.
|
|
271
|
+
|
|
272
|
+
OUTPUT PYTHON OBJECT:
|
|
273
|
+
|
|
274
|
+
````
|
|
275
|
+
|
|
276
|
+
### union-bar
|
|
277
|
+
|
|
278
|
+
Response: `output = Bar(count=7)`
|
|
279
|
+
|
|
280
|
+
**Python**
|
|
281
|
+
|
|
282
|
+
````text
|
|
283
|
+
[system]
|
|
284
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
285
|
+
|
|
286
|
+
OUTPUT PYTHON TYPE:
|
|
287
|
+
Answer
|
|
288
|
+
|
|
289
|
+
```python
|
|
290
|
+
class Answer:
|
|
291
|
+
final_answer: int
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
REQUEST:
|
|
295
|
+
1 + 1 =
|
|
296
|
+
|
|
297
|
+
OUTPUT PYTHON OBJECT:
|
|
298
|
+
```python
|
|
299
|
+
output = Answer(
|
|
300
|
+
final_answer=2
|
|
301
|
+
)
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
OUTPUT PYTHON TYPE:
|
|
305
|
+
Union[Foo, Bar]
|
|
306
|
+
|
|
307
|
+
```python
|
|
308
|
+
class Foo:
|
|
309
|
+
text: str
|
|
310
|
+
|
|
311
|
+
class Bar:
|
|
312
|
+
count: int
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
[user]
|
|
316
|
+
REQUEST:
|
|
317
|
+
Return the requested value.
|
|
318
|
+
|
|
319
|
+
OUTPUT PYTHON OBJECT:
|
|
320
|
+
|
|
321
|
+
````
|
|
322
|
+
|
|
323
|
+
**TypeScript**
|
|
324
|
+
|
|
325
|
+
````text
|
|
326
|
+
[system]
|
|
327
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
328
|
+
|
|
329
|
+
OUTPUT PYTHON TYPE:
|
|
330
|
+
Answer
|
|
331
|
+
|
|
332
|
+
```python
|
|
333
|
+
class Answer:
|
|
334
|
+
final_answer: int
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
REQUEST:
|
|
338
|
+
1 + 1 =
|
|
339
|
+
|
|
340
|
+
OUTPUT PYTHON OBJECT:
|
|
341
|
+
```python
|
|
342
|
+
output = Answer(
|
|
343
|
+
final_answer=2
|
|
344
|
+
)
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
OUTPUT PYTHON TYPE:
|
|
348
|
+
Union[Foo, Bar]
|
|
349
|
+
|
|
350
|
+
```python
|
|
351
|
+
class Foo:
|
|
352
|
+
text: str
|
|
353
|
+
|
|
354
|
+
class Bar:
|
|
355
|
+
count: int
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
[user]
|
|
359
|
+
REQUEST:
|
|
360
|
+
Return the requested value.
|
|
361
|
+
|
|
362
|
+
OUTPUT PYTHON OBJECT:
|
|
363
|
+
|
|
364
|
+
````
|
|
365
|
+
|
|
366
|
+
### nested
|
|
367
|
+
|
|
368
|
+
Response: `Group(items=[Foo(text="hi"), Bar(count=2)])`
|
|
369
|
+
|
|
370
|
+
**Python**
|
|
371
|
+
|
|
372
|
+
````text
|
|
373
|
+
[system]
|
|
374
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
375
|
+
|
|
376
|
+
OUTPUT PYTHON TYPE:
|
|
377
|
+
Answer
|
|
378
|
+
|
|
379
|
+
```python
|
|
380
|
+
class Answer:
|
|
381
|
+
final_answer: int
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
REQUEST:
|
|
385
|
+
1 + 1 =
|
|
386
|
+
|
|
387
|
+
OUTPUT PYTHON OBJECT:
|
|
388
|
+
```python
|
|
389
|
+
output = Answer(
|
|
390
|
+
final_answer=2
|
|
391
|
+
)
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
OUTPUT PYTHON TYPE:
|
|
395
|
+
Group
|
|
396
|
+
|
|
397
|
+
```python
|
|
398
|
+
class Foo:
|
|
399
|
+
text: str
|
|
400
|
+
|
|
401
|
+
class Bar:
|
|
402
|
+
count: int
|
|
403
|
+
|
|
404
|
+
class Group:
|
|
405
|
+
items: list[Union[Foo, Bar]]
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
[user]
|
|
409
|
+
REQUEST:
|
|
410
|
+
Return the requested value.
|
|
411
|
+
|
|
412
|
+
OUTPUT PYTHON OBJECT:
|
|
413
|
+
|
|
414
|
+
````
|
|
415
|
+
|
|
416
|
+
**TypeScript**
|
|
417
|
+
|
|
418
|
+
````text
|
|
419
|
+
[system]
|
|
420
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
421
|
+
|
|
422
|
+
OUTPUT PYTHON TYPE:
|
|
423
|
+
Answer
|
|
424
|
+
|
|
425
|
+
```python
|
|
426
|
+
class Answer:
|
|
427
|
+
final_answer: int
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
REQUEST:
|
|
431
|
+
1 + 1 =
|
|
432
|
+
|
|
433
|
+
OUTPUT PYTHON OBJECT:
|
|
434
|
+
```python
|
|
435
|
+
output = Answer(
|
|
436
|
+
final_answer=2
|
|
437
|
+
)
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
OUTPUT PYTHON TYPE:
|
|
441
|
+
Group
|
|
442
|
+
|
|
443
|
+
```python
|
|
444
|
+
class Foo:
|
|
445
|
+
text: str
|
|
446
|
+
|
|
447
|
+
class Bar:
|
|
448
|
+
count: int
|
|
449
|
+
|
|
450
|
+
class Group:
|
|
451
|
+
items: list[Union[Foo, Bar]]
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
[user]
|
|
455
|
+
REQUEST:
|
|
456
|
+
Return the requested value.
|
|
457
|
+
|
|
458
|
+
OUTPUT PYTHON OBJECT:
|
|
459
|
+
|
|
460
|
+
````
|
|
461
|
+
|
|
462
|
+
### few-shot
|
|
463
|
+
|
|
464
|
+
Response: `Bar(count=7)`
|
|
465
|
+
|
|
466
|
+
**Python**
|
|
467
|
+
|
|
468
|
+
````text
|
|
469
|
+
[system]
|
|
470
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
471
|
+
|
|
472
|
+
OUTPUT PYTHON TYPE:
|
|
473
|
+
Answer
|
|
474
|
+
|
|
475
|
+
```python
|
|
476
|
+
class Answer:
|
|
477
|
+
final_answer: int
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
REQUEST:
|
|
481
|
+
1 + 1 =
|
|
482
|
+
|
|
483
|
+
OUTPUT PYTHON OBJECT:
|
|
484
|
+
```python
|
|
485
|
+
output = Answer(
|
|
486
|
+
final_answer=2
|
|
487
|
+
)
|
|
488
|
+
```
|
|
489
|
+
|
|
490
|
+
OUTPUT PYTHON TYPE:
|
|
491
|
+
Union[Foo, Bar]
|
|
492
|
+
|
|
493
|
+
```python
|
|
494
|
+
class Foo:
|
|
495
|
+
text: str
|
|
496
|
+
|
|
497
|
+
class Bar:
|
|
498
|
+
count: int
|
|
499
|
+
```
|
|
500
|
+
|
|
501
|
+
REQUEST:
|
|
502
|
+
Say hello.
|
|
503
|
+
|
|
504
|
+
OUTPUT PYTHON OBJECT:
|
|
505
|
+
```python
|
|
506
|
+
output = Foo(
|
|
507
|
+
text='hello'
|
|
508
|
+
)
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
OUTPUT PYTHON TYPE:
|
|
512
|
+
Union[Foo, Bar]
|
|
513
|
+
|
|
514
|
+
```python
|
|
515
|
+
class Foo:
|
|
516
|
+
text: str
|
|
517
|
+
|
|
518
|
+
class Bar:
|
|
519
|
+
count: int
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
[user]
|
|
523
|
+
REQUEST:
|
|
524
|
+
Return the requested value.
|
|
525
|
+
|
|
526
|
+
OUTPUT PYTHON OBJECT:
|
|
527
|
+
|
|
528
|
+
````
|
|
529
|
+
|
|
530
|
+
**TypeScript**
|
|
531
|
+
|
|
532
|
+
````text
|
|
533
|
+
[system]
|
|
534
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
535
|
+
|
|
536
|
+
OUTPUT PYTHON TYPE:
|
|
537
|
+
Answer
|
|
538
|
+
|
|
539
|
+
```python
|
|
540
|
+
class Answer:
|
|
541
|
+
final_answer: int
|
|
542
|
+
```
|
|
543
|
+
|
|
544
|
+
REQUEST:
|
|
545
|
+
1 + 1 =
|
|
546
|
+
|
|
547
|
+
OUTPUT PYTHON OBJECT:
|
|
548
|
+
```python
|
|
549
|
+
output = Answer(
|
|
550
|
+
final_answer=2
|
|
551
|
+
)
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
OUTPUT PYTHON TYPE:
|
|
555
|
+
Union[Foo, Bar]
|
|
556
|
+
|
|
557
|
+
```python
|
|
558
|
+
class Foo:
|
|
559
|
+
text: str
|
|
560
|
+
|
|
561
|
+
class Bar:
|
|
562
|
+
count: int
|
|
563
|
+
```
|
|
564
|
+
|
|
565
|
+
REQUEST:
|
|
566
|
+
Say hello.
|
|
567
|
+
|
|
568
|
+
OUTPUT PYTHON OBJECT:
|
|
569
|
+
```python
|
|
570
|
+
output = Foo(
|
|
571
|
+
text='hello'
|
|
572
|
+
)
|
|
573
|
+
```
|
|
574
|
+
|
|
575
|
+
OUTPUT PYTHON TYPE:
|
|
576
|
+
Union[Foo, Bar]
|
|
577
|
+
|
|
578
|
+
```python
|
|
579
|
+
class Foo:
|
|
580
|
+
text: str
|
|
581
|
+
|
|
582
|
+
class Bar:
|
|
583
|
+
count: int
|
|
584
|
+
```
|
|
585
|
+
|
|
586
|
+
[user]
|
|
587
|
+
REQUEST:
|
|
588
|
+
Return the requested value.
|
|
589
|
+
|
|
590
|
+
OUTPUT PYTHON OBJECT:
|
|
591
|
+
|
|
592
|
+
````
|
|
593
|
+
|
|
594
|
+
### nullable-list
|
|
595
|
+
|
|
596
|
+
Response: `[Foo(text="hello"), None]`
|
|
597
|
+
|
|
598
|
+
**Python**
|
|
599
|
+
|
|
600
|
+
````text
|
|
601
|
+
[system]
|
|
602
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
603
|
+
|
|
604
|
+
OUTPUT PYTHON TYPE:
|
|
605
|
+
Answer
|
|
606
|
+
|
|
607
|
+
```python
|
|
608
|
+
class Answer:
|
|
609
|
+
final_answer: int
|
|
610
|
+
```
|
|
611
|
+
|
|
612
|
+
REQUEST:
|
|
613
|
+
1 + 1 =
|
|
614
|
+
|
|
615
|
+
OUTPUT PYTHON OBJECT:
|
|
616
|
+
```python
|
|
617
|
+
output = Answer(
|
|
618
|
+
final_answer=2
|
|
619
|
+
)
|
|
620
|
+
```
|
|
621
|
+
|
|
622
|
+
OUTPUT PYTHON TYPE:
|
|
623
|
+
list[Foo | None]
|
|
624
|
+
|
|
625
|
+
```python
|
|
626
|
+
class Foo:
|
|
627
|
+
text: str
|
|
628
|
+
```
|
|
629
|
+
|
|
630
|
+
[user]
|
|
631
|
+
REQUEST:
|
|
632
|
+
Return the requested value.
|
|
633
|
+
|
|
634
|
+
OUTPUT PYTHON OBJECT:
|
|
635
|
+
|
|
636
|
+
````
|
|
637
|
+
|
|
638
|
+
**TypeScript**
|
|
639
|
+
|
|
640
|
+
````text
|
|
641
|
+
[system]
|
|
642
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
643
|
+
|
|
644
|
+
OUTPUT PYTHON TYPE:
|
|
645
|
+
Answer
|
|
646
|
+
|
|
647
|
+
```python
|
|
648
|
+
class Answer:
|
|
649
|
+
final_answer: int
|
|
650
|
+
```
|
|
651
|
+
|
|
652
|
+
REQUEST:
|
|
653
|
+
1 + 1 =
|
|
654
|
+
|
|
655
|
+
OUTPUT PYTHON OBJECT:
|
|
656
|
+
```python
|
|
657
|
+
output = Answer(
|
|
658
|
+
final_answer=2
|
|
659
|
+
)
|
|
660
|
+
```
|
|
661
|
+
|
|
662
|
+
OUTPUT PYTHON TYPE:
|
|
663
|
+
list[Foo | None]
|
|
664
|
+
|
|
665
|
+
```python
|
|
666
|
+
class Foo:
|
|
667
|
+
text: str
|
|
668
|
+
```
|
|
669
|
+
|
|
670
|
+
[user]
|
|
671
|
+
REQUEST:
|
|
672
|
+
Return the requested value.
|
|
673
|
+
|
|
674
|
+
OUTPUT PYTHON OBJECT:
|
|
675
|
+
|
|
676
|
+
````
|
|
677
|
+
|
|
678
|
+
### nested-few-shot
|
|
679
|
+
|
|
680
|
+
Response: `Group(items=[Bar(count=2)])`
|
|
681
|
+
|
|
682
|
+
**Python**
|
|
683
|
+
|
|
684
|
+
````text
|
|
685
|
+
[system]
|
|
686
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
687
|
+
|
|
688
|
+
OUTPUT PYTHON TYPE:
|
|
689
|
+
Answer
|
|
690
|
+
|
|
691
|
+
```python
|
|
692
|
+
class Answer:
|
|
693
|
+
final_answer: int
|
|
694
|
+
```
|
|
695
|
+
|
|
696
|
+
REQUEST:
|
|
697
|
+
1 + 1 =
|
|
698
|
+
|
|
699
|
+
OUTPUT PYTHON OBJECT:
|
|
700
|
+
```python
|
|
701
|
+
output = Answer(
|
|
702
|
+
final_answer=2
|
|
703
|
+
)
|
|
704
|
+
```
|
|
705
|
+
|
|
706
|
+
OUTPUT PYTHON TYPE:
|
|
707
|
+
Group
|
|
708
|
+
|
|
709
|
+
```python
|
|
710
|
+
class Foo:
|
|
711
|
+
text: str
|
|
712
|
+
|
|
713
|
+
class Bar:
|
|
714
|
+
count: int
|
|
715
|
+
|
|
716
|
+
class Group:
|
|
717
|
+
items: list[Union[Foo, Bar]]
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
REQUEST:
|
|
721
|
+
A group.
|
|
722
|
+
|
|
723
|
+
OUTPUT PYTHON OBJECT:
|
|
724
|
+
```python
|
|
725
|
+
output = Group(
|
|
726
|
+
items=[Foo(
|
|
727
|
+
text='hi'
|
|
728
|
+
), Bar(
|
|
729
|
+
count=2
|
|
730
|
+
)]
|
|
731
|
+
)
|
|
732
|
+
```
|
|
733
|
+
|
|
734
|
+
OUTPUT PYTHON TYPE:
|
|
735
|
+
Group
|
|
736
|
+
|
|
737
|
+
```python
|
|
738
|
+
class Foo:
|
|
739
|
+
text: str
|
|
740
|
+
|
|
741
|
+
class Bar:
|
|
742
|
+
count: int
|
|
743
|
+
|
|
744
|
+
class Group:
|
|
745
|
+
items: list[Union[Foo, Bar]]
|
|
746
|
+
```
|
|
747
|
+
|
|
748
|
+
[user]
|
|
749
|
+
REQUEST:
|
|
750
|
+
Return the requested value.
|
|
751
|
+
|
|
752
|
+
OUTPUT PYTHON OBJECT:
|
|
753
|
+
|
|
754
|
+
````
|
|
755
|
+
|
|
756
|
+
**TypeScript**
|
|
757
|
+
|
|
758
|
+
````text
|
|
759
|
+
[system]
|
|
760
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
761
|
+
|
|
762
|
+
OUTPUT PYTHON TYPE:
|
|
763
|
+
Answer
|
|
764
|
+
|
|
765
|
+
```python
|
|
766
|
+
class Answer:
|
|
767
|
+
final_answer: int
|
|
768
|
+
```
|
|
769
|
+
|
|
770
|
+
REQUEST:
|
|
771
|
+
1 + 1 =
|
|
772
|
+
|
|
773
|
+
OUTPUT PYTHON OBJECT:
|
|
774
|
+
```python
|
|
775
|
+
output = Answer(
|
|
776
|
+
final_answer=2
|
|
777
|
+
)
|
|
778
|
+
```
|
|
779
|
+
|
|
780
|
+
OUTPUT PYTHON TYPE:
|
|
781
|
+
Group
|
|
782
|
+
|
|
783
|
+
```python
|
|
784
|
+
class Foo:
|
|
785
|
+
text: str
|
|
786
|
+
|
|
787
|
+
class Bar:
|
|
788
|
+
count: int
|
|
789
|
+
|
|
790
|
+
class Group:
|
|
791
|
+
items: list[Union[Foo, Bar]]
|
|
792
|
+
```
|
|
793
|
+
|
|
794
|
+
REQUEST:
|
|
795
|
+
A group.
|
|
796
|
+
|
|
797
|
+
OUTPUT PYTHON OBJECT:
|
|
798
|
+
```python
|
|
799
|
+
output = Group(
|
|
800
|
+
items=[Foo(
|
|
801
|
+
text='hi'
|
|
802
|
+
), Bar(
|
|
803
|
+
count=2
|
|
804
|
+
)]
|
|
805
|
+
)
|
|
806
|
+
```
|
|
807
|
+
|
|
808
|
+
OUTPUT PYTHON TYPE:
|
|
809
|
+
Group
|
|
810
|
+
|
|
811
|
+
```python
|
|
812
|
+
class Foo:
|
|
813
|
+
text: str
|
|
814
|
+
|
|
815
|
+
class Bar:
|
|
816
|
+
count: int
|
|
817
|
+
|
|
818
|
+
class Group:
|
|
819
|
+
items: list[Union[Foo, Bar]]
|
|
820
|
+
```
|
|
821
|
+
|
|
822
|
+
[user]
|
|
823
|
+
REQUEST:
|
|
824
|
+
Return the requested value.
|
|
825
|
+
|
|
826
|
+
OUTPUT PYTHON OBJECT:
|
|
827
|
+
|
|
828
|
+
````
|
|
829
|
+
|
|
830
|
+
### few-shot-system
|
|
831
|
+
|
|
832
|
+
Response: `Foo(text="done")`
|
|
833
|
+
|
|
834
|
+
**Python**
|
|
835
|
+
|
|
836
|
+
````text
|
|
837
|
+
[system]
|
|
838
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
839
|
+
|
|
840
|
+
OUTPUT PYTHON TYPE:
|
|
841
|
+
Answer
|
|
842
|
+
|
|
843
|
+
```python
|
|
844
|
+
class Answer:
|
|
845
|
+
final_answer: int
|
|
846
|
+
```
|
|
847
|
+
|
|
848
|
+
REQUEST:
|
|
849
|
+
1 + 1 =
|
|
850
|
+
|
|
851
|
+
OUTPUT PYTHON OBJECT:
|
|
852
|
+
```python
|
|
853
|
+
output = Answer(
|
|
854
|
+
final_answer=2
|
|
855
|
+
)
|
|
856
|
+
```
|
|
857
|
+
|
|
858
|
+
OUTPUT PYTHON TYPE:
|
|
859
|
+
Union[Foo, Bar]
|
|
860
|
+
|
|
861
|
+
```python
|
|
862
|
+
class Foo:
|
|
863
|
+
text: str
|
|
864
|
+
|
|
865
|
+
class Bar:
|
|
866
|
+
count: int
|
|
867
|
+
```
|
|
868
|
+
|
|
869
|
+
REQUEST:
|
|
870
|
+
Say hello.
|
|
871
|
+
|
|
872
|
+
OUTPUT PYTHON OBJECT:
|
|
873
|
+
```python
|
|
874
|
+
output = Foo(
|
|
875
|
+
text='hello'
|
|
876
|
+
)
|
|
877
|
+
```
|
|
878
|
+
|
|
879
|
+
OUTPUT PYTHON TYPE:
|
|
880
|
+
Union[Foo, Bar]
|
|
881
|
+
|
|
882
|
+
```python
|
|
883
|
+
class Foo:
|
|
884
|
+
text: str
|
|
885
|
+
|
|
886
|
+
class Bar:
|
|
887
|
+
count: int
|
|
888
|
+
```
|
|
889
|
+
|
|
890
|
+
Be concise.
|
|
891
|
+
|
|
892
|
+
[user]
|
|
893
|
+
REQUEST:
|
|
894
|
+
Return the requested value.
|
|
895
|
+
|
|
896
|
+
OUTPUT PYTHON OBJECT:
|
|
897
|
+
|
|
898
|
+
````
|
|
899
|
+
|
|
900
|
+
**TypeScript**
|
|
901
|
+
|
|
902
|
+
````text
|
|
903
|
+
[system]
|
|
904
|
+
Please respond to the last REQUEST with OUTPUT PYTHON OBJECT only according to OUTPUT PYTHON TYPE.
|
|
905
|
+
|
|
906
|
+
OUTPUT PYTHON TYPE:
|
|
907
|
+
Answer
|
|
908
|
+
|
|
909
|
+
```python
|
|
910
|
+
class Answer:
|
|
911
|
+
final_answer: int
|
|
912
|
+
```
|
|
913
|
+
|
|
914
|
+
REQUEST:
|
|
915
|
+
1 + 1 =
|
|
916
|
+
|
|
917
|
+
OUTPUT PYTHON OBJECT:
|
|
918
|
+
```python
|
|
919
|
+
output = Answer(
|
|
920
|
+
final_answer=2
|
|
921
|
+
)
|
|
922
|
+
```
|
|
923
|
+
|
|
924
|
+
OUTPUT PYTHON TYPE:
|
|
925
|
+
Union[Foo, Bar]
|
|
926
|
+
|
|
927
|
+
```python
|
|
928
|
+
class Foo:
|
|
929
|
+
text: str
|
|
930
|
+
|
|
931
|
+
class Bar:
|
|
932
|
+
count: int
|
|
933
|
+
```
|
|
934
|
+
|
|
935
|
+
REQUEST:
|
|
936
|
+
Say hello.
|
|
937
|
+
|
|
938
|
+
OUTPUT PYTHON OBJECT:
|
|
939
|
+
```python
|
|
940
|
+
output = Foo(
|
|
941
|
+
text='hello'
|
|
942
|
+
)
|
|
943
|
+
```
|
|
944
|
+
|
|
945
|
+
OUTPUT PYTHON TYPE:
|
|
946
|
+
Union[Foo, Bar]
|
|
947
|
+
|
|
948
|
+
```python
|
|
949
|
+
class Foo:
|
|
950
|
+
text: str
|
|
951
|
+
|
|
952
|
+
class Bar:
|
|
953
|
+
count: int
|
|
954
|
+
```
|
|
955
|
+
|
|
956
|
+
Be concise.
|
|
957
|
+
|
|
958
|
+
[user]
|
|
959
|
+
REQUEST:
|
|
960
|
+
Return the requested value.
|
|
961
|
+
|
|
962
|
+
OUTPUT PYTHON OBJECT:
|
|
963
|
+
|
|
964
|
+
````
|