@framers/agentos 0.13.1 → 0.13.2
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 +11 -11
- package/dist/api/agent.d.ts +7 -3
- package/dist/api/agent.d.ts.map +1 -1
- package/dist/api/agent.js.map +1 -1
- package/dist/api/embedText.d.ts.map +1 -1
- package/dist/api/embedText.js +1 -8
- package/dist/api/embedText.js.map +1 -1
- package/dist/api/gmi.d.ts.map +1 -1
- package/dist/api/gmi.js +24 -19
- package/dist/api/gmi.js.map +1 -1
- package/dist/api/runtime/agentCognitiveMemory.d.ts +12 -9
- package/dist/api/runtime/agentCognitiveMemory.d.ts.map +1 -1
- package/dist/api/runtime/agentCognitiveMemory.js +53 -17
- package/dist/api/runtime/agentCognitiveMemory.js.map +1 -1
- package/dist/api/runtime/completionGateway.d.ts.map +1 -1
- package/dist/api/runtime/completionGateway.js +7 -0
- package/dist/api/runtime/completionGateway.js.map +1 -1
- package/dist/api/runtime/gmiResults.d.ts +63 -6
- package/dist/api/runtime/gmiResults.d.ts.map +1 -1
- package/dist/api/runtime/gmiResults.js +83 -13
- package/dist/api/runtime/gmiResults.js.map +1 -1
- package/dist/api/runtime/gmiSession.d.ts +17 -2
- package/dist/api/runtime/gmiSession.d.ts.map +1 -1
- package/dist/api/runtime/gmiSession.js +32 -7
- package/dist/api/runtime/gmiSession.js.map +1 -1
- package/dist/api/runtime/provider-defaults.d.ts +9 -0
- package/dist/api/runtime/provider-defaults.d.ts.map +1 -1
- package/dist/api/runtime/provider-defaults.js +9 -0
- package/dist/api/runtime/provider-defaults.js.map +1 -1
- package/dist/cognition/memory/CognitiveMemoryManager.d.ts +28 -21
- package/dist/cognition/memory/CognitiveMemoryManager.d.ts.map +1 -1
- package/dist/cognition/memory/CognitiveMemoryManager.js +76 -26
- package/dist/cognition/memory/CognitiveMemoryManager.js.map +1 -1
- package/dist/cognition/memory/retrieval/store/MemoryStore.d.ts +10 -2
- package/dist/cognition/memory/retrieval/store/MemoryStore.d.ts.map +1 -1
- package/dist/cognition/memory/retrieval/store/MemoryStore.js +11 -2
- package/dist/cognition/memory/retrieval/store/MemoryStore.js.map +1 -1
- package/dist/cognition/substrate/ConversationHistoryManager.d.ts +3 -1
- package/dist/cognition/substrate/ConversationHistoryManager.d.ts.map +1 -1
- package/dist/cognition/substrate/ConversationHistoryManager.js +9 -2
- package/dist/cognition/substrate/ConversationHistoryManager.js.map +1 -1
- package/dist/cognition/substrate/GMI.d.ts +33 -2
- package/dist/cognition/substrate/GMI.d.ts.map +1 -1
- package/dist/cognition/substrate/GMI.js +225 -71
- package/dist/cognition/substrate/GMI.js.map +1 -1
- package/dist/cognition/substrate/IGMI.d.ts +14 -3
- package/dist/cognition/substrate/IGMI.d.ts.map +1 -1
- package/dist/cognition/substrate/IGMI.js +2 -1
- package/dist/cognition/substrate/IGMI.js.map +1 -1
- package/dist/cognition/substrate/SentimentTracker.d.ts +8 -0
- package/dist/cognition/substrate/SentimentTracker.d.ts.map +1 -1
- package/dist/cognition/substrate/SentimentTracker.js +20 -0
- package/dist/cognition/substrate/SentimentTracker.js.map +1 -1
- package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts.map +1 -1
- package/dist/core/llm/providers/implementations/OpenAIProvider.js +23 -4
- package/dist/core/llm/providers/implementations/OpenAIProvider.js.map +1 -1
- package/dist/extensions/ExtensionRegistry.d.ts.map +1 -1
- package/dist/extensions/ExtensionRegistry.js +4 -1
- package/dist/extensions/ExtensionRegistry.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,12 +5,15 @@
|
|
|
5
5
|
* in-memory knowledge graph, an embedding manager for `memory.embedding`, a
|
|
6
6
|
* working memory of its own and the persona's HEXACO traits.
|
|
7
7
|
*
|
|
8
|
-
* One manager serves every session of an agent
|
|
9
|
-
* the
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* One manager serves every session of an agent, and each session's GMI is given
|
|
9
|
+
* `manager.forSession()`: the shared store with a working memory of its own, so
|
|
10
|
+
* a session's active context lists only its own memories. Each GMI's memory
|
|
11
|
+
* bridge passes the session's mood on every encode, retrieve and assemble call
|
|
12
|
+
* and scopes recall (graph associations included) to the session's user and
|
|
13
|
+
* conversation, so the manager's own mood callback is neutral. The memory graph
|
|
14
|
+
* runs on the `'knowledge-graph'` backend over the same in-memory knowledge
|
|
15
|
+
* graph, because the `'graphology'` backend needs graphology, an optional peer
|
|
16
|
+
* dependency. Consolidation runs only when
|
|
14
17
|
* `memory.consolidation.enabled` is true. The build embeds one test text through
|
|
15
18
|
* the embedding model it sets up, so a model that cannot answer, or answers with
|
|
16
19
|
* another size than memory expects, fails the build instead of leaving memory empty.
|
|
@@ -22,6 +25,8 @@ import { InMemoryVectorStore } from '../../cognition/rag/vector_stores/InMemoryV
|
|
|
22
25
|
import { InMemoryWorkingMemory } from '../../cognition/substrate/memory/InMemoryWorkingMemory.js';
|
|
23
26
|
import { HEXACO_TRAIT_KEYS, normalizeHexacoTraits } from '../../cognition/substrate/personas/hexaco.js';
|
|
24
27
|
import { createProviderManager, resolveModelOption, resolveProvider } from '../model.js';
|
|
28
|
+
import { GEMINI_DEFAULT_EMBEDDING_MODEL, PROVIDER_DEFAULTS } from './provider-defaults.js';
|
|
29
|
+
import { getDefaultProvider } from './global-default.js';
|
|
25
30
|
/**
|
|
26
31
|
* Output sizes of the embedding models agentos knows, as each returns them when
|
|
27
32
|
* no `dimensions` is requested: OpenAI's (text-embedding-3 in
|
|
@@ -76,21 +81,52 @@ function checkedDimension(memory) {
|
|
|
76
81
|
}
|
|
77
82
|
return declared;
|
|
78
83
|
}
|
|
84
|
+
/** The default embedding model agentos has for `providerId`: the shared provider defaults', or Gemini's (embedText's). */
|
|
85
|
+
function defaultEmbeddingModelOf(providerId) {
|
|
86
|
+
return providerId === 'gemini' ? GEMINI_DEFAULT_EMBEDDING_MODEL : PROVIDER_DEFAULTS[providerId]?.embedding;
|
|
87
|
+
}
|
|
88
|
+
/** The providers memory picks by itself, OpenAI first (spec D7), each with the variable that configures it. */
|
|
89
|
+
const EMBEDDING_DETECTION_ORDER = [
|
|
90
|
+
{ provider: 'openai', envKey: 'OPENAI_API_KEY' },
|
|
91
|
+
{ provider: 'gemini', envKey: 'GEMINI_API_KEY' },
|
|
92
|
+
{ provider: 'ollama', envKey: 'OLLAMA_BASE_URL' },
|
|
93
|
+
];
|
|
94
|
+
/**
|
|
95
|
+
* The embedding provider, and the model when one is named, memory uses when
|
|
96
|
+
* `memory.embedding` names no provider: the global default provider
|
|
97
|
+
* (`setDefaultProvider`) when agentos has an embedding model for it, with the
|
|
98
|
+
* default's own model when that is an embedding model; else the first of
|
|
99
|
+
* OpenAI, Gemini and Ollama whose key (Ollama: base URL) is set.
|
|
100
|
+
*/
|
|
101
|
+
function defaultEmbeddingChoice(env) {
|
|
102
|
+
const globalDefault = getDefaultProvider();
|
|
103
|
+
if (globalDefault?.provider && defaultEmbeddingModelOf(globalDefault.provider)) {
|
|
104
|
+
const model = globalDefault.model && /embed/i.test(globalDefault.model) ? globalDefault.model : undefined;
|
|
105
|
+
return { provider: globalDefault.provider, ...(model ? { model } : {}) };
|
|
106
|
+
}
|
|
107
|
+
const detected = EMBEDDING_DETECTION_ORDER.find(({ envKey }) => env[envKey]);
|
|
108
|
+
return detected ? { provider: detected.provider } : undefined;
|
|
109
|
+
}
|
|
79
110
|
/**
|
|
80
|
-
* Resolves the embedding model from `memory.embedding`, or, when it
|
|
81
|
-
* from the
|
|
82
|
-
*
|
|
83
|
-
*
|
|
111
|
+
* Resolves the embedding model from `memory.embedding`, or, when it names no
|
|
112
|
+
* provider, from the global default provider and the environment (see
|
|
113
|
+
* {@link defaultEmbeddingChoice}). Only checks which provider is configured;
|
|
114
|
+
* its credentials are resolved when the memory is built.
|
|
84
115
|
*/
|
|
85
116
|
function resolveEmbeddingTarget(memory, env) {
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
117
|
+
const choice = memory.embedding?.provider
|
|
118
|
+
? { provider: memory.embedding.provider }
|
|
119
|
+
: defaultEmbeddingChoice(env);
|
|
120
|
+
if (!choice) {
|
|
121
|
+
throw new Error('gmi(): cognitive memory needs an embedding model. Set memory.embedding: { provider, model }, a default provider that has embedding models (setDefaultProvider), or OPENAI_API_KEY, GEMINI_API_KEY or OLLAMA_BASE_URL.');
|
|
89
122
|
}
|
|
123
|
+
const requested = choice.provider;
|
|
90
124
|
refuseProviderWithoutEmbeddings(requested);
|
|
125
|
+
// Gemini has no embedding model in the shared provider defaults; embedText's default applies.
|
|
126
|
+
const modelName = memory.embedding?.model ?? choice.model ?? (requested === 'gemini' ? GEMINI_DEFAULT_EMBEDDING_MODEL : undefined);
|
|
91
127
|
let model;
|
|
92
128
|
try {
|
|
93
|
-
model = resolveModelOption({ provider: requested, model:
|
|
129
|
+
model = resolveModelOption({ provider: requested, model: modelName }, 'embedding');
|
|
94
130
|
}
|
|
95
131
|
catch (error) {
|
|
96
132
|
throw errorWithCause(`gmi(): memory.embedding: ${messageOf(error)}`, error);
|
|
@@ -107,11 +143,11 @@ function resolveEmbeddingTarget(memory, env) {
|
|
|
107
143
|
/**
|
|
108
144
|
* Checks, when the agent is built, that cognitive memory has an embedding model
|
|
109
145
|
* it can use, so a missing or unusable one fails before the first send. Reads
|
|
110
|
-
* the environment only to pick the provider when
|
|
111
|
-
* credentials are read when the memory is built.
|
|
146
|
+
* the global default provider and the environment only to pick the provider when
|
|
147
|
+
* `memory.embedding` names none; credentials are read when the memory is built.
|
|
112
148
|
*
|
|
113
149
|
* @param memory - The agent's memory config.
|
|
114
|
-
* @param env - The environment to read OPENAI_API_KEY and OLLAMA_BASE_URL from (defaults to `process.env`).
|
|
150
|
+
* @param env - The environment to read OPENAI_API_KEY, GEMINI_API_KEY and OLLAMA_BASE_URL from (defaults to `process.env`).
|
|
115
151
|
* @throws {Error} Naming `memory.embedding` when no provider is set or detected, when the
|
|
116
152
|
* provider has no embeddings (Anthropic, Groq, xAI, the Claude Code and Gemini CLIs), when the
|
|
117
153
|
* model does not resolve, or when the model's output size is unknown and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentCognitiveMemory.js","sourceRoot":"","sources":["../../../src/api/runtime/agentCognitiveMemory.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agentCognitiveMemory.js","sourceRoot":"","sources":["../../../src/api/runtime/agentCognitiveMemory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completionGateway.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"completionGateway.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -97,7 +97,13 @@ function errorFromChunk(e) {
|
|
|
97
97
|
...(e.details !== undefined ? { details: e.details } : {}),
|
|
98
98
|
});
|
|
99
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* The chunk that ends an attempt whose provider threw after content. It carries
|
|
102
|
+
* the usage the error reports (`details.usage`, as a refused Claude turn reports
|
|
103
|
+
* it), so the GMI counts what the failed step was billed.
|
|
104
|
+
*/
|
|
100
105
|
function terminalErrorChunk(resolution, error) {
|
|
106
|
+
const usage = asUsageReport(usageOfError(error));
|
|
101
107
|
return {
|
|
102
108
|
id: `gateway-error-${resolution.providerId}-${resolution.hop}`,
|
|
103
109
|
object: 'chat.completion.chunk',
|
|
@@ -105,6 +111,7 @@ function terminalErrorChunk(resolution, error) {
|
|
|
105
111
|
modelId: resolution.modelId,
|
|
106
112
|
choices: [],
|
|
107
113
|
isFinal: true,
|
|
114
|
+
...(usage ? { usage } : {}),
|
|
108
115
|
error: { message: error.message, type: error.type ?? 'provider_error', details: { terminal: true, providerId: resolution.providerId, hop: resolution.hop } },
|
|
109
116
|
};
|
|
110
117
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completionGateway.js","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"completionGateway.js","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
*
|
|
7
7
|
* The rules are streamText's: the turn's text is the latest step that produced
|
|
8
8
|
* text; usage adds each step's STEP_FINISHED usage once (USAGE_UPDATE carries a
|
|
9
|
-
* request's running total) plus the billed usage of attempts that failed before
|
|
10
|
-
* any output; a run
|
|
11
|
-
* `'tool-calls'
|
|
9
|
+
* request's running total) plus the billed usage of attempts that failed, before
|
|
10
|
+
* any output or after it; a run ends with its last step's own finish reason, or
|
|
11
|
+
* as `'tool-calls'` when the step limit ran out with calls outstanding and no
|
|
12
|
+
* text; an ERROR chunk ends it as `'error'` with the GMI's code.
|
|
12
13
|
*/
|
|
13
14
|
import { GMIError } from '../../core/utils/errors.js';
|
|
14
15
|
import { type GMIOutputChunk, type StepFinishedChunkPayload, type ToolResultChunkPayload } from '../../cognition/substrate/IGMI.js';
|
|
@@ -21,7 +22,7 @@ export interface GmiTurnError {
|
|
|
21
22
|
message: string;
|
|
22
23
|
details?: unknown;
|
|
23
24
|
}
|
|
24
|
-
/** An attempt that failed before any output and was billed (reported on a USAGE_UPDATE with `metadata.attemptFailed`). */
|
|
25
|
+
/** An attempt that failed, before any output or after it, and was billed (reported on a USAGE_UPDATE with `metadata.attemptFailed`). */
|
|
25
26
|
export interface GmiFailedAttempt {
|
|
26
27
|
providerId?: string;
|
|
27
28
|
modelId?: string;
|
|
@@ -29,11 +30,22 @@ export interface GmiFailedAttempt {
|
|
|
29
30
|
}
|
|
30
31
|
/** The message a failed tool result carries. */
|
|
31
32
|
export declare function toolErrorMessage(result: ToolResultChunkPayload): string;
|
|
33
|
+
/** Options for a {@link GmiTurnFolder}. */
|
|
34
|
+
export interface GmiTurnFolderOptions {
|
|
35
|
+
/**
|
|
36
|
+
* Whether the turn opted into cache diagnostics (`cacheDiagnostics` on the
|
|
37
|
+
* call). The provider message id is reported only then, as generateText and
|
|
38
|
+
* streamText report it: it is the thread key for the next request's diagnostics.
|
|
39
|
+
*/
|
|
40
|
+
cacheDiagnostics?: boolean;
|
|
41
|
+
}
|
|
32
42
|
/**
|
|
33
43
|
* Accumulates one turn's chunks. `push` every chunk in order; read the result
|
|
34
44
|
* once the turn has ended (or at any point for a partial view).
|
|
35
45
|
*/
|
|
36
46
|
export declare class GmiTurnFolder {
|
|
47
|
+
private readonly options;
|
|
48
|
+
constructor(options?: GmiTurnFolderOptions);
|
|
37
49
|
/** The STEP_FINISHED payloads, in order. */
|
|
38
50
|
readonly steps: StepFinishedChunkPayload[];
|
|
39
51
|
/** Every requested call in order, with its result once the TOOL_RESULT arrived. */
|
|
@@ -41,9 +53,32 @@ export declare class GmiTurnFolder {
|
|
|
41
53
|
private readonly overrides;
|
|
42
54
|
private readonly failed;
|
|
43
55
|
private failure;
|
|
56
|
+
/** The provider and model the turn's first model call was routed to, and who waits for them. */
|
|
57
|
+
private firstRoute;
|
|
58
|
+
private readonly routeListeners;
|
|
59
|
+
/** How many calls had been requested when the latest step finished: the calls after it belong to the next step. */
|
|
60
|
+
private callsBeforeLastStep;
|
|
61
|
+
/** Whether the latest finished step requested tools (the GMI then runs them and goes on, unless the step limit ran out). */
|
|
62
|
+
private lastStepCalledTools;
|
|
44
63
|
push(chunk: GMIOutputChunk): void;
|
|
45
64
|
/** Marks the turn failed by a thrown error (the turn's generator itself threw). An ERROR chunk already seen wins. */
|
|
46
65
|
fail(error: unknown): void;
|
|
66
|
+
/**
|
|
67
|
+
* Records a model call's route (its provider and model, once the hop is
|
|
68
|
+
* resolved). The first one is the turn's route, as streamText reports it:
|
|
69
|
+
* listeners hear it at once, before any chunk of the call arrives.
|
|
70
|
+
*/
|
|
71
|
+
route(providerId: string, modelId: string): void;
|
|
72
|
+
/** The turn's first route, once it is known. */
|
|
73
|
+
routed(): {
|
|
74
|
+
providerId: string;
|
|
75
|
+
modelId: string;
|
|
76
|
+
} | undefined;
|
|
77
|
+
/** Calls `listener` with the turn's first route as soon as it is known (at once when it already is). */
|
|
78
|
+
onRoute(listener: (route: {
|
|
79
|
+
providerId: string;
|
|
80
|
+
modelId: string;
|
|
81
|
+
}) => void): void;
|
|
47
82
|
/** Replaces a step's text (`onAfterGeneration`), in the result and in what the session stores. */
|
|
48
83
|
overrideStepText(stepIndex: number, text: string): void;
|
|
49
84
|
/** A step's text as the result reports it: a schema answer as its JSON string, else the hook's replacement, else the step's own text. */
|
|
@@ -52,14 +87,27 @@ export declare class GmiTurnFolder {
|
|
|
52
87
|
text(): string;
|
|
53
88
|
/** Each step's usage once, plus every billed failed attempt. */
|
|
54
89
|
usage(): TokenUsage;
|
|
55
|
-
/** The billed attempts that failed
|
|
90
|
+
/** The billed attempts that failed, in order. */
|
|
56
91
|
failedAttempts(): GmiFailedAttempt[];
|
|
57
92
|
/** Every call the model requested, with its result or error. */
|
|
58
93
|
toolCalls(): ToolCallRecord[];
|
|
94
|
+
/** The last step's provider message id when the turn opted into cache diagnostics (null when the provider sent none); null otherwise. */
|
|
95
|
+
providerMessageId(): string | null;
|
|
59
96
|
/** The latest schema answer a step carried, if any. */
|
|
60
97
|
structuredOutput(): unknown;
|
|
61
98
|
error(): GmiTurnError | undefined;
|
|
62
|
-
|
|
99
|
+
/**
|
|
100
|
+
* How the run ended, by streamText's rules: the last step's own reason when
|
|
101
|
+
* that step requested no tools; when it did, the step limit ran out, and a run
|
|
102
|
+
* with calls outstanding and no text ended as 'tool-calls'.
|
|
103
|
+
*
|
|
104
|
+
* @param options.ignoreFailure - Report the finished steps even when the turn
|
|
105
|
+
* failed: for a stream its consumer abandoned, whose turn ends with the
|
|
106
|
+
* abort that the abandonment caused.
|
|
107
|
+
*/
|
|
108
|
+
finishReason(options?: {
|
|
109
|
+
ignoreFailure?: boolean;
|
|
110
|
+
}): GenerateTextResult['finishReason'];
|
|
63
111
|
/** The error the turn ended with, as a GMIError keeping the GMI's code. */
|
|
64
112
|
toError(): GMIError | undefined;
|
|
65
113
|
/**
|
|
@@ -79,11 +127,20 @@ export interface GmiStreamOptions {
|
|
|
79
127
|
* folds the chunks itself.
|
|
80
128
|
*/
|
|
81
129
|
folder?: GmiTurnFolder;
|
|
130
|
+
/**
|
|
131
|
+
* Stops the turn. Called once when the consumer stops reading `textStream` or
|
|
132
|
+
* `fullStream` before the turn ended (a `break`, or `return()` on the iterator).
|
|
133
|
+
*/
|
|
134
|
+
stop?: () => void;
|
|
82
135
|
}
|
|
83
136
|
/**
|
|
84
137
|
* A `StreamTextResult` over a GMI turn. The turn is drained eagerly, so every
|
|
85
138
|
* promise settles whether the caller iterates, stops iterating early, or never
|
|
86
139
|
* iterates; `textStream` and `fullStream` replay what arrived and wait for more.
|
|
140
|
+
* A caller that stops iterating either one before the turn ended stops the turn
|
|
141
|
+
* through `options.stop`; the promises then settle once the turn has ended, with
|
|
142
|
+
* the text delivered so far and, as streamText reports an abandoned stream, the
|
|
143
|
+
* finish reason of the latest finished step.
|
|
87
144
|
*
|
|
88
145
|
* `textStream` yields every TEXT_DELTA as it arrives. `fullStream` maps
|
|
89
146
|
* TEXT_DELTA to `text`, TOOL_CALL_REQUEST to `tool-call`, TOOL_RESULT to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gmiResults.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/gmiResults.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"gmiResults.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/gmiResults.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
*
|
|
7
7
|
* The rules are streamText's: the turn's text is the latest step that produced
|
|
8
8
|
* text; usage adds each step's STEP_FINISHED usage once (USAGE_UPDATE carries a
|
|
9
|
-
* request's running total) plus the billed usage of attempts that failed before
|
|
10
|
-
* any output; a run
|
|
11
|
-
* `'tool-calls'
|
|
9
|
+
* request's running total) plus the billed usage of attempts that failed, before
|
|
10
|
+
* any output or after it; a run ends with its last step's own finish reason, or
|
|
11
|
+
* as `'tool-calls'` when the step limit ran out with calls outstanding and no
|
|
12
|
+
* text; an ERROR chunk ends it as `'error'` with the GMI's code.
|
|
12
13
|
*/
|
|
13
14
|
import { GMIError, GMIErrorCode } from '../../core/utils/errors.js';
|
|
14
15
|
import { GMIOutputChunkType, } from '../../cognition/substrate/IGMI.js';
|
|
@@ -41,18 +42,26 @@ export function toolErrorMessage(result) {
|
|
|
41
42
|
* once the turn has ended (or at any point for a partial view).
|
|
42
43
|
*/
|
|
43
44
|
export class GmiTurnFolder {
|
|
44
|
-
constructor() {
|
|
45
|
+
constructor(options = {}) {
|
|
46
|
+
this.options = options;
|
|
45
47
|
/** The STEP_FINISHED payloads, in order. */
|
|
46
48
|
this.steps = [];
|
|
47
49
|
/** Every requested call in order, with its result once the TOOL_RESULT arrived. */
|
|
48
50
|
this.calls = [];
|
|
49
51
|
this.overrides = new Map();
|
|
50
52
|
this.failed = [];
|
|
53
|
+
this.routeListeners = [];
|
|
54
|
+
/** How many calls had been requested when the latest step finished: the calls after it belong to the next step. */
|
|
55
|
+
this.callsBeforeLastStep = 0;
|
|
56
|
+
/** Whether the latest finished step requested tools (the GMI then runs them and goes on, unless the step limit ran out). */
|
|
57
|
+
this.lastStepCalledTools = false;
|
|
51
58
|
}
|
|
52
59
|
push(chunk) {
|
|
53
60
|
switch (chunk.type) {
|
|
54
61
|
case GMIOutputChunkType.STEP_FINISHED:
|
|
55
62
|
this.steps.push(chunk.content);
|
|
63
|
+
this.lastStepCalledTools = this.calls.length > this.callsBeforeLastStep;
|
|
64
|
+
this.callsBeforeLastStep = this.calls.length;
|
|
56
65
|
break;
|
|
57
66
|
case GMIOutputChunkType.TOOL_CALL_REQUEST:
|
|
58
67
|
for (const call of chunk.content ?? [])
|
|
@@ -99,6 +108,29 @@ export class GmiTurnFolder {
|
|
|
99
108
|
details: error instanceof GMIError ? error.details : undefined,
|
|
100
109
|
});
|
|
101
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Records a model call's route (its provider and model, once the hop is
|
|
113
|
+
* resolved). The first one is the turn's route, as streamText reports it:
|
|
114
|
+
* listeners hear it at once, before any chunk of the call arrives.
|
|
115
|
+
*/
|
|
116
|
+
route(providerId, modelId) {
|
|
117
|
+
if (this.firstRoute)
|
|
118
|
+
return;
|
|
119
|
+
this.firstRoute = { providerId, modelId };
|
|
120
|
+
for (const listener of this.routeListeners.splice(0))
|
|
121
|
+
listener(this.firstRoute);
|
|
122
|
+
}
|
|
123
|
+
/** The turn's first route, once it is known. */
|
|
124
|
+
routed() {
|
|
125
|
+
return this.firstRoute;
|
|
126
|
+
}
|
|
127
|
+
/** Calls `listener` with the turn's first route as soon as it is known (at once when it already is). */
|
|
128
|
+
onRoute(listener) {
|
|
129
|
+
if (this.firstRoute)
|
|
130
|
+
listener(this.firstRoute);
|
|
131
|
+
else
|
|
132
|
+
this.routeListeners.push(listener);
|
|
133
|
+
}
|
|
102
134
|
/** Replaces a step's text (`onAfterGeneration`), in the result and in what the session stores. */
|
|
103
135
|
overrideStepText(stepIndex, text) {
|
|
104
136
|
this.overrides.set(stepIndex, text);
|
|
@@ -127,7 +159,7 @@ export class GmiTurnFolder {
|
|
|
127
159
|
addTokenUsage(total, attempt.usage);
|
|
128
160
|
return total;
|
|
129
161
|
}
|
|
130
|
-
/** The billed attempts that failed
|
|
162
|
+
/** The billed attempts that failed, in order. */
|
|
131
163
|
failedAttempts() {
|
|
132
164
|
return this.failed.map((a) => ({ ...a, usage: { ...a.usage } }));
|
|
133
165
|
}
|
|
@@ -142,6 +174,10 @@ export class GmiTurnFolder {
|
|
|
142
174
|
return record;
|
|
143
175
|
});
|
|
144
176
|
}
|
|
177
|
+
/** The last step's provider message id when the turn opted into cache diagnostics (null when the provider sent none); null otherwise. */
|
|
178
|
+
providerMessageId() {
|
|
179
|
+
return this.options.cacheDiagnostics ? this.steps.at(-1)?.providerMessageId ?? null : null;
|
|
180
|
+
}
|
|
145
181
|
/** The latest schema answer a step carried, if any. */
|
|
146
182
|
structuredOutput() {
|
|
147
183
|
for (let i = this.steps.length - 1; i >= 0; i--) {
|
|
@@ -153,14 +189,25 @@ export class GmiTurnFolder {
|
|
|
153
189
|
error() {
|
|
154
190
|
return this.failure;
|
|
155
191
|
}
|
|
156
|
-
|
|
157
|
-
|
|
192
|
+
/**
|
|
193
|
+
* How the run ended, by streamText's rules: the last step's own reason when
|
|
194
|
+
* that step requested no tools; when it did, the step limit ran out, and a run
|
|
195
|
+
* with calls outstanding and no text ended as 'tool-calls'.
|
|
196
|
+
*
|
|
197
|
+
* @param options.ignoreFailure - Report the finished steps even when the turn
|
|
198
|
+
* failed: for a stream its consumer abandoned, whose turn ends with the
|
|
199
|
+
* abort that the abandonment caused.
|
|
200
|
+
*/
|
|
201
|
+
finishReason(options = {}) {
|
|
202
|
+
if (this.failure && !options.ignoreFailure)
|
|
158
203
|
return 'error';
|
|
159
204
|
const last = this.steps.at(-1);
|
|
160
205
|
// The schema answer is the turn's reply, whatever stop reason carried it.
|
|
161
206
|
if (last?.structuredOutput !== undefined)
|
|
162
207
|
return 'stop';
|
|
163
|
-
|
|
208
|
+
if (this.lastStepCalledTools && this.calls.length > 0 && !this.text())
|
|
209
|
+
return 'tool-calls';
|
|
210
|
+
return normalizeStreamFinishReason(last?.finishReason ?? null);
|
|
164
211
|
}
|
|
165
212
|
/** The error the turn ended with, as a GMIError keeping the GMI's code. */
|
|
166
213
|
toError() {
|
|
@@ -182,7 +229,7 @@ export class GmiTurnFolder {
|
|
|
182
229
|
model: last?.modelId ?? '',
|
|
183
230
|
...(last?.responseModel ? { responseModel: last.responseModel } : {}),
|
|
184
231
|
...(last?.serviceTier ? { serviceTier: last.serviceTier } : {}),
|
|
185
|
-
...(
|
|
232
|
+
...(this.options.cacheDiagnostics ? { providerMessageId: this.providerMessageId() } : {}),
|
|
186
233
|
...(last?.cacheDiagnostics !== undefined ? { cacheDiagnostics: last.cacheDiagnostics } : {}),
|
|
187
234
|
text: this.text(),
|
|
188
235
|
usage: this.usage(),
|
|
@@ -203,6 +250,10 @@ function deferred() {
|
|
|
203
250
|
* A `StreamTextResult` over a GMI turn. The turn is drained eagerly, so every
|
|
204
251
|
* promise settles whether the caller iterates, stops iterating early, or never
|
|
205
252
|
* iterates; `textStream` and `fullStream` replay what arrived and wait for more.
|
|
253
|
+
* A caller that stops iterating either one before the turn ended stops the turn
|
|
254
|
+
* through `options.stop`; the promises then settle once the turn has ended, with
|
|
255
|
+
* the text delivered so far and, as streamText reports an abandoned stream, the
|
|
256
|
+
* finish reason of the latest finished step.
|
|
206
257
|
*
|
|
207
258
|
* `textStream` yields every TEXT_DELTA as it arrives. `fullStream` maps
|
|
208
259
|
* TEXT_DELTA to `text`, TOOL_CALL_REQUEST to `tool-call`, TOOL_RESULT to
|
|
@@ -219,6 +270,18 @@ export function streamFromGmiTurn(turn, options = {}) {
|
|
|
219
270
|
const texts = [];
|
|
220
271
|
const parts = [];
|
|
221
272
|
let done = false;
|
|
273
|
+
// A consumer that stops reading stops the turn. The abort that follows ends the
|
|
274
|
+
// turn with an error the consumer did not get; an error that arrived before
|
|
275
|
+
// the consumer stopped is the turn's own.
|
|
276
|
+
let abandoned = false;
|
|
277
|
+
let failedBeforeAbandoned = false;
|
|
278
|
+
const abandon = () => {
|
|
279
|
+
if (done || abandoned)
|
|
280
|
+
return;
|
|
281
|
+
abandoned = true;
|
|
282
|
+
failedBeforeAbandoned = folder.error() !== undefined;
|
|
283
|
+
options.stop?.();
|
|
284
|
+
};
|
|
222
285
|
let waiters = [];
|
|
223
286
|
const wake = () => {
|
|
224
287
|
const pending = waiters;
|
|
@@ -237,6 +300,11 @@ export function streamFromGmiTurn(turn, options = {}) {
|
|
|
237
300
|
cacheDiagnostics: deferred(),
|
|
238
301
|
providerMessageId: deferred(),
|
|
239
302
|
};
|
|
303
|
+
// Provider and model resolve once the turn's model call is routed, as streamText's do.
|
|
304
|
+
folder.onRoute(({ providerId, modelId }) => {
|
|
305
|
+
p.provider.resolve(providerId);
|
|
306
|
+
p.model.resolve(modelId);
|
|
307
|
+
});
|
|
240
308
|
void (async () => {
|
|
241
309
|
// The text the step in progress has delivered; reset at each step boundary.
|
|
242
310
|
let stepDelivered = '';
|
|
@@ -282,13 +350,14 @@ export function streamFromGmiTurn(turn, options = {}) {
|
|
|
282
350
|
p.text.resolve(folder.error() && stepDelivered ? stepDelivered : folder.text());
|
|
283
351
|
p.usage.resolve(folder.usage());
|
|
284
352
|
p.toolCalls.resolve(folder.toolCalls());
|
|
285
|
-
|
|
286
|
-
p.
|
|
287
|
-
p.
|
|
353
|
+
// Already resolved when the turn was routed; '' when it failed before routing.
|
|
354
|
+
p.provider.resolve(folder.routed()?.providerId ?? last?.providerId ?? '');
|
|
355
|
+
p.model.resolve(folder.routed()?.modelId ?? last?.modelId ?? '');
|
|
356
|
+
p.finishReason.resolve(folder.finishReason({ ignoreFailure: abandoned && !failedBeforeAbandoned }));
|
|
288
357
|
p.responseModel.resolve(last?.responseModel);
|
|
289
358
|
p.serviceTier.resolve(last?.serviceTier);
|
|
290
359
|
p.cacheDiagnostics.resolve(last?.cacheDiagnostics ?? null);
|
|
291
|
-
p.providerMessageId.resolve(
|
|
360
|
+
p.providerMessageId.resolve(folder.providerMessageId());
|
|
292
361
|
done = true;
|
|
293
362
|
wake();
|
|
294
363
|
}
|
|
@@ -309,6 +378,7 @@ export function streamFromGmiTurn(turn, options = {}) {
|
|
|
309
378
|
},
|
|
310
379
|
async return() {
|
|
311
380
|
i = Number.MAX_SAFE_INTEGER;
|
|
381
|
+
abandon();
|
|
312
382
|
return { value: undefined, done: true };
|
|
313
383
|
},
|
|
314
384
|
};
|