@roomle/embedding-lib 0.0.0-dev-432119f → 0.0.0-dev-bd4d1d1
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/hi.js +102 -71
- package/hi.min.js +101 -69
- package/package.json +1 -1
- package/packages/embedding-lib/src/homag-intelligence/hi-planning-assistant.d.ts +19 -1
package/hi.js
CHANGED
|
@@ -156,7 +156,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
156
156
|
otherBytes: n.bytes - i - o
|
|
157
157
|
}
|
|
158
158
|
};
|
|
159
|
-
}, D = (e) => `https://esm.sh/${e}?deps=zod@4.6.5`, O = 16, k = async ({ provider: e, model: t, apiKey: n, baseUrl: r, chatCompletions: i, reasoningEffort: a }, o) => {
|
|
159
|
+
}, D = (e) => `https://esm.sh/${e}?deps=zod@4.6.5`, O = 16, k = "auto", A = (e) => e.split("\n")[0].replace(/\*\*|__|^#+\s*/g, "").trim().slice(0, 120), j = /^(Previous response with id '[^']*' not found|No tool output found for function call )/, M = (e) => e instanceof Error && j.test(e.message), N = async ({ provider: e, model: t, apiKey: n, baseUrl: r, chatCompletions: i, reasoningEffort: a }, o) => {
|
|
160
160
|
let s = o ? { fetch: async (e, t) => (typeof t?.body == "string" && await o(t.body), fetch(e, t)) } : {};
|
|
161
161
|
switch (e) {
|
|
162
162
|
case "openai": {
|
|
@@ -164,10 +164,13 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
164
164
|
/* @vite-ignore */
|
|
165
165
|
D("@ai-sdk/openai@4.0.81")
|
|
166
166
|
);
|
|
167
|
-
return {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
167
|
+
return {
|
|
168
|
+
languageModel: e({
|
|
169
|
+
apiKey: n,
|
|
170
|
+
...s
|
|
171
|
+
})(t),
|
|
172
|
+
providerOptions: { openai: { reasoningSummary: k } }
|
|
173
|
+
};
|
|
171
174
|
}
|
|
172
175
|
case "azure": {
|
|
173
176
|
let { createAzure: e } = await import(
|
|
@@ -178,9 +181,15 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
178
181
|
baseURL: r,
|
|
179
182
|
...s
|
|
180
183
|
});
|
|
181
|
-
return {
|
|
182
|
-
languageModel:
|
|
184
|
+
return i ? {
|
|
185
|
+
languageModel: o.chat(t),
|
|
183
186
|
providerOptions: a ? { azure: { reasoningEffort: a } } : void 0
|
|
187
|
+
} : {
|
|
188
|
+
languageModel: o(t),
|
|
189
|
+
providerOptions: { azure: {
|
|
190
|
+
reasoningSummary: k,
|
|
191
|
+
...a && { reasoningEffort: a }
|
|
192
|
+
} }
|
|
184
193
|
};
|
|
185
194
|
}
|
|
186
195
|
case "mistral": {
|
|
@@ -216,7 +225,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
216
225
|
}
|
|
217
226
|
default: throw Error(`Unknown provider "${e}" - supported: azure, openai, mistral, anthropic, google`);
|
|
218
227
|
}
|
|
219
|
-
},
|
|
228
|
+
}, P = async (e, t, n) => {
|
|
220
229
|
let r = e.extended, i = (e) => r.planningAssistantOutput(e), a = [], o = null, s = /* @__PURE__ */ new Set(), c;
|
|
221
230
|
try {
|
|
222
231
|
c = await Promise.all([
|
|
@@ -224,7 +233,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
224
233
|
/* @vite-ignore */
|
|
225
234
|
D("ai@7.0.122")
|
|
226
235
|
),
|
|
227
|
-
|
|
236
|
+
N(t, async (e) => {
|
|
228
237
|
a.push({
|
|
229
238
|
...await E(e, s),
|
|
230
239
|
stepNumber: o
|
|
@@ -245,7 +254,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
245
254
|
r.callbacks.onPlanningAssistantPrompt = async ({ text: e, images: r }) => {
|
|
246
255
|
let c = performance.now();
|
|
247
256
|
a = [], o = null, s.clear();
|
|
248
|
-
let _ = [], v = [], y = null, b = [], E, D = !1, k = null,
|
|
257
|
+
let _ = [], v = [], y = null, b = [], E, D = !1, k = !1, j = null, N = 0, P = {
|
|
249
258
|
role: "user",
|
|
250
259
|
content: [{
|
|
251
260
|
type: "text",
|
|
@@ -274,65 +283,87 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
274
283
|
} catch {
|
|
275
284
|
console.log("[planning-assistant] reference unavailable; using tools");
|
|
276
285
|
}
|
|
277
|
-
|
|
286
|
+
j = await T(JSON.stringify({
|
|
278
287
|
instructions: m,
|
|
279
288
|
messages: r
|
|
280
|
-
})),
|
|
281
|
-
let a =
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
289
|
+
})), N = performance.now() - e;
|
|
290
|
+
let a = [
|
|
291
|
+
...r,
|
|
292
|
+
...h,
|
|
293
|
+
P
|
|
294
|
+
], s = [], f = 0, S;
|
|
295
|
+
do {
|
|
296
|
+
S = void 0;
|
|
297
|
+
let e = f, w = [], T = l({
|
|
298
|
+
model: d.languageModel,
|
|
299
|
+
providerOptions: g && r.length && j.sha256 ? {
|
|
300
|
+
...d.providerOptions,
|
|
301
|
+
azure: {
|
|
302
|
+
...d.providerOptions?.azure,
|
|
303
|
+
promptCacheKey: j.sha256
|
|
304
|
+
}
|
|
305
|
+
} : d.providerOptions,
|
|
306
|
+
instructions: m,
|
|
307
|
+
messages: [...a, ...s],
|
|
308
|
+
tools: p,
|
|
309
|
+
stopWhen: u(O - e),
|
|
310
|
+
abortSignal: n,
|
|
311
|
+
onLanguageModelCallEnd: (e) => {
|
|
312
|
+
v.push({
|
|
313
|
+
...x(e.usage),
|
|
314
|
+
...C(e.usage),
|
|
315
|
+
responseTimeMs: e.performance.responseTimeMs,
|
|
316
|
+
timeToFirstOutputMs: e.performance.timeToFirstOutputMs ?? null,
|
|
317
|
+
finishReason: e.finishReason
|
|
318
|
+
});
|
|
319
|
+
},
|
|
320
|
+
onStepEnd: (e) => {
|
|
321
|
+
w.push(...e.response.messages), f++;
|
|
322
|
+
},
|
|
323
|
+
prepareStep: (n) => {
|
|
324
|
+
o = e + n.stepNumber;
|
|
325
|
+
let r = o === O - 1 ? { toolChoice: "none" } : {}, i = t.provider === "openai" || t.provider === "azure" && !t.chatCompletions ? t.provider : null;
|
|
326
|
+
if (!i || n.stepNumber === 0) return r;
|
|
327
|
+
let a = n.steps.at(-1), s = a.providerMetadata?.[i]?.responseId;
|
|
328
|
+
if (!s) throw Error("The previous model response has no continuation ID");
|
|
329
|
+
return {
|
|
330
|
+
...r,
|
|
331
|
+
instructions: [],
|
|
332
|
+
messages: a.response.messages.filter(({ role: e }) => e === "tool"),
|
|
333
|
+
providerOptions: { [i]: {
|
|
334
|
+
previousResponseId: s,
|
|
335
|
+
store: !0
|
|
336
|
+
} }
|
|
337
|
+
};
|
|
288
338
|
}
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
messages: i.response.messages.filter(({ role: e }) => e === "tool"),
|
|
318
|
-
providerOptions: { [r]: {
|
|
319
|
-
previousResponseId: a,
|
|
320
|
-
store: !0
|
|
321
|
-
} }
|
|
322
|
-
};
|
|
323
|
-
}
|
|
324
|
-
});
|
|
325
|
-
for await (let e of a.stream) if (e.type === "text-delta") y ??= performance.now() - c, i({
|
|
326
|
-
type: "text",
|
|
327
|
-
text: e.text
|
|
328
|
-
});
|
|
329
|
-
else if (e.type === "tool-call") i({
|
|
330
|
-
type: "activity",
|
|
331
|
-
text: e.toolName
|
|
332
|
-
});
|
|
333
|
-
else if (e.type === "error") throw e.error;
|
|
334
|
-
else e.type === "finish-step" ? (b.push(x(e.usage)), _.push(C(e.usage))) : e.type === "finish" ? E = x(e.totalUsage) : e.type === "abort" && (D = !0);
|
|
335
|
-
!D && !n.aborted && h.push(j, ...await a.responseMessages), i({ type: "done" });
|
|
339
|
+
}), N = "", F = !1, I = () => {
|
|
340
|
+
let e = A(N);
|
|
341
|
+
!F && e && (F = !0, i({
|
|
342
|
+
type: "activity",
|
|
343
|
+
text: e
|
|
344
|
+
}));
|
|
345
|
+
};
|
|
346
|
+
for await (let e of T.stream) if (e.type === "text-delta") y ??= performance.now() - c, i({
|
|
347
|
+
type: "text",
|
|
348
|
+
text: e.text
|
|
349
|
+
});
|
|
350
|
+
else if (e.type === "tool-input-start" || e.type === "tool-call") i({
|
|
351
|
+
type: "activity",
|
|
352
|
+
text: e.toolName
|
|
353
|
+
});
|
|
354
|
+
else if (e.type === "reasoning-start") N = "", F = !1;
|
|
355
|
+
else if (e.type === "reasoning-delta") N += e.text, N.includes("\n") && I();
|
|
356
|
+
else if (e.type === "reasoning-end") I();
|
|
357
|
+
else if (e.type === "error") {
|
|
358
|
+
if (w.length > 0 && M(e.error)) {
|
|
359
|
+
S = e.error;
|
|
360
|
+
break;
|
|
361
|
+
}
|
|
362
|
+
throw e.error;
|
|
363
|
+
} else e.type === "finish-step" ? (b.push(x(e.usage)), _.push(C(e.usage))) : e.type === "finish" ? (E = s.length ? void 0 : x(e.totalUsage), D = !0) : e.type === "abort" && (k = !0);
|
|
364
|
+
S ? (console.log(`[planning-assistant] continuation rejected (${S.message}) - continuing with the whole history`), s.push(...w)) : !k && !n.aborted && h.push(P, ...s, ...await T.responseMessages);
|
|
365
|
+
} while (S);
|
|
366
|
+
i({ type: "done" });
|
|
336
367
|
} catch (e) {
|
|
337
368
|
console.log("[planning-assistant]", String(e)), i({
|
|
338
369
|
type: "error",
|
|
@@ -343,7 +374,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
343
374
|
inputTokens: E?.inputTokens ?? S(b.map((e) => e.inputTokens)),
|
|
344
375
|
outputTokens: E?.outputTokens ?? S(b.map((e) => e.outputTokens)),
|
|
345
376
|
totalTokens: E?.totalTokens ?? S(b.map((e) => e.totalTokens))
|
|
346
|
-
}, r = Object.values(e).some((e) => e !== null), i =
|
|
377
|
+
}, r = Object.values(e).some((e) => e !== null), i = D && !k && !n.aborted && Object.values(e).every((e) => e !== null) && b.every((e) => Object.values(e).every((e) => e !== null));
|
|
347
378
|
console.log(`[planning-assistant] usage ${JSON.stringify({
|
|
348
379
|
provider: t.provider,
|
|
349
380
|
model: t.model,
|
|
@@ -354,8 +385,8 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
354
385
|
details: w(_),
|
|
355
386
|
modelCalls: v,
|
|
356
387
|
requests: a,
|
|
357
|
-
reference:
|
|
358
|
-
referenceAcquisitionMs:
|
|
388
|
+
reference: j,
|
|
389
|
+
referenceAcquisitionMs: N,
|
|
359
390
|
firstTextMs: y,
|
|
360
391
|
turnMs: performance.now() - c
|
|
361
392
|
}
|
|
@@ -368,10 +399,10 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
368
399
|
type: "availability",
|
|
369
400
|
available: !0
|
|
370
401
|
});
|
|
371
|
-
},
|
|
402
|
+
}, F = {
|
|
372
403
|
HIDE: "hide",
|
|
373
404
|
SHOW_ATTRIBUTES: "attributes",
|
|
374
405
|
SHOW_ARTICLES: "articles"
|
|
375
406
|
};
|
|
376
407
|
//#endregion
|
|
377
|
-
export {
|
|
408
|
+
export { F as HI_PANEL_ACTION, _ as cleanupHi, d as createHiLibraryCallbacks, y as createHiMcpTools, c as libLoadArticleCatalog, u as libLoadCalcScript, l as libLoadMasterData, N as loadChatModel, p as omGetRequest, f as omPostRequest, a as registerLegacyUrlFormat, g as setupHi, P as startPlanningAssistant, o as unregisterLegacyUrlFormat };
|
package/hi.min.js
CHANGED
|
@@ -144,15 +144,18 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
144
144
|
otherBytes: n.bytes - i - o
|
|
145
145
|
}
|
|
146
146
|
};
|
|
147
|
-
}, T = (e) => `https://esm.sh/${e}?deps=zod@4.6.5`, E = async ({ provider: e, model: t, apiKey: n, baseUrl: r, chatCompletions: i, reasoningEffort: a }, o) => {
|
|
147
|
+
}, T = (e) => `https://esm.sh/${e}?deps=zod@4.6.5`, E = "auto", D = /^(Previous response with id '[^']*' not found|No tool output found for function call )/, O = (e) => e instanceof Error && D.test(e.message), k = async ({ provider: e, model: t, apiKey: n, baseUrl: r, chatCompletions: i, reasoningEffort: a }, o) => {
|
|
148
148
|
let s = o ? { fetch: async (e, t) => (typeof t?.body == "string" && await o(t.body), fetch(e, t)) } : {};
|
|
149
149
|
switch (e) {
|
|
150
150
|
case "openai": {
|
|
151
151
|
let { createOpenAI: e } = await import(T("@ai-sdk/openai@4.0.81"));
|
|
152
|
-
return {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
152
|
+
return {
|
|
153
|
+
languageModel: e({
|
|
154
|
+
apiKey: n,
|
|
155
|
+
...s
|
|
156
|
+
})(t),
|
|
157
|
+
providerOptions: { openai: { reasoningSummary: E } }
|
|
158
|
+
};
|
|
156
159
|
}
|
|
157
160
|
case "azure": {
|
|
158
161
|
let { createAzure: e } = await import(T("@ai-sdk/azure@4.0.85")), o = e({
|
|
@@ -160,9 +163,15 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
160
163
|
baseURL: r,
|
|
161
164
|
...s
|
|
162
165
|
});
|
|
163
|
-
return {
|
|
164
|
-
languageModel:
|
|
166
|
+
return i ? {
|
|
167
|
+
languageModel: o.chat(t),
|
|
165
168
|
providerOptions: a ? { azure: { reasoningEffort: a } } : void 0
|
|
169
|
+
} : {
|
|
170
|
+
languageModel: o(t),
|
|
171
|
+
providerOptions: { azure: {
|
|
172
|
+
reasoningSummary: E,
|
|
173
|
+
...a && { reasoningEffort: a }
|
|
174
|
+
} }
|
|
166
175
|
};
|
|
167
176
|
}
|
|
168
177
|
case "mistral": {
|
|
@@ -189,12 +198,12 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
189
198
|
}
|
|
190
199
|
default: throw Error(`Unknown provider "${e}" - supported: azure, openai, mistral, anthropic, google`);
|
|
191
200
|
}
|
|
192
|
-
},
|
|
201
|
+
}, A = async (e, t, n) => {
|
|
193
202
|
let r = e.extended, i = (e) => r.planningAssistantOutput(e), a = [], o = null, s = /* @__PURE__ */ new Set(), c;
|
|
194
203
|
try {
|
|
195
204
|
c = await Promise.all([
|
|
196
205
|
import(T("ai@7.0.122")),
|
|
197
|
-
|
|
206
|
+
k(t, async (e) => {
|
|
198
207
|
a.push({
|
|
199
208
|
...await w(e, s),
|
|
200
209
|
stepNumber: o
|
|
@@ -215,7 +224,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
215
224
|
r.callbacks.onPlanningAssistantPrompt = async ({ text: e, images: r }) => {
|
|
216
225
|
let c = performance.now();
|
|
217
226
|
a = [], o = null, s.clear();
|
|
218
|
-
let _ = [], v = [], y = null, w = [], T, E = !1, D = null,
|
|
227
|
+
let _ = [], v = [], y = null, w = [], T, E = !1, D = !1, k = null, A = {
|
|
219
228
|
role: "user",
|
|
220
229
|
content: [{
|
|
221
230
|
type: "text",
|
|
@@ -242,67 +251,90 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
242
251
|
});
|
|
243
252
|
}
|
|
244
253
|
} catch {}
|
|
245
|
-
|
|
254
|
+
k = await C(JSON.stringify({
|
|
246
255
|
instructions: m,
|
|
247
256
|
messages: r
|
|
248
257
|
})), performance.now() - e;
|
|
249
|
-
let a =
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
258
|
+
let a = [
|
|
259
|
+
...r,
|
|
260
|
+
...h,
|
|
261
|
+
A
|
|
262
|
+
], s = [], f, x = 0;
|
|
263
|
+
do {
|
|
264
|
+
f = void 0;
|
|
265
|
+
let e = x, C = [], j = l({
|
|
266
|
+
model: d.languageModel,
|
|
267
|
+
providerOptions: g && r.length && k.sha256 ? {
|
|
268
|
+
...d.providerOptions,
|
|
269
|
+
azure: {
|
|
270
|
+
...d.providerOptions?.azure,
|
|
271
|
+
promptCacheKey: k.sha256
|
|
272
|
+
}
|
|
273
|
+
} : d.providerOptions,
|
|
274
|
+
instructions: m,
|
|
275
|
+
messages: [...a, ...s],
|
|
276
|
+
tools: p,
|
|
277
|
+
stopWhen: u(16 - e),
|
|
278
|
+
abortSignal: n,
|
|
279
|
+
onLanguageModelCallEnd: (e) => {
|
|
280
|
+
v.push({
|
|
281
|
+
...b(e.usage),
|
|
282
|
+
...S(e.usage),
|
|
283
|
+
responseTimeMs: e.performance.responseTimeMs,
|
|
284
|
+
timeToFirstOutputMs: e.performance.timeToFirstOutputMs ?? null,
|
|
285
|
+
finishReason: e.finishReason
|
|
286
|
+
});
|
|
287
|
+
},
|
|
288
|
+
onStepEnd: (e) => {
|
|
289
|
+
C.push(...e.response.messages), x++;
|
|
290
|
+
},
|
|
291
|
+
prepareStep: (n) => {
|
|
292
|
+
o = e + n.stepNumber;
|
|
293
|
+
let r = o === 15 ? { toolChoice: "none" } : {}, i = t.provider === "openai" || t.provider === "azure" && !t.chatCompletions ? t.provider : null;
|
|
294
|
+
if (!i || n.stepNumber === 0) return r;
|
|
295
|
+
let a = n.steps.at(-1), s = a.providerMetadata?.[i]?.responseId;
|
|
296
|
+
if (!s) throw Error("The previous model response has no continuation ID");
|
|
297
|
+
return {
|
|
298
|
+
...r,
|
|
299
|
+
instructions: [],
|
|
300
|
+
messages: a.response.messages.filter(({ role: e }) => e === "tool"),
|
|
301
|
+
providerOptions: { [i]: {
|
|
302
|
+
previousResponseId: s,
|
|
303
|
+
store: !0
|
|
304
|
+
} }
|
|
305
|
+
};
|
|
256
306
|
}
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
instructions: [],
|
|
285
|
-
messages: i.response.messages.filter(({ role: e }) => e === "tool"),
|
|
286
|
-
providerOptions: { [r]: {
|
|
287
|
-
previousResponseId: a,
|
|
288
|
-
store: !0
|
|
289
|
-
} }
|
|
290
|
-
};
|
|
307
|
+
}), M = "", N = !1, P = () => {
|
|
308
|
+
let e = M.split("\n")[0].replace(/\*\*|__|^#+\s*/g, "").trim().slice(0, 120);
|
|
309
|
+
!N && e && (N = !0, i({
|
|
310
|
+
type: "activity",
|
|
311
|
+
text: e
|
|
312
|
+
}));
|
|
313
|
+
};
|
|
314
|
+
for await (let e of j.stream) if (e.type === "text-delta") y ??= performance.now() - c, i({
|
|
315
|
+
type: "text",
|
|
316
|
+
text: e.text
|
|
317
|
+
});
|
|
318
|
+
else if (e.type === "tool-input-start" || e.type === "tool-call") i({
|
|
319
|
+
type: "activity",
|
|
320
|
+
text: e.toolName
|
|
321
|
+
});
|
|
322
|
+
else if (e.type === "reasoning-start") M = "", N = !1;
|
|
323
|
+
else if (e.type === "reasoning-delta") M += e.text, M.includes("\n") && P();
|
|
324
|
+
else if (e.type === "reasoning-end") P();
|
|
325
|
+
else {
|
|
326
|
+
if (e.type === "error") {
|
|
327
|
+
if (C.length > 0 && O(e.error)) {
|
|
328
|
+
f = e.error;
|
|
329
|
+
break;
|
|
330
|
+
}
|
|
331
|
+
throw e.error;
|
|
332
|
+
}
|
|
333
|
+
e.type === "finish-step" ? (w.push(b(e.usage)), _.push(S(e.usage))) : e.type === "finish" ? (T = s.length ? void 0 : b(e.totalUsage), E = !0) : e.type === "abort" && (D = !0);
|
|
291
334
|
}
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
text: e.text
|
|
296
|
-
});
|
|
297
|
-
else if (e.type === "tool-call") i({
|
|
298
|
-
type: "activity",
|
|
299
|
-
text: e.toolName
|
|
300
|
-
});
|
|
301
|
-
else {
|
|
302
|
-
if (e.type === "error") throw e.error;
|
|
303
|
-
e.type === "finish-step" ? (w.push(b(e.usage)), _.push(S(e.usage))) : e.type === "finish" ? T = b(e.totalUsage) : e.type === "abort" && (E = !0);
|
|
304
|
-
}
|
|
305
|
-
E || n.aborted || h.push(O, ...await a.responseMessages), i({ type: "done" });
|
|
335
|
+
f ? s.push(...C) : D || n.aborted || h.push(A, ...s, ...await j.responseMessages);
|
|
336
|
+
} while (f);
|
|
337
|
+
i({ type: "done" });
|
|
306
338
|
} catch (e) {
|
|
307
339
|
i({
|
|
308
340
|
type: "error",
|
|
@@ -314,7 +346,7 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
314
346
|
outputTokens: T?.outputTokens ?? x(w.map((e) => e.outputTokens)),
|
|
315
347
|
totalTokens: T?.totalTokens ?? x(w.map((e) => e.totalTokens))
|
|
316
348
|
};
|
|
317
|
-
Object.values(e).some((e) => e !== null),
|
|
349
|
+
Object.values(e).some((e) => e !== null), E && !D && !n.aborted && Object.values(e).every((e) => e !== null) && w.every((e) => Object.values(e).every((e) => e !== null));
|
|
318
350
|
}
|
|
319
351
|
}, i({
|
|
320
352
|
type: "images",
|
|
@@ -323,9 +355,9 @@ var n = (e, t) => t === e.libraryId ? e : {
|
|
|
323
355
|
type: "availability",
|
|
324
356
|
available: !0
|
|
325
357
|
});
|
|
326
|
-
},
|
|
358
|
+
}, j = {
|
|
327
359
|
HIDE: "hide",
|
|
328
360
|
SHOW_ATTRIBUTES: "attributes",
|
|
329
361
|
SHOW_ARTICLES: "articles"
|
|
330
362
|
};
|
|
331
|
-
export {
|
|
363
|
+
export { j as HI_PANEL_ACTION, g as cleanupHi, d as createHiLibraryCallbacks, v as createHiMcpTools, c as libLoadArticleCatalog, u as libLoadCalcScript, l as libLoadMasterData, k as loadChatModel, p as omGetRequest, f as omPostRequest, a as registerLegacyUrlFormat, h as setupHi, A as startPlanningAssistant, o as unregisterLegacyUrlFormat };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@roomle/embedding-lib",
|
|
3
|
-
"version": "0.0.0-dev-
|
|
3
|
+
"version": "0.0.0-dev-bd4d1d1",
|
|
4
4
|
"description": "This is a small library which can be used to communicate with the Roomle Configurator. ES modules only (browser-compatible).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./roomle-embedding-lib.js",
|
|
@@ -42,14 +42,32 @@ export type PlanningAssistantPlannerApi = HiMcpPlannerApi & {
|
|
|
42
42
|
/** The AI SDK language model of the config and the provider options `streamText` takes with it. */
|
|
43
43
|
export declare const loadChatModel: ({ provider, model, apiKey, baseUrl, chatCompletions, reasoningEffort, }: PlanningAssistantConfig, observeRequest?: (body: string) => Promise<void>) => Promise<{
|
|
44
44
|
languageModel: any;
|
|
45
|
-
providerOptions
|
|
45
|
+
providerOptions: {
|
|
46
|
+
openai: {
|
|
47
|
+
reasoningSummary: string;
|
|
48
|
+
};
|
|
49
|
+
azure?: undefined;
|
|
50
|
+
};
|
|
51
|
+
} | {
|
|
52
|
+
languageModel: any;
|
|
53
|
+
providerOptions: {
|
|
54
|
+
azure: {
|
|
55
|
+
reasoningEffort: string;
|
|
56
|
+
};
|
|
57
|
+
openai?: undefined;
|
|
58
|
+
};
|
|
46
59
|
} | {
|
|
47
60
|
languageModel: any;
|
|
48
61
|
providerOptions: {
|
|
49
62
|
azure: {
|
|
50
63
|
reasoningEffort: string;
|
|
64
|
+
reasoningSummary: string;
|
|
51
65
|
};
|
|
66
|
+
openai?: undefined;
|
|
52
67
|
};
|
|
68
|
+
} | {
|
|
69
|
+
languageModel: any;
|
|
70
|
+
providerOptions?: undefined;
|
|
53
71
|
}>;
|
|
54
72
|
/**
|
|
55
73
|
* Runs the planning agent of the AI Planning Assistant window
|