gemi 0.64.0 → 0.66.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/dist/ai/Agent.d.ts +128 -1
- package/dist/ai/Agent.d.ts.map +1 -1
- package/dist/ai/AgentController.d.ts +75 -6
- package/dist/ai/AgentController.d.ts.map +1 -1
- package/dist/ai/AgentProvider.d.ts +13 -45
- package/dist/ai/AgentProvider.d.ts.map +1 -1
- package/dist/ai/ImageModel.d.ts +127 -0
- package/dist/ai/ImageModel.d.ts.map +1 -0
- package/dist/ai/ImageProvider.d.ts +94 -0
- package/dist/ai/ImageProvider.d.ts.map +1 -0
- package/dist/ai/Schema.d.ts +62 -0
- package/dist/ai/Schema.d.ts.map +1 -1
- package/dist/ai/client/index.js +10 -4
- package/dist/ai/client/index.js.map +1 -1
- package/dist/ai/client/reducer.d.ts.map +1 -1
- package/dist/ai/index.d.ts +7 -1
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +11 -11
- package/dist/ai/index.js.map +14 -10
- package/dist/ai/live/harness.d.ts +5 -3
- package/dist/ai/live/harness.d.ts.map +1 -1
- package/dist/ai/providers/call.d.ts +12 -0
- package/dist/ai/providers/call.d.ts.map +1 -1
- package/dist/ai/providers/endpoints.d.ts +153 -0
- package/dist/ai/providers/endpoints.d.ts.map +1 -0
- package/dist/ai/providers/fakeProvider.d.ts +54 -0
- package/dist/ai/providers/fakeProvider.d.ts.map +1 -1
- package/dist/ai/providers/http.d.ts +28 -0
- package/dist/ai/providers/http.d.ts.map +1 -1
- package/dist/ai/providers/images.d.ts +126 -0
- package/dist/ai/providers/images.d.ts.map +1 -0
- package/dist/ai/store/Attachments.d.ts +52 -0
- package/dist/ai/store/Attachments.d.ts.map +1 -1
- package/dist/ai/types.d.ts +55 -1
- package/dist/ai/types.d.ts.map +1 -1
- package/dist/ai/useChat.d.ts +60 -4
- package/dist/ai/useChat.d.ts.map +1 -1
- package/dist/app/index.js +1 -1
- package/dist/bin/gemi.js +9 -1
- package/dist/bin/gemi.js.map +3 -3
- package/dist/broadcasting/index.js +1 -1
- package/dist/bun/plugin.js +1 -1
- package/dist/bun/preload.js +1 -1
- package/dist/{chunk-jv9k1qfr.js → chunk-2bb3rdqq.js} +3 -3
- package/dist/{chunk-jv9k1qfr.js.map → chunk-2bb3rdqq.js.map} +1 -1
- package/dist/{chunk-e785380d.js → chunk-2dvjj3ad.js} +2 -2
- package/dist/{chunk-e785380d.js.map → chunk-2dvjj3ad.js.map} +1 -1
- package/dist/{chunk-rj3fnc4h.js → chunk-2ghpxrw1.js} +1 -1
- package/dist/{chunk-dqbm9vd0.js → chunk-3mp9p38x.js} +2 -2
- package/dist/{chunk-dqbm9vd0.js.map → chunk-3mp9p38x.js.map} +1 -1
- package/dist/{chunk-cdpeh7tt.js → chunk-3pwn2r6s.js} +2 -2
- package/dist/{chunk-cdpeh7tt.js.map → chunk-3pwn2r6s.js.map} +1 -1
- package/dist/{chunk-7qfzrkab.js → chunk-45g3hd0e.js} +2 -2
- package/dist/{chunk-7qfzrkab.js.map → chunk-45g3hd0e.js.map} +1 -1
- package/dist/{chunk-wqmzad46.js → chunk-5g1j29p2.js} +2 -2
- package/dist/{chunk-wqmzad46.js.map → chunk-5g1j29p2.js.map} +1 -1
- package/dist/{chunk-bxtx4y4w.js → chunk-5pm9zvtp.js} +2 -2
- package/dist/{chunk-bxtx4y4w.js.map → chunk-5pm9zvtp.js.map} +1 -1
- package/dist/{chunk-pbx9p6g0.js → chunk-6waph5k8.js} +1 -1
- package/dist/{chunk-nnc40mf3.js → chunk-70y8wajy.js} +2 -2
- package/dist/{chunk-nnc40mf3.js.map → chunk-70y8wajy.js.map} +1 -1
- package/dist/{chunk-71yhw8aw.js → chunk-731etrh2.js} +2 -2
- package/dist/{chunk-71yhw8aw.js.map → chunk-731etrh2.js.map} +1 -1
- package/dist/{chunk-1s1cd1e8.js → chunk-7438nrkm.js} +3 -3
- package/dist/{chunk-1s1cd1e8.js.map → chunk-7438nrkm.js.map} +1 -1
- package/dist/{chunk-ssg20z9s.js → chunk-7wgk7q33.js} +3 -3
- package/dist/{chunk-ssg20z9s.js.map → chunk-7wgk7q33.js.map} +1 -1
- package/dist/chunk-7xc64j6p.js +5 -0
- package/dist/chunk-7xc64j6p.js.map +14 -0
- package/dist/{chunk-jmse5hec.js → chunk-7zg1mt1g.js} +2 -2
- package/dist/{chunk-jmse5hec.js.map → chunk-7zg1mt1g.js.map} +1 -1
- package/dist/{chunk-0qchadp1.js → chunk-87c0cy5v.js} +2 -2
- package/dist/{chunk-0qchadp1.js.map → chunk-87c0cy5v.js.map} +1 -1
- package/dist/{chunk-773qa4av.js → chunk-8bjxk57p.js} +2 -2
- package/dist/{chunk-773qa4av.js.map → chunk-8bjxk57p.js.map} +1 -1
- package/dist/{chunk-81yzec62.js → chunk-8jpvj3cj.js} +2 -2
- package/dist/{chunk-81yzec62.js.map → chunk-8jpvj3cj.js.map} +1 -1
- package/dist/{chunk-9e5c5e15.js → chunk-9ch1q7nd.js} +2 -2
- package/dist/{chunk-9e5c5e15.js.map → chunk-9ch1q7nd.js.map} +1 -1
- package/dist/{chunk-9e5v1t73.js → chunk-9x5eefh0.js} +2 -2
- package/dist/{chunk-9e5v1t73.js.map → chunk-9x5eefh0.js.map} +1 -1
- package/dist/{chunk-62xjrz5e.js → chunk-9zmcz7yq.js} +2 -2
- package/dist/{chunk-62xjrz5e.js.map → chunk-9zmcz7yq.js.map} +1 -1
- package/dist/{chunk-0amv13g6.js → chunk-a85fn4zf.js} +3 -3
- package/dist/{chunk-0amv13g6.js.map → chunk-a85fn4zf.js.map} +1 -1
- package/dist/chunk-adj6dnvj.js +5 -0
- package/dist/{chunk-dq2hgzje.js.map → chunk-adj6dnvj.js.map} +1 -1
- package/dist/{chunk-exwbtfe9.js → chunk-aq09ta7k.js} +2 -2
- package/dist/{chunk-exwbtfe9.js.map → chunk-aq09ta7k.js.map} +1 -1
- package/dist/{chunk-43xw9n4f.js → chunk-dmr7yzyr.js} +2 -2
- package/dist/{chunk-43xw9n4f.js.map → chunk-dmr7yzyr.js.map} +1 -1
- package/dist/{chunk-q4wdg0y3.js → chunk-e0v4byjp.js} +2 -2
- package/dist/{chunk-ptjexzn1.js.map → chunk-e0v4byjp.js.map} +1 -1
- package/dist/{chunk-8wpccvbt.js → chunk-e1fkxt82.js} +2 -2
- package/dist/{chunk-8wpccvbt.js.map → chunk-e1fkxt82.js.map} +1 -1
- package/dist/{chunk-xadk41cs.js → chunk-ex9ns7pf.js} +4 -4
- package/dist/{chunk-xadk41cs.js.map → chunk-ex9ns7pf.js.map} +1 -1
- package/dist/{chunk-95d8jj11.js → chunk-fd7wfcft.js} +2 -2
- package/dist/{chunk-95d8jj11.js.map → chunk-fd7wfcft.js.map} +1 -1
- package/dist/{chunk-kx7vgcjp.js → chunk-fmcq21hg.js} +3 -3
- package/dist/{chunk-kx7vgcjp.js.map → chunk-fmcq21hg.js.map} +1 -1
- package/dist/{chunk-k1wkvrj0.js → chunk-ftaxfq7p.js} +3 -3
- package/dist/{chunk-k1wkvrj0.js.map → chunk-ftaxfq7p.js.map} +1 -1
- package/dist/{chunk-zdj2wmbj.js → chunk-fxkh2rfd.js} +2 -2
- package/dist/{chunk-zdj2wmbj.js.map → chunk-fxkh2rfd.js.map} +1 -1
- package/dist/{chunk-9k5daets.js → chunk-g2ywq30n.js} +2 -2
- package/dist/{chunk-9k5daets.js.map → chunk-g2ywq30n.js.map} +1 -1
- package/dist/{chunk-fwnf3jc6.js → chunk-gyc91g26.js} +2 -2
- package/dist/{chunk-fwnf3jc6.js.map → chunk-gyc91g26.js.map} +1 -1
- package/dist/chunk-hq496pa4.js +5 -0
- package/dist/chunk-hq496pa4.js.map +10 -0
- package/dist/{chunk-4sv5zpb4.js → chunk-hrtkjv41.js} +2 -2
- package/dist/{chunk-4sv5zpb4.js.map → chunk-hrtkjv41.js.map} +1 -1
- package/dist/{chunk-dhe1hsyz.js → chunk-jkjt3e06.js} +2 -2
- package/dist/{chunk-dhe1hsyz.js.map → chunk-jkjt3e06.js.map} +1 -1
- package/dist/{chunk-5wzyx4ts.js → chunk-ks94h71z.js} +2 -2
- package/dist/{chunk-5wzyx4ts.js.map → chunk-ks94h71z.js.map} +1 -1
- package/dist/{chunk-rhr8qavq.js → chunk-m44ar4he.js} +2 -2
- package/dist/{chunk-rhr8qavq.js.map → chunk-m44ar4he.js.map} +1 -1
- package/dist/{chunk-mzpczes2.js → chunk-nxg51m0q.js} +2 -2
- package/dist/{chunk-mzpczes2.js.map → chunk-nxg51m0q.js.map} +1 -1
- package/dist/{chunk-qrfp7pg2.js → chunk-nxh5a3eb.js} +3 -3
- package/dist/{chunk-qrfp7pg2.js.map → chunk-nxh5a3eb.js.map} +1 -1
- package/dist/{chunk-qcbtr7hm.js → chunk-p0m3qgs5.js} +2 -2
- package/dist/{chunk-qcbtr7hm.js.map → chunk-p0m3qgs5.js.map} +1 -1
- package/dist/{chunk-jk8mn861.js → chunk-p5m0da00.js} +2 -2
- package/dist/{chunk-jk8mn861.js.map → chunk-p5m0da00.js.map} +1 -1
- package/dist/{chunk-fv223805.js → chunk-pb0m0ryf.js} +3 -3
- package/dist/{chunk-fv223805.js.map → chunk-pb0m0ryf.js.map} +1 -1
- package/dist/{chunk-7hbhbht2.js → chunk-pcxxnnad.js} +3 -3
- package/dist/{chunk-7hbhbht2.js.map → chunk-pcxxnnad.js.map} +1 -1
- package/dist/{chunk-2d92pev2.js → chunk-pxc51549.js} +2 -2
- package/dist/{chunk-2d92pev2.js.map → chunk-pxc51549.js.map} +1 -1
- package/dist/{chunk-454c7vn3.js → chunk-q1nq7n6y.js} +2 -2
- package/dist/{chunk-454c7vn3.js.map → chunk-q1nq7n6y.js.map} +1 -1
- package/dist/{chunk-48qybp63.js → chunk-qqchc40s.js} +2 -2
- package/dist/{chunk-48qybp63.js.map → chunk-qqchc40s.js.map} +1 -1
- package/dist/{chunk-3tmw1gy2.js → chunk-qttk7k60.js} +2 -2
- package/dist/{chunk-3tmw1gy2.js.map → chunk-qttk7k60.js.map} +1 -1
- package/dist/{chunk-feyr4851.js → chunk-r069158p.js} +2 -2
- package/dist/{chunk-feyr4851.js.map → chunk-r069158p.js.map} +1 -1
- package/dist/{chunk-ptjexzn1.js → chunk-r6v21jn6.js} +2 -2
- package/dist/{chunk-q4wdg0y3.js.map → chunk-r6v21jn6.js.map} +1 -1
- package/dist/{chunk-6j129573.js → chunk-r77f1482.js} +2 -2
- package/dist/{chunk-6j129573.js.map → chunk-r77f1482.js.map} +1 -1
- package/dist/{chunk-jmbdr550.js → chunk-rnjbja88.js} +2 -2
- package/dist/{chunk-jmbdr550.js.map → chunk-rnjbja88.js.map} +1 -1
- package/dist/{chunk-q8msf1gf.js → chunk-rq2k9frr.js} +2 -2
- package/dist/{chunk-q8msf1gf.js.map → chunk-rq2k9frr.js.map} +1 -1
- package/dist/{chunk-2nqxhy1f.js → chunk-se5ekvgb.js} +4 -4
- package/dist/{chunk-2nqxhy1f.js.map → chunk-se5ekvgb.js.map} +3 -3
- package/dist/{chunk-v6v03hy7.js → chunk-sqc6fkqt.js} +2 -2
- package/dist/{chunk-v6v03hy7.js.map → chunk-sqc6fkqt.js.map} +1 -1
- package/dist/{chunk-78cvy4je.js → chunk-tn71d46d.js} +2 -2
- package/dist/{chunk-78cvy4je.js.map → chunk-tn71d46d.js.map} +1 -1
- package/dist/{chunk-hkhxkeeb.js → chunk-v6q4990x.js} +3 -3
- package/dist/{chunk-hkhxkeeb.js.map → chunk-v6q4990x.js.map} +1 -1
- package/dist/{chunk-e41vdprh.js → chunk-w34j3cd3.js} +3 -3
- package/dist/{chunk-e41vdprh.js.map → chunk-w34j3cd3.js.map} +1 -1
- package/dist/{chunk-w8ncmp2z.js → chunk-w6fnt1xv.js} +2 -2
- package/dist/{chunk-w8ncmp2z.js.map → chunk-w6fnt1xv.js.map} +2 -2
- package/dist/{chunk-35fbxgjh.js → chunk-wzqxtrpt.js} +2 -2
- package/dist/{chunk-35fbxgjh.js.map → chunk-wzqxtrpt.js.map} +1 -1
- package/dist/{chunk-z2fnf49p.js → chunk-xzexftx1.js} +1 -1
- package/dist/{chunk-dfv5eqma.js → chunk-z4k18gnp.js} +2 -2
- package/dist/{chunk-dfv5eqma.js.map → chunk-z4k18gnp.js.map} +1 -1
- package/dist/{chunk-b6948dnh.js → chunk-z6gzasra.js} +2 -2
- package/dist/{chunk-b6948dnh.js.map → chunk-z6gzasra.js.map} +1 -1
- package/dist/{chunk-p57x55qd.js → chunk-zqpskwk9.js} +2 -2
- package/dist/{chunk-p57x55qd.js.map → chunk-zqpskwk9.js.map} +1 -1
- package/dist/chunks/ThemeProvider-Bz-y1g2i.js.map +1 -1
- package/dist/client/ClientRouter.d.ts.map +1 -1
- package/dist/client/ProgressManager.d.ts +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/client/types.d.ts +72 -2
- package/dist/client/types.d.ts.map +1 -1
- package/dist/client/useNavigate.d.ts +29 -6
- package/dist/client/useNavigate.d.ts.map +1 -1
- package/dist/client/usePrefetch.d.ts +13 -3
- package/dist/client/usePrefetch.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/console/run.js +2 -2
- package/dist/console/run.js.map +1 -1
- package/dist/container/index.js +2 -2
- package/dist/container/index.js.map +1 -1
- package/dist/database/Connection.d.ts.map +1 -1
- package/dist/database/index.d.ts +1 -0
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +2 -2
- package/dist/database/index.js.map +1 -1
- package/dist/database/sqlitePath.d.ts +46 -0
- package/dist/database/sqlitePath.d.ts.map +1 -0
- package/dist/email/index.js +2 -2
- package/dist/email/index.js.map +1 -1
- package/dist/facades/index.js +2 -2
- package/dist/facades/index.js.map +1 -1
- package/dist/foundation/index.js +2 -2
- package/dist/foundation/index.js.map +1 -1
- package/dist/http/ApiRouter.d.ts +1 -1
- package/dist/http/ApiRouter.d.ts.map +1 -1
- package/dist/http/index.js +2 -2
- package/dist/http/index.js.map +1 -1
- package/dist/i18n/dictionaryRuntime.js +2 -2
- package/dist/i18n/dictionaryRuntime.js.map +1 -1
- package/dist/i18n/index.js +2 -2
- package/dist/i18n/index.js.map +1 -1
- package/dist/kernel/index.js +2 -2
- package/dist/kernel/index.js.map +1 -1
- package/dist/orm/index.js +2 -2
- package/dist/orm/index.js.map +1 -1
- package/dist/server/index.js +2 -2
- package/dist/server/index.js.map +1 -1
- package/dist/services/index.js +2 -2
- package/dist/services/index.js.map +1 -1
- package/dist/services/queue/work.js +2 -2
- package/dist/services/queue/work.js.map +1 -1
- package/dist/support/index.js +2 -2
- package/dist/support/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/ai/Agent.test-d.d.ts +0 -2
- package/dist/ai/Agent.test-d.d.ts.map +0 -1
- package/dist/ai/Schema.test-d.d.ts +0 -2
- package/dist/ai/Schema.test-d.d.ts.map +0 -1
- package/dist/ai/client/reducer.test-d.d.ts +0 -2
- package/dist/ai/client/reducer.test-d.d.ts.map +0 -1
- package/dist/ai/example.d.ts +0 -129
- package/dist/ai/example.d.ts.map +0 -1
- package/dist/chunk-4728yrmt.js +0 -5
- package/dist/chunk-4728yrmt.js.map +0 -10
- package/dist/chunk-dq2hgzje.js +0 -5
- package/dist/chunk-f9ccncar.js +0 -5
- package/dist/chunk-f9ccncar.js.map +0 -13
- package/dist/client/useDictionary.test-d.d.ts +0 -2
- package/dist/client/useDictionary.test-d.d.ts.map +0 -1
- package/dist/console/builder.test-d.d.ts +0 -2
- package/dist/console/builder.test-d.d.ts.map +0 -1
- package/dist/http/ApiRouter.test-d.d.ts +0 -2
- package/dist/http/ApiRouter.test-d.d.ts.map +0 -1
- package/dist/http/McpRouter.test-d.d.ts +0 -2
- package/dist/http/McpRouter.test-d.d.ts.map +0 -1
- package/dist/services/events/FakeEventManager.test-d.d.ts +0 -2
- package/dist/services/events/FakeEventManager.test-d.d.ts.map +0 -1
- package/dist/services/events/Listener.test-d.d.ts +0 -2
- package/dist/services/events/Listener.test-d.d.ts.map +0 -1
- /package/dist/{chunk-rj3fnc4h.js.map → chunk-2ghpxrw1.js.map} +0 -0
- /package/dist/{chunk-pbx9p6g0.js.map → chunk-6waph5k8.js.map} +0 -0
- /package/dist/{chunk-z2fnf49p.js.map → chunk-xzexftx1.js.map} +0 -0
package/dist/ai/Agent.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { HttpRequest } from "../http";
|
|
2
2
|
import type { AgentProvider } from "./AgentProvider";
|
|
3
|
+
import type { GenerateImageParams, ImageInput, ImageModel } from "./ImageModel";
|
|
3
4
|
import type { Infer, Schema } from "./Schema";
|
|
4
|
-
import type { ScopedAttachments, ToolAttachments } from "./store/Attachments";
|
|
5
|
+
import type { Attachment, ScopedAttachments, ToolAttachments } from "./store/Attachments";
|
|
5
6
|
import type { AgentMessage, AgentStreamEvent, AgentStreamFrame, ClientTurn, FinishReason, NestedRun, PendingToolCall, ToolShapes, Usage } from "./types";
|
|
6
7
|
/**
|
|
7
8
|
* Everything a tool needs from the request it is running inside.
|
|
@@ -14,6 +15,26 @@ import type { AgentMessage, AgentStreamEvent, AgentStreamFrame, ClientTurn, Fini
|
|
|
14
15
|
*/
|
|
15
16
|
export interface ToolContext {
|
|
16
17
|
req: HttpRequest<any, any>;
|
|
18
|
+
/**
|
|
19
|
+
* The app's own fields from the turn's request body — what `useChat`'s
|
|
20
|
+
* `body` option sent, minus the keys the turn envelope owns.
|
|
21
|
+
*
|
|
22
|
+
* Here rather than behind `ctx.req.input()`, and not because that would be
|
|
23
|
+
* inconvenient: `AgentController` has already consumed the body, and a run
|
|
24
|
+
* outlives the request anyway, so by the time a tool executes there is
|
|
25
|
+
* nothing left to read. The values are copied onto the run when it starts.
|
|
26
|
+
*
|
|
27
|
+
* `{}` for a run started with none. Untyped on purpose — a tool is a
|
|
28
|
+
* module-scope singleton that any controller may mount, so there is no one
|
|
29
|
+
* `Body` for it to be. The controller that declares one gets it typed in
|
|
30
|
+
* `instructions()`; a tool validates, the way it would any other input it
|
|
31
|
+
* did not define.
|
|
32
|
+
*
|
|
33
|
+
* CLIENT-CONTROLLED. Same trust as a request body: fine to read, not a
|
|
34
|
+
* finding about who the user is. An id from here says which record the
|
|
35
|
+
* client wants, never that it may have it.
|
|
36
|
+
*/
|
|
37
|
+
body: Record<string, unknown>;
|
|
17
38
|
runId: string;
|
|
18
39
|
threadId?: string;
|
|
19
40
|
toolCallId: string;
|
|
@@ -123,7 +144,60 @@ export interface ToolContext {
|
|
|
123
144
|
* checkpoint API, because that is a much larger feature than this one.
|
|
124
145
|
*/
|
|
125
146
|
runAgent<A extends AnyAgent>(agent: A, params?: RunAgentParams): Promise<NestedRunResult>;
|
|
147
|
+
/**
|
|
148
|
+
* Renders an image and parks it, in one step, wired into this tool call.
|
|
149
|
+
*
|
|
150
|
+
* THE SPELLING DIFFERS FROM `ImageModel.generate` ON PURPOSE, and the reason
|
|
151
|
+
* is the same one behind `ctx.runAgent`: an escalating tool is re-entered
|
|
152
|
+
* from the top on the next turn, so a render reached by a bare
|
|
153
|
+
* `model.generate()` inside a tool body is paid for again on every replay —
|
|
154
|
+
* two minutes and an invoice line, for an image whose id the model has
|
|
155
|
+
* already read. This memoizes the render against the tool call, exactly as
|
|
156
|
+
* `ctx.attachments.put` memoizes a store.
|
|
157
|
+
*
|
|
158
|
+
* IT ANSWERS AN `Attachment`, NOT BYTES, and that is forced rather than
|
|
159
|
+
* chosen: the memo lives in the message history, so it cannot hold an image.
|
|
160
|
+
* The bytes are in the app's Storage, which is where a generated image was
|
|
161
|
+
* going anyway; `ctx.attachments.file(id)` hands them back, and copying them
|
|
162
|
+
* under a key of the app's own is what makes the image outlive the run.
|
|
163
|
+
*
|
|
164
|
+
* `showModel: true` puts the result in front of the model as an input-role
|
|
165
|
+
* message once this call settles, so an agent can look at what it made and
|
|
166
|
+
* try again.
|
|
167
|
+
*/
|
|
168
|
+
generateImage(model: ImageModel, params: ToolGenerateImageParams): Promise<GeneratedAttachment>;
|
|
169
|
+
/**
|
|
170
|
+
* Edits images and parks the result. Everything above applies.
|
|
171
|
+
*
|
|
172
|
+
* `images` takes attachment ids as well as bytes, and the ids are the point:
|
|
173
|
+
* the image to change is usually the one the model just named ("make that one
|
|
174
|
+
* warmer"), so it arrives with exactly the trust of a request body. Ids are
|
|
175
|
+
* resolved through this call's `ctx.attachments`, which applies #489's scope
|
|
176
|
+
* checks; there is no spelling here that reaches an id outside them.
|
|
177
|
+
*/
|
|
178
|
+
editImage(model: ImageModel, params: ToolEditImageParams): Promise<GeneratedAttachment>;
|
|
126
179
|
}
|
|
180
|
+
/** What an image parked by a tool answers. See `ToolContext.generateImage`. */
|
|
181
|
+
export type GeneratedAttachment = {
|
|
182
|
+
attachment: Attachment;
|
|
183
|
+
/** The pixel dimensions the model produced, read off the response. */
|
|
184
|
+
size: string;
|
|
185
|
+
mimeType: string;
|
|
186
|
+
usage: Usage;
|
|
187
|
+
};
|
|
188
|
+
type ToolImageSettings = Omit<GenerateImageParams, "prompt" | "signal">;
|
|
189
|
+
export type ToolGenerateImageParams = ToolImageSettings & {
|
|
190
|
+
prompt: string;
|
|
191
|
+
/** The filename to store it under. Defaults to `<model name>.<extension>`. */
|
|
192
|
+
name?: string;
|
|
193
|
+
/** Also show the model its own output, once this tool call settles. */
|
|
194
|
+
showModel?: boolean;
|
|
195
|
+
};
|
|
196
|
+
export type ToolEditImageParams = ToolGenerateImageParams & {
|
|
197
|
+
/** Attachment ids, or raw bytes. At least one. */
|
|
198
|
+
images: [ImageInput | string, ...(ImageInput | string)[]];
|
|
199
|
+
mask?: ImageInput | string;
|
|
200
|
+
};
|
|
127
201
|
/**
|
|
128
202
|
* The files of the turn a tool call belongs to, as data the model cannot write.
|
|
129
203
|
*
|
|
@@ -214,6 +288,16 @@ export interface RunAgentParams {
|
|
|
214
288
|
* the user is only worth making if the whole subtree keeps it.
|
|
215
289
|
*/
|
|
216
290
|
onPending?: "escalate" | "deny";
|
|
291
|
+
/**
|
|
292
|
+
* Override the sub-agent's own ceiling for this run.
|
|
293
|
+
*
|
|
294
|
+
* Not inherited from the parent. A sub-agent is a different job with a
|
|
295
|
+
* different output size — a generator writing a document against a router
|
|
296
|
+
* answering one word — and silently handing down the caller's ceiling would
|
|
297
|
+
* either strangle the one or fail to bound the other.
|
|
298
|
+
*/
|
|
299
|
+
maxOutputTokens?: number;
|
|
300
|
+
temperature?: number;
|
|
217
301
|
}
|
|
218
302
|
/**
|
|
219
303
|
* What a completed sub-run gives back.
|
|
@@ -505,6 +589,34 @@ export interface CreateAgentParams<T extends readonly ToolEntry[], S extends rea
|
|
|
505
589
|
*/
|
|
506
590
|
maxDepth?: number;
|
|
507
591
|
reasoning?: ReasoningEffort;
|
|
592
|
+
/**
|
|
593
|
+
* A ceiling on the tokens one model call may produce, passed to the provider
|
|
594
|
+
* as its own `max_output_tokens`.
|
|
595
|
+
*
|
|
596
|
+
* It bounds a degenerate generation. A model asked for non-strict JSON can
|
|
597
|
+
* fall into emitting the same character until something stops it, and with
|
|
598
|
+
* no cap the only thing that does is the client giving up — a turn that
|
|
599
|
+
* never ends rather than one that fails. The cap turns that into a run
|
|
600
|
+
* ending with `finishReason: "length"`, which an app can retry.
|
|
601
|
+
*
|
|
602
|
+
* Per model call, not per run: a run of four steps may produce four times
|
|
603
|
+
* this. `maxSteps` is the bound on the run.
|
|
604
|
+
*/
|
|
605
|
+
maxOutputTokens?: number;
|
|
606
|
+
/**
|
|
607
|
+
* Passed to the provider unchanged. Lower is steadier, which is worth having
|
|
608
|
+
* for a generation whose shape matters more than its phrasing.
|
|
609
|
+
*
|
|
610
|
+
* SENT WHENEVER SET, and not capability-gated the way `reasoning` is.
|
|
611
|
+
* `ProviderCapabilities` carries no flag for it, so `buildResponsesRequest`
|
|
612
|
+
* writes it whenever it is a number and never drops it. That matters because
|
|
613
|
+
* the newer reasoning models reject the parameter outright: setting this for
|
|
614
|
+
* one is a 400 rather than a quietly degraded request. It is the same bargain
|
|
615
|
+
* `output` takes in `request.ts` — an explicit choice is sent and the API gets
|
|
616
|
+
* to say no, because silently dropping one leaves an app believing something
|
|
617
|
+
* about its request that is not true.
|
|
618
|
+
*/
|
|
619
|
+
temperature?: number;
|
|
508
620
|
}
|
|
509
621
|
/**
|
|
510
622
|
* One call per client turn — a first message and an answer to a pending
|
|
@@ -524,10 +636,25 @@ export interface AgentStreamParams {
|
|
|
524
636
|
threadId?: string;
|
|
525
637
|
/** Appended to the agent's own `instructions` for this request only. */
|
|
526
638
|
instructions?: string;
|
|
639
|
+
/**
|
|
640
|
+
* The app's own fields from the turn's request body, handed to every tool of
|
|
641
|
+
* this run as `ctx.body`.
|
|
642
|
+
*
|
|
643
|
+
* Carried on the run rather than left to be read from `ctx.req`: a run
|
|
644
|
+
* outlives the request that started it, so that a refresh can reattach, and
|
|
645
|
+
* by the time a tool executes there is no body left to read. See
|
|
646
|
+
* `AgentController`'s `Body`.
|
|
647
|
+
*/
|
|
648
|
+
body?: Record<string, unknown>;
|
|
527
649
|
/** Per-request model choice, e.g. letting a user pick. */
|
|
528
650
|
provider?: AgentProvider;
|
|
529
651
|
maxSteps?: number;
|
|
530
652
|
reasoning?: ReasoningEffort;
|
|
653
|
+
/** Overrides the agent's own for this run. A generation whose size varies by
|
|
654
|
+
* request — a page with ten components against one with two — is the case
|
|
655
|
+
* a fixed ceiling on the agent cannot serve. */
|
|
656
|
+
maxOutputTokens?: number;
|
|
657
|
+
temperature?: number;
|
|
531
658
|
/**
|
|
532
659
|
* Fires once for every message this run completes — the user's turn, each
|
|
533
660
|
* assistant turn, and any earlier message this turn amended by resolving a
|
package/dist/ai/Agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../ai/Agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../ai/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -160,8 +160,50 @@ export type UploadResult = {
|
|
|
160
160
|
* `Controller.kind` has no reader, in this package or out of it.
|
|
161
161
|
*/
|
|
162
162
|
declare const ControllerBase: new () => Controller;
|
|
163
|
-
|
|
163
|
+
/**
|
|
164
|
+
* The key that carries `Body` on the instance type.
|
|
165
|
+
*
|
|
166
|
+
* A `declare const` unique symbol, so it exists only in the type layer — the
|
|
167
|
+
* same device `Schema.ts` uses for its output type, and for the same reason: a
|
|
168
|
+
* real property would be one an app could see, serialise or depend on.
|
|
169
|
+
*/
|
|
170
|
+
declare const BODY: unique symbol;
|
|
171
|
+
export declare abstract class AgentController<A extends AnyAgent = AnyAgent,
|
|
172
|
+
/**
|
|
173
|
+
* The extra fields `useChat`'s `body` option sends with every turn, as they
|
|
174
|
+
* arrive in `instructions()` and on `ctx.body`.
|
|
175
|
+
*
|
|
176
|
+
* Declaring it also types the client: `useChat` reads it back off the route
|
|
177
|
+
* through `AgentRouteRPC`, so a `body` the controller does not expect is a
|
|
178
|
+
* compile error at the call site rather than an `undefined` three layers
|
|
179
|
+
* into a tool. It types the shape, not the contents — see `instructions`.
|
|
180
|
+
*
|
|
181
|
+
* Constrained to `object`, not `Record<string, unknown>`: an `interface` gets
|
|
182
|
+
* no implicit index signature, so the tighter bound refused
|
|
183
|
+
* `interface PageBody { pageId: string }` with a `TS2344` that names the
|
|
184
|
+
* constraint and not the reason. An interface is how most apps write a request
|
|
185
|
+
* shape, and turning that into a puzzle about `type` versus `interface` is a
|
|
186
|
+
* poor first impression of the feature.
|
|
187
|
+
*/
|
|
188
|
+
Body extends object = Record<string, unknown>> extends ControllerBase {
|
|
164
189
|
static kind: "agent-controller";
|
|
190
|
+
/**
|
|
191
|
+
* `Body`, in a position nothing can shorten away.
|
|
192
|
+
*
|
|
193
|
+
* It has to appear on the instance type for `AgentRouteRPC` to infer it, and
|
|
194
|
+
* `instructions`'s second parameter is not a safe place to leave that job:
|
|
195
|
+
* TypeScript's parameter-wise inference stops at the shorter signature, so a
|
|
196
|
+
* controller overriding `instructions(req)` — which is every override written
|
|
197
|
+
* before this existed, since that was the only signature — supplied no
|
|
198
|
+
* candidate and silently fell back to the open record. The client-side
|
|
199
|
+
* checking then vanished on the most ordinary upgrade path, with nothing to
|
|
200
|
+
* read.
|
|
201
|
+
*
|
|
202
|
+
* `declare` so it emits no field: there is no value here, only a type for
|
|
203
|
+
* `infer B` to find. Optional and never assigned, so no subclass has to
|
|
204
|
+
* mention it.
|
|
205
|
+
*/
|
|
206
|
+
readonly [BODY]?: Body;
|
|
165
207
|
/** The agent this controller serves. A property rather than a constructor
|
|
166
208
|
* argument so `Router.agent(ChatController)` can take the class, matching how
|
|
167
209
|
* every other controller is mounted. */
|
|
@@ -218,9 +260,23 @@ export declare abstract class AgentController<A extends AnyAgent = AnyAgent> ext
|
|
|
218
260
|
* request until the hooks are done, however long that is.
|
|
219
261
|
*/
|
|
220
262
|
protected hookHoldMs: number;
|
|
221
|
-
/**
|
|
222
|
-
*
|
|
223
|
-
|
|
263
|
+
/**
|
|
264
|
+
* Appended to the agent's static instructions for this request — the user's
|
|
265
|
+
* name, tenant, today's date.
|
|
266
|
+
*
|
|
267
|
+
* `body` is what `useChat`'s `body` option sent, with the four keys the wire
|
|
268
|
+
* format owns removed. It is the only way to read it here: this controller
|
|
269
|
+
* consumes the request body itself, so `await req.input()` answers `Body
|
|
270
|
+
* already used` and takes the whole turn down with it.
|
|
271
|
+
*
|
|
272
|
+
* It is client-controlled, exactly like any request body. `Body` types what
|
|
273
|
+
* arrives, it does not check it — a client can send anything, and a tenant id
|
|
274
|
+
* read from here is the client's claim about which tenant it wants, not the
|
|
275
|
+
* middleware's finding about who it is.
|
|
276
|
+
*/
|
|
277
|
+
instructions(req: HttpRequest<any, any>, extra: {
|
|
278
|
+
body: Body;
|
|
279
|
+
}): string | Promise<string> | void;
|
|
224
280
|
/**
|
|
225
281
|
* Refuse a turn that arrives without a `threadId`, with a 400
|
|
226
282
|
* `thread_required`, before anything runs.
|
|
@@ -534,16 +590,29 @@ export declare abstract class AgentController<A extends AnyAgent = AnyAgent> ext
|
|
|
534
590
|
}
|
|
535
591
|
export type AgentRouteMethod = "stream" | "attach" | "stop" | "upload";
|
|
536
592
|
export type AgentMiddlewareConfig = Partial<Record<AgentRouteMethod, MiddlewareInput>>;
|
|
537
|
-
export type AgentRoute<T extends new () => AgentController<any>> = {
|
|
593
|
+
export type AgentRoute<T extends new () => AgentController<any, any>> = {
|
|
538
594
|
__internal_brand: "AgentRoute";
|
|
539
595
|
controller: T;
|
|
540
596
|
middleware(config: AgentMiddlewareConfig): AgentRoute<T>;
|
|
541
597
|
};
|
|
542
598
|
/** What `CreateRPC` should produce for an agent route: enough for the client to
|
|
543
599
|
* type its messages, and nothing that drags server code into the bundle. */
|
|
544
|
-
export type AgentRouteRPC<T extends new () => AgentController<any>> = {
|
|
600
|
+
export type AgentRouteRPC<T extends new () => AgentController<any, any>> = {
|
|
545
601
|
__agent: true;
|
|
546
602
|
tools: InstanceType<T>["agent"] extends AnyAgent ? ToolShapesOf<InstanceType<T>["agent"]["tools"]> : ToolShapes;
|
|
547
603
|
output: unknown;
|
|
604
|
+
/**
|
|
605
|
+
* The controller's `Body`, so `useChat` can check what it sends against what
|
|
606
|
+
* the controller declared.
|
|
607
|
+
*
|
|
608
|
+
* Read off the phantom key rather than by matching the class, which is what
|
|
609
|
+
* made this fail: `Body` used to reach the instance type only through
|
|
610
|
+
* `instructions`'s second parameter, and a controller overriding
|
|
611
|
+
* `instructions(req)` — the pre-existing signature, so every existing
|
|
612
|
+
* override — gave inference nothing to work with and got the open record.
|
|
613
|
+
*/
|
|
614
|
+
body: InstanceType<T> extends {
|
|
615
|
+
[BODY]?: infer B;
|
|
616
|
+
} ? B : Record<string, unknown>;
|
|
548
617
|
};
|
|
549
618
|
//# sourceMappingURL=AgentController.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentController.d.ts","sourceRoot":"","sources":["../../ai/AgentController.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AgentController.d.ts","sourceRoot":"","sources":["../../ai/AgentController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ReasoningEffort } from "./Agent";
|
|
2
2
|
import { type ResponsesEndpoint } from "./providers/call";
|
|
3
|
+
import { type AzureConfig, type ProviderConfig } from "./providers/endpoints";
|
|
3
4
|
import type { JSONSchema } from "./Schema";
|
|
4
5
|
import type { AgentError, AgentMessage, FinishReason, Usage } from "./types";
|
|
5
6
|
/**
|
|
@@ -55,10 +56,14 @@ export interface ProviderStreamParams {
|
|
|
55
56
|
systemPrompt?: string;
|
|
56
57
|
tools?: (ProviderToolSpec | ProviderToolNamespace)[];
|
|
57
58
|
/** Set when the agent declares an `output` schema; the provider turns it into
|
|
58
|
-
* whatever its own strict-JSON parameter is.
|
|
59
|
+
* whatever its own strict-JSON parameter is. `strict` comes from the schema —
|
|
60
|
+
* false when it contains an `s.json()` node, which strict mode cannot
|
|
61
|
+
* express — and is required rather than defaulted so that a new caller has to
|
|
62
|
+
* answer it instead of inheriting a 400. */
|
|
59
63
|
output?: {
|
|
60
64
|
name: string;
|
|
61
65
|
schema: JSONSchema;
|
|
66
|
+
strict: boolean;
|
|
62
67
|
};
|
|
63
68
|
/** Optional: silently dropped by a provider whose `capabilities.reasoning`
|
|
64
69
|
* is false, since a model that cannot reason should not fail a request. */
|
|
@@ -145,13 +150,13 @@ export type ProviderEvent = {
|
|
|
145
150
|
error: AgentError;
|
|
146
151
|
};
|
|
147
152
|
export type ProviderStream = AsyncIterable<ProviderEvent>;
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
};
|
|
153
|
+
/**
|
|
154
|
+
* Re-exported rather than declared here. What these configure is the *vendor*,
|
|
155
|
+
* not the Responses API, and the images path resolves the same host, credential
|
|
156
|
+
* and api-version from the same fields — see `providers/endpoints.ts` for why
|
|
157
|
+
* that resolution lives in one place and what happens when it does not.
|
|
158
|
+
*/
|
|
159
|
+
export type { AzureConfig, ProviderConfig } from "./providers/endpoints";
|
|
155
160
|
export declare abstract class AgentProvider {
|
|
156
161
|
abstract readonly model: string;
|
|
157
162
|
abstract readonly capabilities: ProviderCapabilities;
|
|
@@ -187,36 +192,8 @@ export declare class OpenAIProvider extends AgentProvider {
|
|
|
187
192
|
static models(): readonly string[];
|
|
188
193
|
stream(params: ProviderStreamParams): ProviderStream;
|
|
189
194
|
upload(file: File): Promise<string>;
|
|
190
|
-
protected baseURL(): string;
|
|
191
195
|
protected endpoint(): ResponsesEndpoint;
|
|
192
196
|
}
|
|
193
|
-
export type AzureConfig = ProviderConfig & {
|
|
194
|
-
/**
|
|
195
|
-
* The resource host, with or without a trailing `/openai`. Both spellings
|
|
196
|
-
* work — `https://<resource>.cognitiveservices.azure.com` and
|
|
197
|
-
* `https://<resource>.openai.azure.com` — and neither is rewritten, because
|
|
198
|
-
* only one of them exists for a resource that was not created as
|
|
199
|
-
* kind=OpenAI. See `azureBase` for what is done to it.
|
|
200
|
-
*/
|
|
201
|
-
endpoint?: string;
|
|
202
|
-
/**
|
|
203
|
-
* Just the resource name, when there is no endpoint to hand. `<name>` is
|
|
204
|
-
* expanded to `https://<name>.cognitiveservices.azure.com/openai`.
|
|
205
|
-
*/
|
|
206
|
-
resourceName?: string;
|
|
207
|
-
apiVersion?: string;
|
|
208
|
-
/**
|
|
209
|
-
* The deployment to call, when it is not named after the model. Azure lets
|
|
210
|
-
* whoever ran the template call it anything, and plenty of them are called
|
|
211
|
-
* `prod` — this is the override the class comment promises.
|
|
212
|
-
*/
|
|
213
|
-
deployment?: string;
|
|
214
|
-
/**
|
|
215
|
-
* For Entra ID instead of a key. A function, not a token, because these
|
|
216
|
-
* expire mid-conversation.
|
|
217
|
-
*/
|
|
218
|
-
getToken?: () => Promise<string>;
|
|
219
|
-
};
|
|
220
197
|
/**
|
|
221
198
|
* Its own class rather than a flag on `OpenAIProvider`: Azure names the
|
|
222
199
|
* deployment rather than the model, pins an api-version, authenticates with an
|
|
@@ -241,15 +218,6 @@ export declare class AzureOpenAIProvider extends AgentProvider {
|
|
|
241
218
|
stream(params: ProviderStreamParams): ProviderStream;
|
|
242
219
|
upload(file: File): Promise<string>;
|
|
243
220
|
protected deployment(): string;
|
|
244
|
-
/**
|
|
245
|
-
* The resource base, `<host>/openai`, from whichever of the three ways it was
|
|
246
|
-
* configured. A bare resource name expands to the `cognitiveservices` host
|
|
247
|
-
* rather than the `openai.azure.com` one: both answer for a resource created
|
|
248
|
-
* as kind=OpenAI, only `cognitiveservices` answers for an AI Foundry or
|
|
249
|
-
* multi-service resource, so it is the spelling that is right more often. An
|
|
250
|
-
* app on the other one sets `endpoint` and nothing rewrites it.
|
|
251
|
-
*/
|
|
252
|
-
protected base(): string;
|
|
253
221
|
protected endpoint(): ResponsesEndpoint;
|
|
254
222
|
}
|
|
255
223
|
//# sourceMappingURL=AgentProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentProvider.d.ts","sourceRoot":"","sources":["../../ai/AgentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,
|
|
1
|
+
{"version":3,"file":"AgentProvider.d.ts","sourceRoot":"","sources":["../../ai/AgentProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import type { ImageProvider } from "./ImageProvider";
|
|
2
|
+
import type { Usage } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* A named image model with its settings, the way `Agent` is a named text model
|
|
5
|
+
* with its settings.
|
|
6
|
+
*
|
|
7
|
+
* `ImageModel`, not `Image`, because `Image` is already gemi's `<img>` srcset
|
|
8
|
+
* component (`client/Image.tsx`). Different entrypoints, so nothing collides
|
|
9
|
+
* technically — and a page builder, which is what this feature is for, imports
|
|
10
|
+
* both in the same file.
|
|
11
|
+
*
|
|
12
|
+
* export const banner = ImageModel.create({
|
|
13
|
+
* name: "banner",
|
|
14
|
+
* provider: AzureOpenAIImageProvider.model("gpt-image-2"),
|
|
15
|
+
* size: "1536x1024",
|
|
16
|
+
* quality: "high",
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* const { image, mimeType } = await banner.generate({ prompt });
|
|
20
|
+
* await Storage.put({ name: `pages/${id}/hero.png`, body: image, contentType: mimeType });
|
|
21
|
+
*
|
|
22
|
+
* Inside an agent tool, call `ctx.generateImage(banner, …)` instead: it memoizes
|
|
23
|
+
* the render against the tool call so a replay does not pay for it twice, and it
|
|
24
|
+
* parks the bytes as an attachment. See `ToolContext.generateImage`.
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* `WIDTHxHEIGHT`, or `auto`.
|
|
28
|
+
*
|
|
29
|
+
* NOT A CLOSED UNION OF THREE LITERALS, which is what the older image models
|
|
30
|
+
* allowed and what a first draft of this type was. `gpt-image-2` takes arbitrary
|
|
31
|
+
* dimensions, and a page builder deriving a size from a layout slot's aspect
|
|
32
|
+
* ratio is precisely the caller that needs them.
|
|
33
|
+
*/
|
|
34
|
+
export type ImageSize = `${number}x${number}` | "auto";
|
|
35
|
+
export type ImageQuality = "low" | "medium" | "high" | "auto";
|
|
36
|
+
export type ImageBackground = "transparent" | "opaque" | "auto";
|
|
37
|
+
/**
|
|
38
|
+
* `png` or `jpeg`. Not `webp`, although every source lists it — measured against
|
|
39
|
+
* `gpt-image-2`:
|
|
40
|
+
*
|
|
41
|
+
* 400 Invalid value: 'webp'. Supported values are: 'png' and 'jpeg'.
|
|
42
|
+
* param: output_format
|
|
43
|
+
*/
|
|
44
|
+
export type ImageFormat = "png" | "jpeg";
|
|
45
|
+
type Settings = {
|
|
46
|
+
size?: ImageSize;
|
|
47
|
+
quality?: ImageQuality;
|
|
48
|
+
background?: ImageBackground;
|
|
49
|
+
format?: ImageFormat;
|
|
50
|
+
/** JPEG quality, 0–100. Ignored by the vendor for PNG. */
|
|
51
|
+
compression?: number;
|
|
52
|
+
};
|
|
53
|
+
export type CreateImageModelParams = Settings & {
|
|
54
|
+
/** For logs and, later, telemetry — the same role `Agent.name` plays. */
|
|
55
|
+
name: string;
|
|
56
|
+
provider: ImageProvider;
|
|
57
|
+
};
|
|
58
|
+
export type GenerateImageParams = Settings & {
|
|
59
|
+
prompt: string;
|
|
60
|
+
/** Aborts the render. Inside a tool, `ctx.generateImage` passes the run's. */
|
|
61
|
+
signal?: AbortSignal;
|
|
62
|
+
};
|
|
63
|
+
export type ImageInput = Blob | File;
|
|
64
|
+
export type EditImageParams = GenerateImageParams & {
|
|
65
|
+
/**
|
|
66
|
+
* The images to edit, at least one. Typed as a non-empty tuple so an empty
|
|
67
|
+
* array is a compile error rather than a paid call that quietly generates from
|
|
68
|
+
* scratch.
|
|
69
|
+
*/
|
|
70
|
+
images: [ImageInput, ...ImageInput[]];
|
|
71
|
+
/**
|
|
72
|
+
* A PNG with an alpha channel, the same dimensions as the input. The
|
|
73
|
+
* **transparent** region is the part to replace.
|
|
74
|
+
*
|
|
75
|
+
* MEASURED, and honoured rather than merely accepted: with a transparent
|
|
76
|
+
* centre square and the prompt "put a yellow star in the masked area", the
|
|
77
|
+
* centre came back yellow and the surrounding ring kept the original colour,
|
|
78
|
+
* while the same edit without a mask recoloured the whole image.
|
|
79
|
+
*/
|
|
80
|
+
mask?: ImageInput;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* One generated image.
|
|
84
|
+
*
|
|
85
|
+
* NO `revisedPrompt`. It was in the original design, the requesting app asked
|
|
86
|
+
* for it, and `gpt-image-2` does not return one — five successful responses,
|
|
87
|
+
* generations and edits, none carrying `revised_prompt`. A field that is always
|
|
88
|
+
* `undefined` teaches callers to write dead branches; adding it back if a model
|
|
89
|
+
* ever populates it is not a breaking change.
|
|
90
|
+
*/
|
|
91
|
+
export type GeneratedImage = {
|
|
92
|
+
/** The bytes, with `type` set — ready for `Storage.put` or
|
|
93
|
+
* `ctx.attachments.put`, neither of which accepts a `Uint8Array`. */
|
|
94
|
+
image: Blob;
|
|
95
|
+
mimeType: string;
|
|
96
|
+
/**
|
|
97
|
+
* What was actually produced, read off the response and never assumed.
|
|
98
|
+
*
|
|
99
|
+
* MEASURED: an edit sent with no `size` answered `1254x1254` — neither a size
|
|
100
|
+
* anyone asked for nor a multiple of 16. So the divisible-by-16 rule below
|
|
101
|
+
* constrains the *request* and says nothing about the answer.
|
|
102
|
+
*/
|
|
103
|
+
size: string;
|
|
104
|
+
usage: Usage;
|
|
105
|
+
};
|
|
106
|
+
export declare class ImageModel {
|
|
107
|
+
readonly name: string;
|
|
108
|
+
readonly provider: ImageProvider;
|
|
109
|
+
private readonly settings;
|
|
110
|
+
private constructor();
|
|
111
|
+
static create(params: CreateImageModelParams): ImageModel;
|
|
112
|
+
generate(params: GenerateImageParams): Promise<GeneratedImage>;
|
|
113
|
+
/**
|
|
114
|
+
* Edits one or more images.
|
|
115
|
+
*
|
|
116
|
+
* A SEPARATE METHOD, not an `images?` on `generate`. One method would mean an
|
|
117
|
+
* `images` that arrives `undefined` — a mistyped field, a destructure of the
|
|
118
|
+
* wrong object — silently generates a fresh image instead of editing: the
|
|
119
|
+
* wrong picture, no error, on a call that is billed either way. Requiring a
|
|
120
|
+
* non-empty `images` here makes "edit with nothing to edit" unspellable.
|
|
121
|
+
*/
|
|
122
|
+
edit(params: EditImageParams): Promise<GeneratedImage>;
|
|
123
|
+
/** Per-call params over the model's defaults, validated as one. */
|
|
124
|
+
private merge;
|
|
125
|
+
}
|
|
126
|
+
export {};
|
|
127
|
+
//# sourceMappingURL=ImageModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageModel.d.ts","sourceRoot":"","sources":["../../ai/ImageModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,GAAG,MAAM,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9D,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;AAEzC,KAAK,QAAQ,GAAG;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG;IAC9C,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC;AAErC,MAAM,MAAM,eAAe,GAAG,mBAAmB,GAAG;IAClD;;;;OAIG;IACH,MAAM,EAAE,CAAC,UAAU,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC;IACtC;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B;0EACsE;IACtE,KAAK,EAAE,IAAI,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AA6DF,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IAEpC,OAAO;IAUP,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,UAAU;IAInD,QAAQ,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC;IAOpE;;;;;;;;OAQG;IACG,IAAI,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAa5D,mEAAmE;IACnE,OAAO,CAAC,KAAK;CAed"}
|