@molecule/api-ai-decisions 1.0.0 → 1.1.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/README.md CHANGED
@@ -3,7 +3,7 @@ AUTO-GENERATED — DO NOT EDIT THIS FILE.
3
3
  Generated by `mlcl sync-docs` from the package's src/index.ts JSDoc + mlcl/registry.json.
4
4
  Edits here are overwritten on the next commit (molecule's pre-commit hook regenerates).
5
5
  To change this document, edit the module-level JSDoc in src/index.ts.
6
- Generated: 2026-09-28T17:40:28.606Z
6
+ Generated: 2026-09-29T13:48:34.452Z
7
7
  -->
8
8
 
9
9
  # @molecule/api-ai-decisions
@@ -24,11 +24,13 @@ judgment call about language. Many questions share one call.
24
24
  This core defines the `AIDecisionsProvider` contract and its bond accessor
25
25
  only. Bond one provider:
26
26
 
27
- | Bond | What answers | When |
28
- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
29
- | `@molecule/api-ai-decisions-laya` | the open-weights Laya model (Apache-2.0) on a `laya-serve` host you run — or any other self-hosted `/v1/systemone` server, such as Kev (Qwen-based, GPU/MLX) | self-hosted, ~30–40 ms/question on a GPU (Laya), data stays with you |
30
- | `@molecule/api-ai-decisions-jev` | TypeSafe's hosted Jev API | no model to host; English-first |
31
- | `@molecule/api-ai-decisions-llm` | whatever `ai` chat bond is bonded | no extra service; slower and costlier per call |
27
+ | Bond | What answers | When |
28
+ | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------- |
29
+ | `@molecule/api-ai-decisions-laya` | the open-weights Laya model (Apache-2.0) on a `laya-serve` host you run — or any other self-hosted `/v1/systemone` server, such as Kev (Qwen-based, GPU/MLX) | self-hosted, ~30–40 ms/question on a GPU (Laya), data stays with you |
30
+ | `@molecule/api-ai-decisions-jeff` | the open-weights Jeff models (Qwen3.5 0.8B/2B, Gemma 4 E2B fine-tunes) on a `jeff-serve` host you run | self-hosted on a GPU or Apple MLX, ~20–30 ms/request; English only; ≤26 options |
31
+ | `@molecule/api-ai-decisions-intern-decision` | the open-weights Intern-Decision models (0.8B/2B/4B) on the Intern-Decision FastAPI service you run | self-hosted on a GPU; the only bond here whose model also reads `images` besides the LLM bond |
32
+ | `@molecule/api-ai-decisions-jev` | TypeSafe's hosted Jev API | no model to host; English-first |
33
+ | `@molecule/api-ai-decisions-llm` | whatever `ai` chat bond is bonded | no extra service; slower and costlier per call; passes `images` to vision chat models |
32
34
 
33
35
  ## Quick Start
34
36
 
@@ -164,6 +166,12 @@ interface DecideInput<
164
166
  state: DecisionState
165
167
  /** The questions, keyed by an id you choose; answers come back under the same ids. */
166
168
  questions: Q
169
+ /**
170
+ * Images the questions are also about, read alongside `state`. Only bonds
171
+ * whose model sees images accept this; every other bond THROWS when it is
172
+ * set rather than silently answering from the text alone.
173
+ */
174
+ images?: DecisionImage[]
167
175
  /** Provider-specific model / checkpoint id (e.g. `'jev-latest'`, `'multilingual'`). */
168
176
  model?: string
169
177
  /** Mark answers whose `confidence` is below this (`0..1`) with `lowConfidence: true`. */
@@ -190,6 +198,19 @@ interface DecideResult<
190
198
  }
191
199
  ```
192
200
 
201
+ #### `DecisionImage`
202
+
203
+ An image the questions are also about (a screenshot, a photo of a receipt).
204
+
205
+ ```typescript
206
+ interface DecisionImage {
207
+ /** The image's media type: `'image/png'`, `'image/jpeg'`, `'image/webp'`, … */
208
+ mimeType: string
209
+ /** The raw image bytes, base64-encoded — no `data:` URL prefix. */
210
+ data: string
211
+ }
212
+ ```
213
+
193
214
  #### `DecisionUsage`
194
215
 
195
216
  Token usage, when the provider reports it.
@@ -376,11 +397,13 @@ function setProvider(provider: AIDecisionsProvider): void
376
397
 
377
398
  ## Available Providers
378
399
 
379
- | Provider | Package |
380
- | -------- | --------------------------------- |
381
- | Jev | `@molecule/api-ai-decisions-jev` |
382
- | Laya | `@molecule/api-ai-decisions-laya` |
383
- | LLM | `@molecule/api-ai-decisions-llm` |
400
+ | Provider | Package |
401
+ | --------------- | -------------------------------------------- |
402
+ | Intern-Decision | `@molecule/api-ai-decisions-intern-decision` |
403
+ | Jeff | `@molecule/api-ai-decisions-jeff` |
404
+ | Jev | `@molecule/api-ai-decisions-jev` |
405
+ | Laya | `@molecule/api-ai-decisions-laya` |
406
+ | LLM | `@molecule/api-ai-decisions-llm` |
384
407
 
385
408
  ## Injection Notes
386
409
 
@@ -419,6 +442,11 @@ Peer dependencies:
419
442
  - **Keep state short.** Laya's English checkpoint reads 512 tokens (the
420
443
  multilingual one 1,024); longer state is truncated, not refused. Put the
421
444
  decisive text first.
445
+ - **`images` is opt-in per bond.** Pass `images: [{ mimeType: 'image/png',
446
+ data: '<base64, no data: prefix>' }]` only with a bond whose model sees
447
+ images (Intern-Decision, Jeff's PyTorch backend, the LLM bond over a
448
+ vision model). Laya and Jev throw when `images` is set — they never
449
+ answer from the text alone as if the image had been read.
422
450
  - **Never use it to generate text** — there is no text output. For a
423
451
  free-text label set that changes per request, use
424
452
  `@molecule/api-ai-classification`.
package/dist/index.d.ts CHANGED
@@ -14,8 +14,10 @@
14
14
  * | Bond | What answers | When |
15
15
  * |---|---|---|
16
16
  * | `@molecule/api-ai-decisions-laya` | the open-weights Laya model (Apache-2.0) on a `laya-serve` host you run — or any other self-hosted `/v1/systemone` server, such as Kev (Qwen-based, GPU/MLX) | self-hosted, ~30–40 ms/question on a GPU (Laya), data stays with you |
17
+ * | `@molecule/api-ai-decisions-jeff` | the open-weights Jeff models (Qwen3.5 0.8B/2B, Gemma 4 E2B fine-tunes) on a `jeff-serve` host you run | self-hosted on a GPU or Apple MLX, ~20–30 ms/request; English only; ≤26 options |
18
+ * | `@molecule/api-ai-decisions-intern-decision` | the open-weights Intern-Decision models (0.8B/2B/4B) on the Intern-Decision FastAPI service you run | self-hosted on a GPU; the only bond here whose model also reads `images` besides the LLM bond |
17
19
  * | `@molecule/api-ai-decisions-jev` | TypeSafe's hosted Jev API | no model to host; English-first |
18
- * | `@molecule/api-ai-decisions-llm` | whatever `ai` chat bond is bonded | no extra service; slower and costlier per call |
20
+ * | `@molecule/api-ai-decisions-llm` | whatever `ai` chat bond is bonded | no extra service; slower and costlier per call; passes `images` to vision chat models |
19
21
  *
20
22
  * @example
21
23
  * ```typescript
@@ -70,6 +72,11 @@
70
72
  * - **Keep state short.** Laya's English checkpoint reads 512 tokens (the
71
73
  * multilingual one 1,024); longer state is truncated, not refused. Put the
72
74
  * decisive text first.
75
+ * - **`images` is opt-in per bond.** Pass `images: [{ mimeType: 'image/png',
76
+ * data: '<base64, no data: prefix>' }]` only with a bond whose model sees
77
+ * images (Intern-Decision, Jeff's PyTorch backend, the LLM bond over a
78
+ * vision model). Laya and Jev throw when `images` is set — they never
79
+ * answer from the text alone as if the image had been read.
73
80
  * - **Never use it to generate text** — there is no text output. For a
74
81
  * free-text label set that changes per request, use
75
82
  * `@molecule/api-ai-classification`.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AAEH,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwGG;AAEH,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA"}
package/dist/index.js CHANGED
@@ -14,8 +14,10 @@
14
14
  * | Bond | What answers | When |
15
15
  * |---|---|---|
16
16
  * | `@molecule/api-ai-decisions-laya` | the open-weights Laya model (Apache-2.0) on a `laya-serve` host you run — or any other self-hosted `/v1/systemone` server, such as Kev (Qwen-based, GPU/MLX) | self-hosted, ~30–40 ms/question on a GPU (Laya), data stays with you |
17
+ * | `@molecule/api-ai-decisions-jeff` | the open-weights Jeff models (Qwen3.5 0.8B/2B, Gemma 4 E2B fine-tunes) on a `jeff-serve` host you run | self-hosted on a GPU or Apple MLX, ~20–30 ms/request; English only; ≤26 options |
18
+ * | `@molecule/api-ai-decisions-intern-decision` | the open-weights Intern-Decision models (0.8B/2B/4B) on the Intern-Decision FastAPI service you run | self-hosted on a GPU; the only bond here whose model also reads `images` besides the LLM bond |
17
19
  * | `@molecule/api-ai-decisions-jev` | TypeSafe's hosted Jev API | no model to host; English-first |
18
- * | `@molecule/api-ai-decisions-llm` | whatever `ai` chat bond is bonded | no extra service; slower and costlier per call |
20
+ * | `@molecule/api-ai-decisions-llm` | whatever `ai` chat bond is bonded | no extra service; slower and costlier per call; passes `images` to vision chat models |
19
21
  *
20
22
  * @example
21
23
  * ```typescript
@@ -70,6 +72,11 @@
70
72
  * - **Keep state short.** Laya's English checkpoint reads 512 tokens (the
71
73
  * multilingual one 1,024); longer state is truncated, not refused. Put the
72
74
  * decisive text first.
75
+ * - **`images` is opt-in per bond.** Pass `images: [{ mimeType: 'image/png',
76
+ * data: '<base64, no data: prefix>' }]` only with a bond whose model sees
77
+ * images (Intern-Decision, Jeff's PyTorch backend, the LLM bond over a
78
+ * vision model). Laya and Jev throw when `images` is set — they never
79
+ * answer from the text alone as if the image had been read.
73
80
  * - **Never use it to generate text** — there is no text output. For a
74
81
  * free-text label set that changes per request, use
75
82
  * `@molecule/api-ai-classification`.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AAEH,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwGG;AAEH,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA"}
package/dist/types.d.ts CHANGED
@@ -106,12 +106,27 @@ export type DecisionAnswer = ChoiceAnswer | ScoreAnswer | YesNoAnswer;
106
106
  export type AnswersFor<Q extends Record<string, DecisionQuestion>> = {
107
107
  [K in keyof Q]: Q[K] extends ChoiceQuestion ? ChoiceAnswer : Q[K] extends ScoreQuestion ? ScoreAnswer : YesNoAnswer;
108
108
  };
109
+ /**
110
+ * An image the questions are also about (a screenshot, a photo of a receipt).
111
+ */
112
+ export interface DecisionImage {
113
+ /** The image's media type: `'image/png'`, `'image/jpeg'`, `'image/webp'`, … */
114
+ mimeType: string;
115
+ /** The raw image bytes, base64-encoded — no `data:` URL prefix. */
116
+ data: string;
117
+ }
109
118
  /** Input to one decision request. */
110
119
  export interface DecideInput<Q extends Record<string, DecisionQuestion> = Record<string, DecisionQuestion>> {
111
120
  /** What the questions are about. */
112
121
  state: DecisionState;
113
122
  /** The questions, keyed by an id you choose; answers come back under the same ids. */
114
123
  questions: Q;
124
+ /**
125
+ * Images the questions are also about, read alongside `state`. Only bonds
126
+ * whose model sees images accept this; every other bond THROWS when it is
127
+ * set rather than silently answering from the text alone.
128
+ */
129
+ images?: DecisionImage[];
115
130
  /** Provider-specific model / checkpoint id (e.g. `'jev-latest'`, `'multilingual'`). */
116
131
  model?: string;
117
132
  /** Mark answers whose `confidence` is below this (`0..1`) with `lowConfidence: true`. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAA;AAExE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,CAAA;IACd,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,CAAA;IACb,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,CAAA;IACb,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAA;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACzC;AAED,gDAAgD;AAChD,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,aAAa,GAAG,aAAa,CAAA;AAE7E,mCAAmC;AACnC,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB,wFAAwF;IACxF,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,0CAA0C;AAC1C,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,IAAI,EAAE,QAAQ,CAAA;IACd,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAA;IACd,4EAA4E;IAC5E,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACtC;AAED,yCAAyC;AACzC,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,IAAI,EAAE,OAAO,CAAA;IACb,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAA;IACb,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAA;IACb,sDAAsD;IACtD,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,yCAAyC;AACzC,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,IAAI,EAAE,OAAO,CAAA;IACb,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAA;IACnB,8GAA8G;IAC9G,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,mEAAmE;AACnE,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,CAAA;AAErE;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI;KAClE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,cAAc,GACvC,YAAY,GACZ,CAAC,CAAC,CAAC,CAAC,SAAS,aAAa,GACxB,WAAW,GACX,WAAW;CAClB,CAAA;AAED,qCAAqC;AACrC,MAAM,WAAW,WAAW,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAE7E,oCAAoC;IACpC,KAAK,EAAE,aAAa,CAAA;IACpB,sFAAsF;IACtF,SAAS,EAAE,CAAC,CAAA;IACZ,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,yFAAyF;IACzF,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,oDAAoD;IACpD,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,iDAAiD;AACjD,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,sCAAsC;AACtC,MAAM,WAAW,YAAY,CAC3B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAE7E,kCAAkC;IAClC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IACtB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kCAAkC;IAClC,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAErB;;;;;OAKG;IACH,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAC/C,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GACpB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@molecule/api-ai-decisions",
3
- "version": "1.0.0",
4
- "description": "Typed AI decisions for molecule.dev — answer choice, score and yes/no questions about text or JSON with calibrated probabilities, behind swappable bonds (Laya, Jev, any LLM)",
3
+ "version": "1.1.0",
4
+ "description": "Typed AI decisions for molecule.dev — answer choice, score and yes/no questions about text, JSON or images with calibrated probabilities, behind swappable bonds (Laya, Jeff, Intern-Decision, Jev, any LLM)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",