beeai-framework 0.1.4 → 0.1.6
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 +2 -2
- package/dist/adapters/amazon-bedrock/backend/chat.d.cts +1 -1
- package/dist/adapters/amazon-bedrock/backend/chat.d.ts +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +1 -1
- package/dist/adapters/anthropic/backend/chat.d.cts +1 -1
- package/dist/adapters/anthropic/backend/chat.d.ts +1 -1
- package/dist/adapters/anthropic/backend/embedding.d.cts +1 -1
- package/dist/adapters/anthropic/backend/embedding.d.ts +1 -1
- package/dist/adapters/azure-openai/backend/chat.d.cts +1 -1
- package/dist/adapters/azure-openai/backend/chat.d.ts +1 -1
- package/dist/adapters/azure-openai/backend/embedding.d.cts +1 -1
- package/dist/adapters/azure-openai/backend/embedding.d.ts +1 -1
- package/dist/adapters/dummy/backend/chat.d.cts +1 -1
- package/dist/adapters/dummy/backend/chat.d.ts +1 -1
- package/dist/adapters/dummy/backend/embedding.d.cts +1 -1
- package/dist/adapters/dummy/backend/embedding.d.ts +1 -1
- package/dist/adapters/google-vertex/backend/chat.d.cts +1 -1
- package/dist/adapters/google-vertex/backend/chat.d.ts +1 -1
- package/dist/adapters/google-vertex/backend/embedding.d.cts +1 -1
- package/dist/adapters/google-vertex/backend/embedding.d.ts +1 -1
- package/dist/adapters/groq/backend/chat.d.cts +1 -1
- package/dist/adapters/groq/backend/chat.d.ts +1 -1
- package/dist/adapters/groq/backend/embedding.d.cts +1 -1
- package/dist/adapters/groq/backend/embedding.d.ts +1 -1
- package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
- package/dist/adapters/langchain/backend/chat.d.cts +1 -1
- package/dist/adapters/langchain/backend/chat.d.ts +1 -1
- package/dist/adapters/langchain/backend/chat.js.map +1 -1
- package/dist/adapters/langchain/backend/embedding.d.cts +1 -1
- package/dist/adapters/langchain/backend/embedding.d.ts +1 -1
- package/dist/adapters/langchain/tools.cjs.map +1 -1
- package/dist/adapters/langchain/tools.d.cts +1 -1
- package/dist/adapters/langchain/tools.d.ts +1 -1
- package/dist/adapters/langchain/tools.js.map +1 -1
- package/dist/adapters/ollama/backend/chat.d.cts +1 -1
- package/dist/adapters/ollama/backend/chat.d.ts +1 -1
- package/dist/adapters/ollama/backend/embedding.d.cts +1 -1
- package/dist/adapters/ollama/backend/embedding.d.ts +1 -1
- package/dist/adapters/openai/backend/chat.d.cts +1 -1
- package/dist/adapters/openai/backend/chat.d.ts +1 -1
- package/dist/adapters/openai/backend/embedding.d.cts +1 -1
- package/dist/adapters/openai/backend/embedding.d.ts +1 -1
- package/dist/adapters/vercel/backend/chat.cjs +5 -2
- package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
- package/dist/adapters/vercel/backend/chat.d.cts +1 -1
- package/dist/adapters/vercel/backend/chat.d.ts +1 -1
- package/dist/adapters/vercel/backend/chat.js +5 -2
- package/dist/adapters/vercel/backend/chat.js.map +1 -1
- package/dist/adapters/vercel/backend/embedding.d.cts +1 -1
- package/dist/adapters/vercel/backend/embedding.d.ts +1 -1
- package/dist/adapters/watsonx/backend/chat.d.cts +1 -1
- package/dist/adapters/watsonx/backend/chat.d.ts +1 -1
- package/dist/adapters/watsonx/backend/embedding.d.cts +1 -1
- package/dist/adapters/watsonx/backend/embedding.d.ts +1 -1
- package/dist/{agent-CtPtFtGb.d.cts → agent-BZ-_ATuJ.d.cts} +3 -3
- package/dist/{agent-CxoSeic0.d.ts → agent-BqoZ6FbM.d.ts} +3 -3
- package/dist/agents/base.cjs +1 -1
- package/dist/agents/base.cjs.map +1 -1
- package/dist/agents/base.d.cts +2 -2
- package/dist/agents/base.d.ts +2 -2
- package/dist/agents/base.js +1 -1
- package/dist/agents/base.js.map +1 -1
- package/dist/agents/bee/agent.d.cts +3 -3
- package/dist/agents/bee/agent.d.ts +3 -3
- package/dist/agents/bee/runners/base.d.cts +3 -3
- package/dist/agents/bee/runners/base.d.ts +3 -3
- package/dist/agents/bee/runners/deep-think/runner.d.cts +3 -3
- package/dist/agents/bee/runners/deep-think/runner.d.ts +3 -3
- package/dist/agents/bee/runners/default/runner.d.cts +3 -3
- package/dist/agents/bee/runners/default/runner.d.ts +3 -3
- package/dist/agents/bee/runners/granite/runner.d.cts +3 -3
- package/dist/agents/bee/runners/granite/runner.d.ts +3 -3
- package/dist/agents/bee/types.d.cts +1 -1
- package/dist/agents/bee/types.d.ts +1 -1
- package/dist/agents/experimental/remote/agent.cjs +103 -0
- package/dist/agents/experimental/remote/agent.cjs.map +1 -0
- package/dist/agents/experimental/remote/agent.d.cts +77 -0
- package/dist/agents/experimental/remote/agent.d.ts +77 -0
- package/dist/agents/experimental/remote/agent.js +101 -0
- package/dist/agents/experimental/remote/agent.js.map +1 -0
- package/dist/agents/experimental/replan/agent.d.cts +2 -2
- package/dist/agents/experimental/replan/agent.d.ts +2 -2
- package/dist/agents/experimental/replan/prompts.d.cts +1 -1
- package/dist/agents/experimental/replan/prompts.d.ts +1 -1
- package/dist/agents/experimental/streamlit/agent.d.cts +2 -2
- package/dist/agents/experimental/streamlit/agent.d.ts +2 -2
- package/dist/agents/types.d.cts +2 -2
- package/dist/agents/types.d.ts +2 -2
- package/dist/backend/backend.d.cts +1 -1
- package/dist/backend/backend.d.ts +1 -1
- package/dist/backend/chat.cjs +1 -1
- package/dist/backend/chat.cjs.map +1 -1
- package/dist/backend/chat.d.cts +1 -1
- package/dist/backend/chat.d.ts +1 -1
- package/dist/backend/chat.js +1 -1
- package/dist/backend/chat.js.map +1 -1
- package/dist/backend/core.d.cts +1 -1
- package/dist/backend/core.d.ts +1 -1
- package/dist/backend/embedding.cjs +1 -1
- package/dist/backend/embedding.cjs.map +1 -1
- package/dist/backend/embedding.d.cts +1 -1
- package/dist/backend/embedding.d.ts +1 -1
- package/dist/backend/embedding.js +1 -1
- package/dist/backend/embedding.js.map +1 -1
- package/dist/backend/utils.cjs +2 -1
- package/dist/backend/utils.cjs.map +1 -1
- package/dist/backend/utils.js +2 -1
- package/dist/backend/utils.js.map +1 -1
- package/dist/{base-Csr9guq2.d.cts → base-daM6fHUP.d.cts} +1 -1
- package/dist/{base-DHhpWHQm.d.ts → base-mmG-8Pk9.d.ts} +1 -1
- package/dist/context.d.cts +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/emitter/emitter.d.cts +1 -1
- package/dist/emitter/emitter.d.ts +1 -1
- package/dist/emitter/types.d.cts +1 -1
- package/dist/emitter/types.d.ts +1 -1
- package/dist/errors.cjs +4 -4
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.js +4 -4
- package/dist/errors.js.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/instrumentation/create-telemetry-middleware.cjs +1 -1
- package/dist/instrumentation/create-telemetry-middleware.cjs.map +1 -1
- package/dist/instrumentation/create-telemetry-middleware.d.cts +1 -1
- package/dist/instrumentation/create-telemetry-middleware.d.ts +1 -1
- package/dist/instrumentation/create-telemetry-middleware.js +1 -1
- package/dist/instrumentation/create-telemetry-middleware.js.map +1 -1
- package/dist/instrumentation/helpers/utils.d.cts +1 -1
- package/dist/instrumentation/helpers/utils.d.ts +1 -1
- package/dist/internals/env.cjs +2 -2
- package/dist/internals/env.cjs.map +1 -1
- package/dist/internals/env.js +2 -2
- package/dist/internals/env.js.map +1 -1
- package/dist/internals/fetcher.d.cts +1 -1
- package/dist/internals/fetcher.d.ts +1 -1
- package/dist/memory/summarizeMemory.d.cts +1 -1
- package/dist/memory/summarizeMemory.d.ts +1 -1
- package/dist/parsers/linePrefix.d.cts +1 -1
- package/dist/parsers/linePrefix.d.ts +1 -1
- package/dist/tools/arxiv.d.cts +1 -1
- package/dist/tools/arxiv.d.ts +1 -1
- package/dist/tools/base.d.cts +1 -1
- package/dist/tools/base.d.ts +1 -1
- package/dist/tools/calculator.d.cts +1 -1
- package/dist/tools/calculator.d.ts +1 -1
- package/dist/tools/custom.d.cts +1 -1
- package/dist/tools/custom.d.ts +1 -1
- package/dist/tools/database/elasticsearch.d.cts +1 -1
- package/dist/tools/database/elasticsearch.d.ts +1 -1
- package/dist/tools/database/milvus.d.cts +1 -1
- package/dist/tools/database/milvus.d.ts +1 -1
- package/dist/tools/database/sql.d.cts +1 -1
- package/dist/tools/database/sql.d.ts +1 -1
- package/dist/tools/llm.d.cts +1 -1
- package/dist/tools/llm.d.ts +1 -1
- package/dist/tools/mcp.d.cts +1 -1
- package/dist/tools/mcp.d.ts +1 -1
- package/dist/tools/openapi.d.cts +1 -1
- package/dist/tools/openapi.d.ts +1 -1
- package/dist/tools/python/output.d.cts +1 -1
- package/dist/tools/python/output.d.ts +1 -1
- package/dist/tools/python/python.d.cts +1 -1
- package/dist/tools/python/python.d.ts +1 -1
- package/dist/tools/search/base.d.cts +1 -1
- package/dist/tools/search/base.d.ts +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.cts +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
- package/dist/tools/search/googleSearch.d.cts +1 -1
- package/dist/tools/search/googleSearch.d.ts +1 -1
- package/dist/tools/search/searXNGSearch.d.cts +1 -1
- package/dist/tools/search/searXNGSearch.d.ts +1 -1
- package/dist/tools/search/wikipedia.d.cts +1 -1
- package/dist/tools/search/wikipedia.d.ts +1 -1
- package/dist/tools/similarity.d.cts +1 -1
- package/dist/tools/similarity.d.ts +1 -1
- package/dist/tools/weather/openMeteo.d.cts +1 -1
- package/dist/tools/weather/openMeteo.d.ts +1 -1
- package/dist/tools/web/webCrawler.d.cts +1 -1
- package/dist/tools/web/webCrawler.d.ts +1 -1
- package/dist/version.cjs +1 -1
- package/dist/version.js +1 -1
- package/dist/workflows/agent.d.cts +10 -10
- package/dist/workflows/agent.d.ts +10 -10
- package/dist/workflows/workflow.d.cts +1 -1
- package/dist/workflows/workflow.d.ts +1 -1
- package/package.json +26 -10
- package/dist/{emitter-l0W9gC1A.d.ts → emitter-BxVxGBbJ.d.ts} +1 -1
- package/dist/{emitter-BWtGHYn0.d.cts → emitter-C9EN5B0j.d.cts} +1 -1
|
@@ -7,6 +7,7 @@ var message_cjs = require('../../../backend/message.cjs');
|
|
|
7
7
|
var errors_cjs = require('../../../errors.cjs');
|
|
8
8
|
var remeda = require('remeda');
|
|
9
9
|
var errors_cjs$1 = require('../../../backend/errors.cjs');
|
|
10
|
+
var zod = require('zod');
|
|
10
11
|
|
|
11
12
|
var __defProp = Object.defineProperty;
|
|
12
13
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
@@ -43,14 +44,16 @@ class VercelChatModel extends chat_cjs.ChatModel {
|
|
|
43
44
|
return new chat_cjs.ChatModelOutput(this.transformMessages(messages), usage, finishReason);
|
|
44
45
|
}
|
|
45
46
|
async _createStructure({ schema, ...input }, run) {
|
|
47
|
+
const inputSchema = schema._input || schema;
|
|
46
48
|
const response = await ai.generateObject({
|
|
47
49
|
temperature: 0,
|
|
48
50
|
...await this.transformInput(input),
|
|
49
51
|
schema,
|
|
50
52
|
abortSignal: run.signal,
|
|
51
53
|
model: this.model,
|
|
52
|
-
|
|
53
|
-
|
|
54
|
+
mode: "json",
|
|
55
|
+
// @ts-expect-error
|
|
56
|
+
output: inputSchema instanceof zod.ZodArray ? "array" : inputSchema instanceof zod.ZodEnum ? "enum" : "object"
|
|
54
57
|
});
|
|
55
58
|
return {
|
|
56
59
|
object: response.object
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["chat.ts"],"names":["VercelChatModel","ChatModel","emitter","supportsToolStreaming","constructor","model","modelId","ValueError","Emitter","root","child","namespace","providerId","creator","provider","split","toCamelCase","_create","input","_run","finishReason","usage","response","messages","generateText","transformInput","ChatModelOutput","transformMessages","_createStructure","schema","run","generateObject","temperature","abortSignal","signal","output","mode","object","_createStream","isEmpty","tools","fullStream","streamText","lastChunk","event","message","type","AssistantMessage","textDelta","toolCallId","toolName","args","ChatModelError","error","ToolMessage","result","Error","Promise","all","map","tool","name","description","parameters","jsonSchema","getInputJsonSchema","msg","role","content","text","mapToObj","flatMap","providerOptions","createSnapshot","loadSnapshot","snapshot","instance","fromName","destroy","Object","assign"],"mappings":"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","file":"chat.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n ChatModelInput,\n ChatModel,\n ChatModelOutput,\n ChatModelEvents,\n ChatModelObjectInput,\n ChatModelObjectOutput,\n} from \"@/backend/chat.js\";\nimport {\n CoreAssistantMessage,\n CoreMessage,\n CoreToolMessage,\n generateObject,\n generateText,\n jsonSchema,\n LanguageModelV1,\n streamText,\n TextPart,\n ToolCallPart,\n} from \"ai\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { AssistantMessage, Message, ToolMessage } from \"@/backend/message.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { isEmpty, mapToObj, toCamelCase } from \"remeda\";\nimport { FullModelName } from \"@/backend/utils.js\";\nimport { ChatModelError } from \"@/backend/errors.js\";\n\nexport abstract class VercelChatModel<\n M extends LanguageModelV1 = LanguageModelV1,\n> extends ChatModel {\n public readonly emitter: Emitter<ChatModelEvents>;\n public readonly supportsToolStreaming: boolean = true;\n\n constructor(private readonly model: M) {\n super();\n if (!this.modelId) {\n throw new ValueError(\"No modelId has been provided!\");\n }\n this.emitter = Emitter.root.child({\n namespace: [\"backend\", this.providerId, \"chat\"],\n creator: this,\n });\n }\n\n get modelId(): string {\n return this.model.modelId;\n }\n\n get providerId(): string {\n const provider = this.model.provider.split(\".\")[0].split(\"-\")[0];\n return toCamelCase(provider);\n }\n\n protected async _create(input: ChatModelInput, _run: GetRunContext<this>) {\n const {\n finishReason,\n usage,\n response: { messages },\n } = await generateText(await this.transformInput(input));\n\n return new ChatModelOutput(this.transformMessages(messages), usage, finishReason);\n }\n\n protected async _createStructure<T>(\n { schema, ...input }: ChatModelObjectInput<T>,\n run: GetRunContext<this>,\n ): Promise<ChatModelObjectOutput<T>> {\n const response = await generateObject({\n temperature: 0,\n ...(await this.transformInput(input)),\n schema,\n abortSignal: run.signal,\n model: this.model,\n output: \"object\",\n mode: \"json\",\n });\n\n return { object: response.object };\n }\n\n async *_createStream(input: ChatModelInput, run: GetRunContext<this>) {\n if (!this.supportsToolStreaming && !isEmpty(input.tools ?? [])) {\n const response = await this._create(input, run);\n yield response;\n return;\n }\n\n const { fullStream, usage, finishReason, response } = streamText({\n ...(await this.transformInput(input)),\n abortSignal: run.signal,\n });\n\n let lastChunk: ChatModelOutput | null = null;\n for await (const event of fullStream) {\n let message: Message;\n switch (event.type) {\n case \"text-delta\":\n message = new AssistantMessage(event.textDelta);\n break;\n case \"tool-call\":\n message = new AssistantMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n args: event.args,\n });\n break;\n case \"error\":\n throw new ChatModelError(\"Unhandled error\", [event.error as Error]);\n case \"step-finish\":\n case \"step-start\":\n continue;\n case \"tool-result\":\n message = new ToolMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n result: event.result,\n });\n break;\n case \"tool-call-streaming-start\":\n case \"tool-call-delta\":\n continue;\n case \"finish\":\n continue;\n default:\n throw new Error(`Unhandled event \"${event.type}\"`);\n }\n lastChunk = new ChatModelOutput([message]);\n yield lastChunk;\n }\n\n if (!lastChunk) {\n throw new ChatModelError(\"No chunks have been received!\");\n }\n lastChunk.usage = await usage;\n lastChunk.finishReason = await finishReason;\n await response;\n }\n\n protected async transformInput(\n input: ChatModelInput,\n ): Promise<Parameters<typeof generateText<Record<string, any>>>[0]> {\n const tools = await Promise.all(\n (input.tools ?? []).map(async (tool) => ({\n name: tool.name,\n description: tool.description,\n parameters: jsonSchema(await tool.getInputJsonSchema()),\n })),\n );\n\n const messages = input.messages.map((msg): CoreMessage => {\n if (msg instanceof AssistantMessage) {\n return { role: \"assistant\", content: msg.content };\n } else if (msg instanceof ToolMessage) {\n return { role: \"tool\", content: msg.content };\n }\n return { role: msg.role as \"user\" | \"system\", content: msg.text };\n });\n\n return {\n ...this.parameters,\n ...input,\n model: this.model,\n tools: mapToObj(tools, ({ name, ...tool }) => [name, tool]),\n messages,\n };\n }\n\n protected transformMessages(messages: (CoreAssistantMessage | CoreToolMessage)[]): Message[] {\n return messages.flatMap((msg) => {\n if (msg.role === \"tool\") {\n return new ToolMessage(msg.content, msg.providerOptions);\n }\n return new AssistantMessage(\n msg.content as TextPart | ToolCallPart | string,\n msg.providerOptions,\n );\n });\n }\n\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n providerId: this.providerId,\n modelId: this.modelId,\n supportsToolStreaming: this.supportsToolStreaming,\n };\n }\n\n async loadSnapshot({ providerId, modelId, ...snapshot }: ReturnType<typeof this.createSnapshot>) {\n const instance = await ChatModel.fromName(`${providerId}:${modelId}` as FullModelName);\n if (!(instance instanceof VercelChatModel)) {\n throw new Error(\"Incorrect deserialization!\");\n }\n instance.destroy();\n Object.assign(this, {\n ...snapshot,\n model: instance.model,\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["chat.ts"],"names":["VercelChatModel","ChatModel","emitter","supportsToolStreaming","constructor","model","modelId","ValueError","Emitter","root","child","namespace","providerId","creator","provider","split","toCamelCase","_create","input","_run","finishReason","usage","response","messages","generateText","transformInput","ChatModelOutput","transformMessages","_createStructure","schema","run","inputSchema","_input","generateObject","temperature","abortSignal","signal","mode","output","ZodArray","ZodEnum","object","_createStream","isEmpty","tools","fullStream","streamText","lastChunk","event","message","type","AssistantMessage","textDelta","toolCallId","toolName","args","ChatModelError","error","ToolMessage","result","Error","Promise","all","map","tool","name","description","parameters","jsonSchema","getInputJsonSchema","msg","role","content","text","mapToObj","flatMap","providerOptions","createSnapshot","loadSnapshot","snapshot","instance","fromName","destroy","Object","assign"],"mappings":"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","file":"chat.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n ChatModelInput,\n ChatModel,\n ChatModelOutput,\n ChatModelEvents,\n ChatModelObjectInput,\n ChatModelObjectOutput,\n} from \"@/backend/chat.js\";\nimport {\n CoreAssistantMessage,\n CoreMessage,\n CoreToolMessage,\n generateObject,\n generateText,\n jsonSchema,\n LanguageModelV1,\n streamText,\n TextPart,\n ToolCallPart,\n} from \"ai\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { AssistantMessage, Message, ToolMessage } from \"@/backend/message.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { isEmpty, mapToObj, toCamelCase } from \"remeda\";\nimport { FullModelName } from \"@/backend/utils.js\";\nimport { ChatModelError } from \"@/backend/errors.js\";\nimport { ZodArray, ZodEnum } from \"zod\";\n\nexport abstract class VercelChatModel<\n M extends LanguageModelV1 = LanguageModelV1,\n> extends ChatModel {\n public readonly emitter: Emitter<ChatModelEvents>;\n public readonly supportsToolStreaming: boolean = true;\n\n constructor(private readonly model: M) {\n super();\n if (!this.modelId) {\n throw new ValueError(\"No modelId has been provided!\");\n }\n this.emitter = Emitter.root.child({\n namespace: [\"backend\", this.providerId, \"chat\"],\n creator: this,\n });\n }\n\n get modelId(): string {\n return this.model.modelId;\n }\n\n get providerId(): string {\n const provider = this.model.provider.split(\".\")[0].split(\"-\")[0];\n return toCamelCase(provider);\n }\n\n protected async _create(input: ChatModelInput, _run: GetRunContext<this>) {\n const {\n finishReason,\n usage,\n response: { messages },\n } = await generateText(await this.transformInput(input));\n\n return new ChatModelOutput(this.transformMessages(messages), usage, finishReason);\n }\n\n protected async _createStructure<T>(\n { schema, ...input }: ChatModelObjectInput<T>,\n run: GetRunContext<this>,\n ): Promise<ChatModelObjectOutput<T>> {\n const inputSchema = schema._input || schema;\n\n const response = await generateObject({\n temperature: 0,\n ...(await this.transformInput(input)),\n schema,\n abortSignal: run.signal,\n model: this.model,\n mode: \"json\",\n // @ts-expect-error\n output:\n inputSchema instanceof ZodArray\n ? \"array\"\n : inputSchema instanceof ZodEnum\n ? \"enum\"\n : \"object\",\n });\n\n return { object: response.object };\n }\n\n async *_createStream(input: ChatModelInput, run: GetRunContext<this>) {\n if (!this.supportsToolStreaming && !isEmpty(input.tools ?? [])) {\n const response = await this._create(input, run);\n yield response;\n return;\n }\n\n const { fullStream, usage, finishReason, response } = streamText({\n ...(await this.transformInput(input)),\n abortSignal: run.signal,\n });\n\n let lastChunk: ChatModelOutput | null = null;\n for await (const event of fullStream) {\n let message: Message;\n switch (event.type) {\n case \"text-delta\":\n message = new AssistantMessage(event.textDelta);\n break;\n case \"tool-call\":\n message = new AssistantMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n args: event.args,\n });\n break;\n case \"error\":\n throw new ChatModelError(\"Unhandled error\", [event.error as Error]);\n case \"step-finish\":\n case \"step-start\":\n continue;\n case \"tool-result\":\n message = new ToolMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n result: event.result,\n });\n break;\n case \"tool-call-streaming-start\":\n case \"tool-call-delta\":\n continue;\n case \"finish\":\n continue;\n default:\n throw new Error(`Unhandled event \"${event.type}\"`);\n }\n lastChunk = new ChatModelOutput([message]);\n yield lastChunk;\n }\n\n if (!lastChunk) {\n throw new ChatModelError(\"No chunks have been received!\");\n }\n lastChunk.usage = await usage;\n lastChunk.finishReason = await finishReason;\n await response;\n }\n\n protected async transformInput(\n input: ChatModelInput,\n ): Promise<Parameters<typeof generateText<Record<string, any>>>[0]> {\n const tools = await Promise.all(\n (input.tools ?? []).map(async (tool) => ({\n name: tool.name,\n description: tool.description,\n parameters: jsonSchema(await tool.getInputJsonSchema()),\n })),\n );\n\n const messages = input.messages.map((msg): CoreMessage => {\n if (msg instanceof AssistantMessage) {\n return { role: \"assistant\", content: msg.content };\n } else if (msg instanceof ToolMessage) {\n return { role: \"tool\", content: msg.content };\n }\n return { role: msg.role as \"user\" | \"system\", content: msg.text };\n });\n\n return {\n ...this.parameters,\n ...input,\n model: this.model,\n tools: mapToObj(tools, ({ name, ...tool }) => [name, tool]),\n messages,\n };\n }\n\n protected transformMessages(messages: (CoreAssistantMessage | CoreToolMessage)[]): Message[] {\n return messages.flatMap((msg) => {\n if (msg.role === \"tool\") {\n return new ToolMessage(msg.content, msg.providerOptions);\n }\n return new AssistantMessage(\n msg.content as TextPart | ToolCallPart | string,\n msg.providerOptions,\n );\n });\n }\n\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n providerId: this.providerId,\n modelId: this.modelId,\n supportsToolStreaming: this.supportsToolStreaming,\n };\n }\n\n async loadSnapshot({ providerId, modelId, ...snapshot }: ReturnType<typeof this.createSnapshot>) {\n const instance = await ChatModel.fromName(`${providerId}:${modelId}` as FullModelName);\n if (!(instance instanceof VercelChatModel)) {\n throw new Error(\"Incorrect deserialization!\");\n }\n instance.destroy();\n Object.assign(this, {\n ...snapshot,\n model: instance.model,\n });\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChatModel, ChatModelEvents, ChatModelInput, ChatModelOutput, ChatModelObjectInput, ChatModelObjectOutput, ChatModelCache, ChatModelParameters } from '../../../backend/chat.cjs';
|
|
2
2
|
import { LanguageModelV1, generateText, CoreAssistantMessage, CoreToolMessage } from 'ai';
|
|
3
|
-
import { E as Emitter } from '../../../emitter-
|
|
3
|
+
import { E as Emitter } from '../../../emitter-C9EN5B0j.cjs';
|
|
4
4
|
import { Message } from '../../../backend/message.cjs';
|
|
5
5
|
import { GetRunContext } from '../../../context.cjs';
|
|
6
6
|
import '../../../internals/serializable.cjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChatModel, ChatModelEvents, ChatModelInput, ChatModelOutput, ChatModelObjectInput, ChatModelObjectOutput, ChatModelCache, ChatModelParameters } from '../../../backend/chat.js';
|
|
2
2
|
import { LanguageModelV1, generateText, CoreAssistantMessage, CoreToolMessage } from 'ai';
|
|
3
|
-
import { E as Emitter } from '../../../emitter-
|
|
3
|
+
import { E as Emitter } from '../../../emitter-BxVxGBbJ.js';
|
|
4
4
|
import { Message } from '../../../backend/message.js';
|
|
5
5
|
import { GetRunContext } from '../../../context.js';
|
|
6
6
|
import '../../../internals/serializable.js';
|
|
@@ -5,6 +5,7 @@ import { ToolMessage, AssistantMessage } from '../../../backend/message.js';
|
|
|
5
5
|
import { ValueError } from '../../../errors.js';
|
|
6
6
|
import { toCamelCase, isEmpty, mapToObj } from 'remeda';
|
|
7
7
|
import { ChatModelError } from '../../../backend/errors.js';
|
|
8
|
+
import { ZodArray, ZodEnum } from 'zod';
|
|
8
9
|
|
|
9
10
|
var __defProp = Object.defineProperty;
|
|
10
11
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
@@ -41,14 +42,16 @@ class VercelChatModel extends ChatModel {
|
|
|
41
42
|
return new ChatModelOutput(this.transformMessages(messages), usage, finishReason);
|
|
42
43
|
}
|
|
43
44
|
async _createStructure({ schema, ...input }, run) {
|
|
45
|
+
const inputSchema = schema._input || schema;
|
|
44
46
|
const response = await generateObject({
|
|
45
47
|
temperature: 0,
|
|
46
48
|
...await this.transformInput(input),
|
|
47
49
|
schema,
|
|
48
50
|
abortSignal: run.signal,
|
|
49
51
|
model: this.model,
|
|
50
|
-
|
|
51
|
-
|
|
52
|
+
mode: "json",
|
|
53
|
+
// @ts-expect-error
|
|
54
|
+
output: inputSchema instanceof ZodArray ? "array" : inputSchema instanceof ZodEnum ? "enum" : "object"
|
|
52
55
|
});
|
|
53
56
|
return {
|
|
54
57
|
object: response.object
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["chat.ts"],"names":["VercelChatModel","ChatModel","emitter","supportsToolStreaming","constructor","model","modelId","ValueError","Emitter","root","child","namespace","providerId","creator","provider","split","toCamelCase","_create","input","_run","finishReason","usage","response","messages","generateText","transformInput","ChatModelOutput","transformMessages","_createStructure","schema","run","generateObject","temperature","abortSignal","signal","output","mode","object","_createStream","isEmpty","tools","fullStream","streamText","lastChunk","event","message","type","AssistantMessage","textDelta","toolCallId","toolName","args","ChatModelError","error","ToolMessage","result","Error","Promise","all","map","tool","name","description","parameters","jsonSchema","getInputJsonSchema","msg","role","content","text","mapToObj","flatMap","providerOptions","createSnapshot","loadSnapshot","snapshot","instance","fromName","destroy","Object","assign"],"mappings":"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","file":"chat.js","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n ChatModelInput,\n ChatModel,\n ChatModelOutput,\n ChatModelEvents,\n ChatModelObjectInput,\n ChatModelObjectOutput,\n} from \"@/backend/chat.js\";\nimport {\n CoreAssistantMessage,\n CoreMessage,\n CoreToolMessage,\n generateObject,\n generateText,\n jsonSchema,\n LanguageModelV1,\n streamText,\n TextPart,\n ToolCallPart,\n} from \"ai\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { AssistantMessage, Message, ToolMessage } from \"@/backend/message.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { isEmpty, mapToObj, toCamelCase } from \"remeda\";\nimport { FullModelName } from \"@/backend/utils.js\";\nimport { ChatModelError } from \"@/backend/errors.js\";\n\nexport abstract class VercelChatModel<\n M extends LanguageModelV1 = LanguageModelV1,\n> extends ChatModel {\n public readonly emitter: Emitter<ChatModelEvents>;\n public readonly supportsToolStreaming: boolean = true;\n\n constructor(private readonly model: M) {\n super();\n if (!this.modelId) {\n throw new ValueError(\"No modelId has been provided!\");\n }\n this.emitter = Emitter.root.child({\n namespace: [\"backend\", this.providerId, \"chat\"],\n creator: this,\n });\n }\n\n get modelId(): string {\n return this.model.modelId;\n }\n\n get providerId(): string {\n const provider = this.model.provider.split(\".\")[0].split(\"-\")[0];\n return toCamelCase(provider);\n }\n\n protected async _create(input: ChatModelInput, _run: GetRunContext<this>) {\n const {\n finishReason,\n usage,\n response: { messages },\n } = await generateText(await this.transformInput(input));\n\n return new ChatModelOutput(this.transformMessages(messages), usage, finishReason);\n }\n\n protected async _createStructure<T>(\n { schema, ...input }: ChatModelObjectInput<T>,\n run: GetRunContext<this>,\n ): Promise<ChatModelObjectOutput<T>> {\n const response = await generateObject({\n temperature: 0,\n ...(await this.transformInput(input)),\n schema,\n abortSignal: run.signal,\n model: this.model,\n output: \"object\",\n mode: \"json\",\n });\n\n return { object: response.object };\n }\n\n async *_createStream(input: ChatModelInput, run: GetRunContext<this>) {\n if (!this.supportsToolStreaming && !isEmpty(input.tools ?? [])) {\n const response = await this._create(input, run);\n yield response;\n return;\n }\n\n const { fullStream, usage, finishReason, response } = streamText({\n ...(await this.transformInput(input)),\n abortSignal: run.signal,\n });\n\n let lastChunk: ChatModelOutput | null = null;\n for await (const event of fullStream) {\n let message: Message;\n switch (event.type) {\n case \"text-delta\":\n message = new AssistantMessage(event.textDelta);\n break;\n case \"tool-call\":\n message = new AssistantMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n args: event.args,\n });\n break;\n case \"error\":\n throw new ChatModelError(\"Unhandled error\", [event.error as Error]);\n case \"step-finish\":\n case \"step-start\":\n continue;\n case \"tool-result\":\n message = new ToolMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n result: event.result,\n });\n break;\n case \"tool-call-streaming-start\":\n case \"tool-call-delta\":\n continue;\n case \"finish\":\n continue;\n default:\n throw new Error(`Unhandled event \"${event.type}\"`);\n }\n lastChunk = new ChatModelOutput([message]);\n yield lastChunk;\n }\n\n if (!lastChunk) {\n throw new ChatModelError(\"No chunks have been received!\");\n }\n lastChunk.usage = await usage;\n lastChunk.finishReason = await finishReason;\n await response;\n }\n\n protected async transformInput(\n input: ChatModelInput,\n ): Promise<Parameters<typeof generateText<Record<string, any>>>[0]> {\n const tools = await Promise.all(\n (input.tools ?? []).map(async (tool) => ({\n name: tool.name,\n description: tool.description,\n parameters: jsonSchema(await tool.getInputJsonSchema()),\n })),\n );\n\n const messages = input.messages.map((msg): CoreMessage => {\n if (msg instanceof AssistantMessage) {\n return { role: \"assistant\", content: msg.content };\n } else if (msg instanceof ToolMessage) {\n return { role: \"tool\", content: msg.content };\n }\n return { role: msg.role as \"user\" | \"system\", content: msg.text };\n });\n\n return {\n ...this.parameters,\n ...input,\n model: this.model,\n tools: mapToObj(tools, ({ name, ...tool }) => [name, tool]),\n messages,\n };\n }\n\n protected transformMessages(messages: (CoreAssistantMessage | CoreToolMessage)[]): Message[] {\n return messages.flatMap((msg) => {\n if (msg.role === \"tool\") {\n return new ToolMessage(msg.content, msg.providerOptions);\n }\n return new AssistantMessage(\n msg.content as TextPart | ToolCallPart | string,\n msg.providerOptions,\n );\n });\n }\n\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n providerId: this.providerId,\n modelId: this.modelId,\n supportsToolStreaming: this.supportsToolStreaming,\n };\n }\n\n async loadSnapshot({ providerId, modelId, ...snapshot }: ReturnType<typeof this.createSnapshot>) {\n const instance = await ChatModel.fromName(`${providerId}:${modelId}` as FullModelName);\n if (!(instance instanceof VercelChatModel)) {\n throw new Error(\"Incorrect deserialization!\");\n }\n instance.destroy();\n Object.assign(this, {\n ...snapshot,\n model: instance.model,\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["chat.ts"],"names":["VercelChatModel","ChatModel","emitter","supportsToolStreaming","constructor","model","modelId","ValueError","Emitter","root","child","namespace","providerId","creator","provider","split","toCamelCase","_create","input","_run","finishReason","usage","response","messages","generateText","transformInput","ChatModelOutput","transformMessages","_createStructure","schema","run","inputSchema","_input","generateObject","temperature","abortSignal","signal","mode","output","ZodArray","ZodEnum","object","_createStream","isEmpty","tools","fullStream","streamText","lastChunk","event","message","type","AssistantMessage","textDelta","toolCallId","toolName","args","ChatModelError","error","ToolMessage","result","Error","Promise","all","map","tool","name","description","parameters","jsonSchema","getInputJsonSchema","msg","role","content","text","mapToObj","flatMap","providerOptions","createSnapshot","loadSnapshot","snapshot","instance","fromName","destroy","Object","assign"],"mappings":"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","file":"chat.js","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n ChatModelInput,\n ChatModel,\n ChatModelOutput,\n ChatModelEvents,\n ChatModelObjectInput,\n ChatModelObjectOutput,\n} from \"@/backend/chat.js\";\nimport {\n CoreAssistantMessage,\n CoreMessage,\n CoreToolMessage,\n generateObject,\n generateText,\n jsonSchema,\n LanguageModelV1,\n streamText,\n TextPart,\n ToolCallPart,\n} from \"ai\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { AssistantMessage, Message, ToolMessage } from \"@/backend/message.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { isEmpty, mapToObj, toCamelCase } from \"remeda\";\nimport { FullModelName } from \"@/backend/utils.js\";\nimport { ChatModelError } from \"@/backend/errors.js\";\nimport { ZodArray, ZodEnum } from \"zod\";\n\nexport abstract class VercelChatModel<\n M extends LanguageModelV1 = LanguageModelV1,\n> extends ChatModel {\n public readonly emitter: Emitter<ChatModelEvents>;\n public readonly supportsToolStreaming: boolean = true;\n\n constructor(private readonly model: M) {\n super();\n if (!this.modelId) {\n throw new ValueError(\"No modelId has been provided!\");\n }\n this.emitter = Emitter.root.child({\n namespace: [\"backend\", this.providerId, \"chat\"],\n creator: this,\n });\n }\n\n get modelId(): string {\n return this.model.modelId;\n }\n\n get providerId(): string {\n const provider = this.model.provider.split(\".\")[0].split(\"-\")[0];\n return toCamelCase(provider);\n }\n\n protected async _create(input: ChatModelInput, _run: GetRunContext<this>) {\n const {\n finishReason,\n usage,\n response: { messages },\n } = await generateText(await this.transformInput(input));\n\n return new ChatModelOutput(this.transformMessages(messages), usage, finishReason);\n }\n\n protected async _createStructure<T>(\n { schema, ...input }: ChatModelObjectInput<T>,\n run: GetRunContext<this>,\n ): Promise<ChatModelObjectOutput<T>> {\n const inputSchema = schema._input || schema;\n\n const response = await generateObject({\n temperature: 0,\n ...(await this.transformInput(input)),\n schema,\n abortSignal: run.signal,\n model: this.model,\n mode: \"json\",\n // @ts-expect-error\n output:\n inputSchema instanceof ZodArray\n ? \"array\"\n : inputSchema instanceof ZodEnum\n ? \"enum\"\n : \"object\",\n });\n\n return { object: response.object };\n }\n\n async *_createStream(input: ChatModelInput, run: GetRunContext<this>) {\n if (!this.supportsToolStreaming && !isEmpty(input.tools ?? [])) {\n const response = await this._create(input, run);\n yield response;\n return;\n }\n\n const { fullStream, usage, finishReason, response } = streamText({\n ...(await this.transformInput(input)),\n abortSignal: run.signal,\n });\n\n let lastChunk: ChatModelOutput | null = null;\n for await (const event of fullStream) {\n let message: Message;\n switch (event.type) {\n case \"text-delta\":\n message = new AssistantMessage(event.textDelta);\n break;\n case \"tool-call\":\n message = new AssistantMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n args: event.args,\n });\n break;\n case \"error\":\n throw new ChatModelError(\"Unhandled error\", [event.error as Error]);\n case \"step-finish\":\n case \"step-start\":\n continue;\n case \"tool-result\":\n message = new ToolMessage({\n type: event.type,\n toolCallId: event.toolCallId,\n toolName: event.toolName,\n result: event.result,\n });\n break;\n case \"tool-call-streaming-start\":\n case \"tool-call-delta\":\n continue;\n case \"finish\":\n continue;\n default:\n throw new Error(`Unhandled event \"${event.type}\"`);\n }\n lastChunk = new ChatModelOutput([message]);\n yield lastChunk;\n }\n\n if (!lastChunk) {\n throw new ChatModelError(\"No chunks have been received!\");\n }\n lastChunk.usage = await usage;\n lastChunk.finishReason = await finishReason;\n await response;\n }\n\n protected async transformInput(\n input: ChatModelInput,\n ): Promise<Parameters<typeof generateText<Record<string, any>>>[0]> {\n const tools = await Promise.all(\n (input.tools ?? []).map(async (tool) => ({\n name: tool.name,\n description: tool.description,\n parameters: jsonSchema(await tool.getInputJsonSchema()),\n })),\n );\n\n const messages = input.messages.map((msg): CoreMessage => {\n if (msg instanceof AssistantMessage) {\n return { role: \"assistant\", content: msg.content };\n } else if (msg instanceof ToolMessage) {\n return { role: \"tool\", content: msg.content };\n }\n return { role: msg.role as \"user\" | \"system\", content: msg.text };\n });\n\n return {\n ...this.parameters,\n ...input,\n model: this.model,\n tools: mapToObj(tools, ({ name, ...tool }) => [name, tool]),\n messages,\n };\n }\n\n protected transformMessages(messages: (CoreAssistantMessage | CoreToolMessage)[]): Message[] {\n return messages.flatMap((msg) => {\n if (msg.role === \"tool\") {\n return new ToolMessage(msg.content, msg.providerOptions);\n }\n return new AssistantMessage(\n msg.content as TextPart | ToolCallPart | string,\n msg.providerOptions,\n );\n });\n }\n\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n providerId: this.providerId,\n modelId: this.modelId,\n supportsToolStreaming: this.supportsToolStreaming,\n };\n }\n\n async loadSnapshot({ providerId, modelId, ...snapshot }: ReturnType<typeof this.createSnapshot>) {\n const instance = await ChatModel.fromName(`${providerId}:${modelId}` as FullModelName);\n if (!(instance instanceof VercelChatModel)) {\n throw new Error(\"Incorrect deserialization!\");\n }\n instance.destroy();\n Object.assign(this, {\n ...snapshot,\n model: instance.model,\n });\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EmbeddingModel as EmbeddingModel$1, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from '../../../backend/embedding.cjs';
|
|
2
2
|
import { EmbeddingModel } from 'ai';
|
|
3
|
-
import { E as Emitter } from '../../../emitter-
|
|
3
|
+
import { E as Emitter } from '../../../emitter-C9EN5B0j.cjs';
|
|
4
4
|
import { GetRunContext } from '../../../context.cjs';
|
|
5
5
|
import '../../../internals/serializable.cjs';
|
|
6
6
|
import '../../../internals/types.cjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EmbeddingModel as EmbeddingModel$1, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from '../../../backend/embedding.js';
|
|
2
2
|
import { EmbeddingModel } from 'ai';
|
|
3
|
-
import { E as Emitter } from '../../../emitter-
|
|
3
|
+
import { E as Emitter } from '../../../emitter-BxVxGBbJ.js';
|
|
4
4
|
import { GetRunContext } from '../../../context.js';
|
|
5
5
|
import '../../../internals/serializable.js';
|
|
6
6
|
import '../../../internals/types.js';
|
|
@@ -2,7 +2,7 @@ import { ChatModel, ChatModelEmitter, ChatConfig, ChatModelInput, ChatModelOutpu
|
|
|
2
2
|
import { Message, MessageContentPart } from '../../../backend/message.cjs';
|
|
3
3
|
import { WatsonxClient, WatsonxClientSettings } from './client.cjs';
|
|
4
4
|
import { TextChatResultChoice, TextChatUsage, TextChatParams } from '@ibm-cloud/watsonx-ai/dist/watsonx-ai-ml/vml_v1.js';
|
|
5
|
-
import { E as Emitter } from '../../../emitter-
|
|
5
|
+
import { E as Emitter } from '../../../emitter-C9EN5B0j.cjs';
|
|
6
6
|
import { GetRunContext } from '../../../context.cjs';
|
|
7
7
|
import 'ai';
|
|
8
8
|
import '../../../internals/serializable.cjs';
|
|
@@ -2,7 +2,7 @@ import { ChatModel, ChatModelEmitter, ChatConfig, ChatModelInput, ChatModelOutpu
|
|
|
2
2
|
import { Message, MessageContentPart } from '../../../backend/message.js';
|
|
3
3
|
import { WatsonxClient, WatsonxClientSettings } from './client.js';
|
|
4
4
|
import { TextChatResultChoice, TextChatUsage, TextChatParams } from '@ibm-cloud/watsonx-ai/dist/watsonx-ai-ml/vml_v1.js';
|
|
5
|
-
import { E as Emitter } from '../../../emitter-
|
|
5
|
+
import { E as Emitter } from '../../../emitter-BxVxGBbJ.js';
|
|
6
6
|
import { GetRunContext } from '../../../context.js';
|
|
7
7
|
import 'ai';
|
|
8
8
|
import '../../../internals/serializable.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { WatsonxClient, WatsonxClientSettings } from './client.cjs';
|
|
2
2
|
import { EmbeddingModel, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from '../../../backend/embedding.cjs';
|
|
3
3
|
import { EmbeddingParameters } from '@ibm-cloud/watsonx-ai/dist/watsonx-ai-ml/vml_v1.js';
|
|
4
|
-
import { E as Emitter } from '../../../emitter-
|
|
4
|
+
import { E as Emitter } from '../../../emitter-C9EN5B0j.cjs';
|
|
5
5
|
import '@ibm-cloud/watsonx-ai';
|
|
6
6
|
import 'ibm-cloud-sdk-core';
|
|
7
7
|
import '../../../backend/client.cjs';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { WatsonxClient, WatsonxClientSettings } from './client.js';
|
|
2
2
|
import { EmbeddingModel, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from '../../../backend/embedding.js';
|
|
3
3
|
import { EmbeddingParameters } from '@ibm-cloud/watsonx-ai/dist/watsonx-ai-ml/vml_v1.js';
|
|
4
|
-
import { E as Emitter } from '../../../emitter-
|
|
4
|
+
import { E as Emitter } from '../../../emitter-BxVxGBbJ.js';
|
|
5
5
|
import '@ibm-cloud/watsonx-ai';
|
|
6
6
|
import 'ibm-cloud-sdk-core';
|
|
7
7
|
import '../../../backend/client.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { GetRunContext, RunContext } from './context.cjs';
|
|
2
|
-
import { b as AgentMeta, a as BaseAgent } from './base-
|
|
2
|
+
import { b as AgentMeta, a as BaseAgent } from './base-daM6fHUP.cjs';
|
|
3
3
|
import { AnyTool } from './tools/base.cjs';
|
|
4
4
|
import { BaseMemory } from './memory/base.cjs';
|
|
5
|
-
import { E as Emitter } from './emitter-
|
|
5
|
+
import { E as Emitter } from './emitter-C9EN5B0j.cjs';
|
|
6
6
|
import { BeeRunOptions, BeeAgentRunIteration, BeeCallbacks, BeeParserInput, BeeMeta, BeeRunInput, BeeIterationToolResult, BeeAgentTemplates, BeeAgentExecutionConfig, BeeRunOutput } from './agents/bee/types.cjs';
|
|
7
7
|
import { LinePrefixParser } from './parsers/linePrefix.cjs';
|
|
8
8
|
import { Serializable } from './internals/serializable.cjs';
|
|
@@ -81,4 +81,4 @@ declare class BeeAgent extends BaseAgent<BeeRunInput, BeeRunOutput, BeeRunOption
|
|
|
81
81
|
};
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
export {
|
|
84
|
+
export { BaseRunner as B, type BeeRunnerLLMInput as a, type BeeRunnerToolInput as b, type BeeInput as c, BeeAgent as d, type BeeTemplateFactory as e };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { GetRunContext, RunContext } from './context.js';
|
|
2
|
-
import { b as AgentMeta, a as BaseAgent } from './base-
|
|
2
|
+
import { b as AgentMeta, a as BaseAgent } from './base-mmG-8Pk9.js';
|
|
3
3
|
import { AnyTool } from './tools/base.js';
|
|
4
4
|
import { BaseMemory } from './memory/base.js';
|
|
5
|
-
import { E as Emitter } from './emitter-
|
|
5
|
+
import { E as Emitter } from './emitter-BxVxGBbJ.js';
|
|
6
6
|
import { BeeRunOptions, BeeAgentRunIteration, BeeCallbacks, BeeParserInput, BeeMeta, BeeRunInput, BeeIterationToolResult, BeeAgentTemplates, BeeAgentExecutionConfig, BeeRunOutput } from './agents/bee/types.js';
|
|
7
7
|
import { LinePrefixParser } from './parsers/linePrefix.js';
|
|
8
8
|
import { Serializable } from './internals/serializable.js';
|
|
@@ -81,4 +81,4 @@ declare class BeeAgent extends BaseAgent<BeeRunInput, BeeRunOutput, BeeRunOption
|
|
|
81
81
|
};
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
export {
|
|
84
|
+
export { BaseRunner as B, type BeeRunnerLLMInput as a, type BeeRunnerToolInput as b, type BeeInput as c, BeeAgent as d, type BeeTemplateFactory as e };
|
package/dist/agents/base.cjs
CHANGED
package/dist/agents/base.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["base.ts"],"names":["AgentError","FrameworkError","BaseAgent","Serializable","isRunning","run","input","options","RunContext","enter","signal","params","context","_run","e","middleware","INSTRUMENTATION_ENABLED","createTelemetryMiddleware","doNothing","destroy","emitter","meta","name","constructor","description","tools","createSnapshot","loadSnapshot","snapshot","Object","assign"],"mappings":";;;;;;;;;;;AA0BO,MAAMA,mBAAmBC,yBAAAA,CAAAA;EA1BhC;;;AA0BgD;AAMzC,MAAeC,kBAIZC,6BAAAA,CAAAA;EApCV;;;EAqCYC,SAAY,GAAA,KAAA;EAIfC,GACF,CAAA,GAAA,CAACC,KAAOC,EAAAA,OAAAA,CAGX,EAAA;AACA,IAAA,IAAI,KAAKH,SAAW,EAAA;AAClB,MAAM,MAAA,IAAIJ,WAAW,2BAAA,CAAA;AACvB;AAEA,IAAOQ,OAAAA,sBAAAA,CAAWC,MAChB,IACA,EAAA;AAAEC,MAAAA,MAAAA,EAAQH,OAASG,EAAAA,MAAAA;MAAQC,MAAQ,EAAA;AAACL,QAAAA,KAAAA;AAAOC,QAAAA;;AAAkB,KAAA,EAC7D,OAAOK,OAAAA,KAAAA;AACL,MAAI,IAAA;AACF,QAAA,IAAA,CAAKR,SAAY,GAAA,IAAA;AAEjB,QAAA,OAAO,MAAM,IAAA,CAAKS,IAAKP,CAAAA,KAAAA,EAAOC,SAASK,OAAAA,CAAAA;AACzC,OAAA,CAAA,OAASE,CAAG,EAAA;AACV,QAAA,IAAIA,aAAad,UAAY,EAAA;AAC3B,UAAMc,MAAAA,CAAAA;SACD,MAAA;AACL,UAAM,MAAA,IAAId,WAAW,
|
|
1
|
+
{"version":3,"sources":["base.ts"],"names":["AgentError","FrameworkError","BaseAgent","Serializable","isRunning","run","input","options","RunContext","enter","signal","params","context","_run","e","middleware","INSTRUMENTATION_ENABLED","createTelemetryMiddleware","doNothing","destroy","emitter","meta","name","constructor","description","tools","createSnapshot","loadSnapshot","snapshot","Object","assign"],"mappings":";;;;;;;;;;;AA0BO,MAAMA,mBAAmBC,yBAAAA,CAAAA;EA1BhC;;;AA0BgD;AAMzC,MAAeC,kBAIZC,6BAAAA,CAAAA;EApCV;;;EAqCYC,SAAY,GAAA,KAAA;EAIfC,GACF,CAAA,GAAA,CAACC,KAAOC,EAAAA,OAAAA,CAGX,EAAA;AACA,IAAA,IAAI,KAAKH,SAAW,EAAA;AAClB,MAAM,MAAA,IAAIJ,WAAW,2BAAA,CAAA;AACvB;AAEA,IAAOQ,OAAAA,sBAAAA,CAAWC,MAChB,IACA,EAAA;AAAEC,MAAAA,MAAAA,EAAQH,OAASG,EAAAA,MAAAA;MAAQC,MAAQ,EAAA;AAACL,QAAAA,KAAAA;AAAOC,QAAAA;;AAAkB,KAAA,EAC7D,OAAOK,OAAAA,KAAAA;AACL,MAAI,IAAA;AACF,QAAA,IAAA,CAAKR,SAAY,GAAA,IAAA;AAEjB,QAAA,OAAO,MAAM,IAAA,CAAKS,IAAKP,CAAAA,KAAAA,EAAOC,SAASK,OAAAA,CAAAA;AACzC,OAAA,CAAA,OAASE,CAAG,EAAA;AACV,QAAA,IAAIA,aAAad,UAAY,EAAA;AAC3B,UAAMc,MAAAA,CAAAA;SACD,MAAA;AACL,UAAM,MAAA,IAAId,WAAW,CAAuC,mCAAA,CAAA,EAAA;AAACc,YAAAA;AAAE,WAAA,CAAA;AACjE;OACF,SAAA;AACE,QAAA,IAAA,CAAKV,SAAY,GAAA,KAAA;AACnB;AACF,KAAA,EACAW,UAAWC,CAAAA,kCAAAA,GAA0BC,uDAAAA,EAAAA,GAA8BC,kBAAAA,CAAAA;AACvE;EAQAC,OAAU,GAAA;AACR,IAAA,IAAA,CAAKC,QAAQD,OAAO,EAAA;AACtB;AAKA,EAAA,IAAWE,IAAkB,GAAA;AAC3B,IAAO,OAAA;MACLC,IAAM,EAAA,IAAA,CAAKC,YAAYD,IAAQ,IAAA,WAAA;MAC/BE,WAAa,EAAA,EAAA;AACbC,MAAAA,KAAAA,EAAO;AACT,KAAA;AACF;EAEAC,cAAiB,GAAA;AACf,IAAO,OAAA;MAAEtB,SAAW,EAAA,KAAA;AAAOgB,MAAAA,OAAAA,EAAS,IAAKA,CAAAA;AAAQ,KAAA;AACnD;AAEAO,EAAAA,YAAAA,CAAaC,QAAkD,EAAA;AAC7DC,IAAOC,MAAAA,CAAAA,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACtB;AACF","file":"base.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { FrameworkError } from \"@/errors.js\";\nimport { AgentMeta } from \"@/agents/types.js\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { GetRunContext, RunContext } from \"@/context.js\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { createTelemetryMiddleware } from \"@/instrumentation/create-telemetry-middleware.js\";\nimport { INSTRUMENTATION_ENABLED } from \"@/instrumentation/config.js\";\nimport { doNothing } from \"remeda\";\nimport { BaseMemory } from \"@/memory/base.js\";\n\nexport class AgentError extends FrameworkError {}\n\nexport interface BaseAgentRunOptions {\n signal?: AbortSignal;\n}\n\nexport abstract class BaseAgent<\n TInput,\n TOutput,\n TOptions extends BaseAgentRunOptions = BaseAgentRunOptions,\n> extends Serializable {\n protected isRunning = false;\n\n public abstract readonly emitter: Emitter<unknown>;\n\n public run(\n ...[input, options]: Partial<TOptions> extends TOptions\n ? [input: TInput, options?: TOptions]\n : [input: TInput, options: TOptions]\n ) {\n if (this.isRunning) {\n throw new AgentError(\"Agent is already running!\");\n }\n\n return RunContext.enter(\n this,\n { signal: options?.signal, params: [input, options] as const },\n async (context) => {\n try {\n this.isRunning = true;\n // @ts-expect-error\n return await this._run(input, options, context);\n } catch (e) {\n if (e instanceof AgentError) {\n throw e;\n } else {\n throw new AgentError(`The Agent has encountered an error.`, [e]);\n }\n } finally {\n this.isRunning = false;\n }\n },\n ).middleware(INSTRUMENTATION_ENABLED ? createTelemetryMiddleware() : doNothing());\n }\n\n protected abstract _run(\n input: TInput,\n options: TOptions,\n run: GetRunContext<typeof this>,\n ): Promise<TOutput>;\n\n destroy() {\n this.emitter.destroy();\n }\n\n public abstract set memory(memory: BaseMemory);\n public abstract get memory(): BaseMemory;\n\n public get meta(): AgentMeta {\n return {\n name: this.constructor.name ?? \"BaseAgent\",\n description: \"\",\n tools: [],\n };\n }\n\n createSnapshot() {\n return { isRunning: false, emitter: this.emitter };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n}\n"]}
|
package/dist/agents/base.d.cts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import '../context.cjs';
|
|
2
2
|
import '../errors.cjs';
|
|
3
|
-
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from '../base-
|
|
3
|
+
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from '../base-daM6fHUP.cjs';
|
|
4
4
|
import '../internals/serializable.cjs';
|
|
5
|
-
import '../emitter-
|
|
5
|
+
import '../emitter-C9EN5B0j.cjs';
|
|
6
6
|
import '../memory/base.cjs';
|
|
7
7
|
import '../internals/helpers/promise.cjs';
|
|
8
8
|
import '../internals/types.cjs';
|
package/dist/agents/base.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import '../context.js';
|
|
2
2
|
import '../errors.js';
|
|
3
|
-
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from '../base-
|
|
3
|
+
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from '../base-mmG-8Pk9.js';
|
|
4
4
|
import '../internals/serializable.js';
|
|
5
|
-
import '../emitter-
|
|
5
|
+
import '../emitter-BxVxGBbJ.js';
|
|
6
6
|
import '../memory/base.js';
|
|
7
7
|
import '../internals/helpers/promise.js';
|
|
8
8
|
import '../internals/types.js';
|
package/dist/agents/base.js
CHANGED
package/dist/agents/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["base.ts"],"names":["AgentError","FrameworkError","BaseAgent","Serializable","isRunning","run","input","options","RunContext","enter","signal","params","context","_run","e","middleware","INSTRUMENTATION_ENABLED","createTelemetryMiddleware","doNothing","destroy","emitter","meta","name","constructor","description","tools","createSnapshot","loadSnapshot","snapshot","Object","assign"],"mappings":";;;;;;;;;AA0BO,MAAMA,mBAAmBC,cAAAA,CAAAA;EA1BhC;;;AA0BgD;AAMzC,MAAeC,kBAIZC,YAAAA,CAAAA;EApCV;;;EAqCYC,SAAY,GAAA,KAAA;EAIfC,GACF,CAAA,GAAA,CAACC,KAAOC,EAAAA,OAAAA,CAGX,EAAA;AACA,IAAA,IAAI,KAAKH,SAAW,EAAA;AAClB,MAAM,MAAA,IAAIJ,WAAW,2BAAA,CAAA;AACvB;AAEA,IAAOQ,OAAAA,UAAAA,CAAWC,MAChB,IACA,EAAA;AAAEC,MAAAA,MAAAA,EAAQH,OAASG,EAAAA,MAAAA;MAAQC,MAAQ,EAAA;AAACL,QAAAA,KAAAA;AAAOC,QAAAA;;AAAkB,KAAA,EAC7D,OAAOK,OAAAA,KAAAA;AACL,MAAI,IAAA;AACF,QAAA,IAAA,CAAKR,SAAY,GAAA,IAAA;AAEjB,QAAA,OAAO,MAAM,IAAA,CAAKS,IAAKP,CAAAA,KAAAA,EAAOC,SAASK,OAAAA,CAAAA;AACzC,OAAA,CAAA,OAASE,CAAG,EAAA;AACV,QAAA,IAAIA,aAAad,UAAY,EAAA;AAC3B,UAAMc,MAAAA,CAAAA;SACD,MAAA;AACL,UAAM,MAAA,IAAId,WAAW,
|
|
1
|
+
{"version":3,"sources":["base.ts"],"names":["AgentError","FrameworkError","BaseAgent","Serializable","isRunning","run","input","options","RunContext","enter","signal","params","context","_run","e","middleware","INSTRUMENTATION_ENABLED","createTelemetryMiddleware","doNothing","destroy","emitter","meta","name","constructor","description","tools","createSnapshot","loadSnapshot","snapshot","Object","assign"],"mappings":";;;;;;;;;AA0BO,MAAMA,mBAAmBC,cAAAA,CAAAA;EA1BhC;;;AA0BgD;AAMzC,MAAeC,kBAIZC,YAAAA,CAAAA;EApCV;;;EAqCYC,SAAY,GAAA,KAAA;EAIfC,GACF,CAAA,GAAA,CAACC,KAAOC,EAAAA,OAAAA,CAGX,EAAA;AACA,IAAA,IAAI,KAAKH,SAAW,EAAA;AAClB,MAAM,MAAA,IAAIJ,WAAW,2BAAA,CAAA;AACvB;AAEA,IAAOQ,OAAAA,UAAAA,CAAWC,MAChB,IACA,EAAA;AAAEC,MAAAA,MAAAA,EAAQH,OAASG,EAAAA,MAAAA;MAAQC,MAAQ,EAAA;AAACL,QAAAA,KAAAA;AAAOC,QAAAA;;AAAkB,KAAA,EAC7D,OAAOK,OAAAA,KAAAA;AACL,MAAI,IAAA;AACF,QAAA,IAAA,CAAKR,SAAY,GAAA,IAAA;AAEjB,QAAA,OAAO,MAAM,IAAA,CAAKS,IAAKP,CAAAA,KAAAA,EAAOC,SAASK,OAAAA,CAAAA;AACzC,OAAA,CAAA,OAASE,CAAG,EAAA;AACV,QAAA,IAAIA,aAAad,UAAY,EAAA;AAC3B,UAAMc,MAAAA,CAAAA;SACD,MAAA;AACL,UAAM,MAAA,IAAId,WAAW,CAAuC,mCAAA,CAAA,EAAA;AAACc,YAAAA;AAAE,WAAA,CAAA;AACjE;OACF,SAAA;AACE,QAAA,IAAA,CAAKV,SAAY,GAAA,KAAA;AACnB;AACF,KAAA,EACAW,UAAWC,CAAAA,uBAAAA,GAA0BC,yBAAAA,EAAAA,GAA8BC,WAAAA,CAAAA;AACvE;EAQAC,OAAU,GAAA;AACR,IAAA,IAAA,CAAKC,QAAQD,OAAO,EAAA;AACtB;AAKA,EAAA,IAAWE,IAAkB,GAAA;AAC3B,IAAO,OAAA;MACLC,IAAM,EAAA,IAAA,CAAKC,YAAYD,IAAQ,IAAA,WAAA;MAC/BE,WAAa,EAAA,EAAA;AACbC,MAAAA,KAAAA,EAAO;AACT,KAAA;AACF;EAEAC,cAAiB,GAAA;AACf,IAAO,OAAA;MAAEtB,SAAW,EAAA,KAAA;AAAOgB,MAAAA,OAAAA,EAAS,IAAKA,CAAAA;AAAQ,KAAA;AACnD;AAEAO,EAAAA,YAAAA,CAAaC,QAAkD,EAAA;AAC7DC,IAAOC,MAAAA,CAAAA,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACtB;AACF","file":"base.js","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { FrameworkError } from \"@/errors.js\";\nimport { AgentMeta } from \"@/agents/types.js\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { GetRunContext, RunContext } from \"@/context.js\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { createTelemetryMiddleware } from \"@/instrumentation/create-telemetry-middleware.js\";\nimport { INSTRUMENTATION_ENABLED } from \"@/instrumentation/config.js\";\nimport { doNothing } from \"remeda\";\nimport { BaseMemory } from \"@/memory/base.js\";\n\nexport class AgentError extends FrameworkError {}\n\nexport interface BaseAgentRunOptions {\n signal?: AbortSignal;\n}\n\nexport abstract class BaseAgent<\n TInput,\n TOutput,\n TOptions extends BaseAgentRunOptions = BaseAgentRunOptions,\n> extends Serializable {\n protected isRunning = false;\n\n public abstract readonly emitter: Emitter<unknown>;\n\n public run(\n ...[input, options]: Partial<TOptions> extends TOptions\n ? [input: TInput, options?: TOptions]\n : [input: TInput, options: TOptions]\n ) {\n if (this.isRunning) {\n throw new AgentError(\"Agent is already running!\");\n }\n\n return RunContext.enter(\n this,\n { signal: options?.signal, params: [input, options] as const },\n async (context) => {\n try {\n this.isRunning = true;\n // @ts-expect-error\n return await this._run(input, options, context);\n } catch (e) {\n if (e instanceof AgentError) {\n throw e;\n } else {\n throw new AgentError(`The Agent has encountered an error.`, [e]);\n }\n } finally {\n this.isRunning = false;\n }\n },\n ).middleware(INSTRUMENTATION_ENABLED ? createTelemetryMiddleware() : doNothing());\n }\n\n protected abstract _run(\n input: TInput,\n options: TOptions,\n run: GetRunContext<typeof this>,\n ): Promise<TOutput>;\n\n destroy() {\n this.emitter.destroy();\n }\n\n public abstract set memory(memory: BaseMemory);\n public abstract get memory(): BaseMemory;\n\n public get meta(): AgentMeta {\n return {\n name: this.constructor.name ?? \"BaseAgent\",\n description: \"\",\n tools: [],\n };\n }\n\n createSnapshot() {\n return { isRunning: false, emitter: this.emitter };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n}\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import '../../context.cjs';
|
|
2
|
-
import '../../base-
|
|
2
|
+
import '../../base-daM6fHUP.cjs';
|
|
3
3
|
import '../../tools/base.cjs';
|
|
4
4
|
import '../../memory/base.cjs';
|
|
5
|
-
import '../../emitter-
|
|
5
|
+
import '../../emitter-C9EN5B0j.cjs';
|
|
6
6
|
import './types.cjs';
|
|
7
|
-
export {
|
|
7
|
+
export { d as BeeAgent, c as BeeInput, e as BeeTemplateFactory } from '../../agent-BZ-_ATuJ.cjs';
|
|
8
8
|
import '../../backend/chat.cjs';
|
|
9
9
|
import '../../internals/serializable.cjs';
|
|
10
10
|
import '../../internals/types.cjs';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import '../../context.js';
|
|
2
|
-
import '../../base-
|
|
2
|
+
import '../../base-mmG-8Pk9.js';
|
|
3
3
|
import '../../tools/base.js';
|
|
4
4
|
import '../../memory/base.js';
|
|
5
|
-
import '../../emitter-
|
|
5
|
+
import '../../emitter-BxVxGBbJ.js';
|
|
6
6
|
import './types.js';
|
|
7
|
-
export {
|
|
7
|
+
export { d as BeeAgent, c as BeeInput, e as BeeTemplateFactory } from '../../agent-BqoZ6FbM.js';
|
|
8
8
|
import '../../backend/chat.js';
|
|
9
9
|
import '../../internals/serializable.js';
|
|
10
10
|
import '../../internals/types.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import '../../../parsers/linePrefix.cjs';
|
|
2
2
|
import '../types.cjs';
|
|
3
3
|
import '../../../internals/serializable.cjs';
|
|
4
|
-
export {
|
|
4
|
+
export { B as BaseRunner, a as BeeRunnerLLMInput, b as BeeRunnerToolInput } from '../../../agent-BZ-_ATuJ.cjs';
|
|
5
5
|
import '../../../internals/helpers/counter.cjs';
|
|
6
6
|
import '../../../memory/base.cjs';
|
|
7
7
|
import '../../../context.cjs';
|
|
8
|
-
import '../../../emitter-
|
|
8
|
+
import '../../../emitter-C9EN5B0j.cjs';
|
|
9
9
|
import '../../../parsers/field.cjs';
|
|
10
10
|
import 'zod';
|
|
11
11
|
import '@streamparser/json';
|
|
@@ -29,4 +29,4 @@ import '../../../backend/chat.cjs';
|
|
|
29
29
|
import '../../../backend/utils.cjs';
|
|
30
30
|
import '../../../backend/constants.cjs';
|
|
31
31
|
import '@ai-sdk/provider';
|
|
32
|
-
import '../../../base-
|
|
32
|
+
import '../../../base-daM6fHUP.cjs';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import '../../../parsers/linePrefix.js';
|
|
2
2
|
import '../types.js';
|
|
3
3
|
import '../../../internals/serializable.js';
|
|
4
|
-
export {
|
|
4
|
+
export { B as BaseRunner, a as BeeRunnerLLMInput, b as BeeRunnerToolInput } from '../../../agent-BqoZ6FbM.js';
|
|
5
5
|
import '../../../internals/helpers/counter.js';
|
|
6
6
|
import '../../../memory/base.js';
|
|
7
7
|
import '../../../context.js';
|
|
8
|
-
import '../../../emitter-
|
|
8
|
+
import '../../../emitter-BxVxGBbJ.js';
|
|
9
9
|
import '../../../parsers/field.js';
|
|
10
10
|
import 'zod';
|
|
11
11
|
import '@streamparser/json';
|
|
@@ -29,4 +29,4 @@ import '../../../backend/chat.js';
|
|
|
29
29
|
import '../../../backend/utils.js';
|
|
30
30
|
import '../../../backend/constants.js';
|
|
31
31
|
import '@ai-sdk/provider';
|
|
32
|
-
import '../../../base-
|
|
32
|
+
import '../../../base-mmG-8Pk9.js';
|
|
@@ -4,9 +4,9 @@ import { PromptTemplate } from '../../../../template.cjs';
|
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.cjs';
|
|
5
5
|
import { DefaultRunner } from '../default/runner.cjs';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
-
import {
|
|
7
|
+
import { c as BeeInput, d as BeeAgent } from '../../../../agent-BZ-_ATuJ.cjs';
|
|
8
8
|
import { GetRunContext } from '../../../../context.cjs';
|
|
9
|
-
import '../../../../emitter-
|
|
9
|
+
import '../../../../emitter-C9EN5B0j.cjs';
|
|
10
10
|
import '../../../../internals/types.cjs';
|
|
11
11
|
import '../../../../internals/helpers/guards.cjs';
|
|
12
12
|
import '../../../../internals/serializable.cjs';
|
|
@@ -29,7 +29,7 @@ import '@ai-sdk/provider';
|
|
|
29
29
|
import '../../../../internals/helpers/promise.cjs';
|
|
30
30
|
import '../../../../internals/helpers/schema.cjs';
|
|
31
31
|
import 'zod-to-json-schema';
|
|
32
|
-
import '../../../../base-
|
|
32
|
+
import '../../../../base-daM6fHUP.cjs';
|
|
33
33
|
import '../../../../internals/helpers/counter.cjs';
|
|
34
34
|
|
|
35
35
|
declare class DeepThinkRunner extends DefaultRunner {
|
|
@@ -4,9 +4,9 @@ import { PromptTemplate } from '../../../../template.js';
|
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.js';
|
|
5
5
|
import { DefaultRunner } from '../default/runner.js';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
-
import {
|
|
7
|
+
import { c as BeeInput, d as BeeAgent } from '../../../../agent-BqoZ6FbM.js';
|
|
8
8
|
import { GetRunContext } from '../../../../context.js';
|
|
9
|
-
import '../../../../emitter-
|
|
9
|
+
import '../../../../emitter-BxVxGBbJ.js';
|
|
10
10
|
import '../../../../internals/types.js';
|
|
11
11
|
import '../../../../internals/helpers/guards.js';
|
|
12
12
|
import '../../../../internals/serializable.js';
|
|
@@ -29,7 +29,7 @@ import '@ai-sdk/provider';
|
|
|
29
29
|
import '../../../../internals/helpers/promise.js';
|
|
30
30
|
import '../../../../internals/helpers/schema.js';
|
|
31
31
|
import 'zod-to-json-schema';
|
|
32
|
-
import '../../../../base-
|
|
32
|
+
import '../../../../base-mmG-8Pk9.js';
|
|
33
33
|
import '../../../../internals/helpers/counter.js';
|
|
34
34
|
|
|
35
35
|
declare class DeepThinkRunner extends DefaultRunner {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PromptTemplate } from '../../../../template.cjs';
|
|
2
|
-
import {
|
|
2
|
+
import { B as BaseRunner, a as BeeRunnerLLMInput, b as BeeRunnerToolInput } from '../../../../agent-BZ-_ATuJ.cjs';
|
|
3
3
|
import { BeeAgentRunIteration, BeeRunInput, BeeParserInput } from '../../types.cjs';
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.cjs';
|
|
5
5
|
import { LinePrefixParser } from '../../../../parsers/linePrefix.cjs';
|
|
@@ -12,9 +12,9 @@ import '../../../../internals/helpers/guards.cjs';
|
|
|
12
12
|
import '../../../../internals/serializable.cjs';
|
|
13
13
|
import 'ajv';
|
|
14
14
|
import '../../../../context.cjs';
|
|
15
|
-
import '../../../../emitter-
|
|
15
|
+
import '../../../../emitter-C9EN5B0j.cjs';
|
|
16
16
|
import '../../../../internals/helpers/promise.cjs';
|
|
17
|
-
import '../../../../base-
|
|
17
|
+
import '../../../../base-daM6fHUP.cjs';
|
|
18
18
|
import '../../../../backend/chat.cjs';
|
|
19
19
|
import 'ai';
|
|
20
20
|
import 'promise-based-task';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PromptTemplate } from '../../../../template.js';
|
|
2
|
-
import {
|
|
2
|
+
import { B as BaseRunner, a as BeeRunnerLLMInput, b as BeeRunnerToolInput } from '../../../../agent-BqoZ6FbM.js';
|
|
3
3
|
import { BeeAgentRunIteration, BeeRunInput, BeeParserInput } from '../../types.js';
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.js';
|
|
5
5
|
import { LinePrefixParser } from '../../../../parsers/linePrefix.js';
|
|
@@ -12,9 +12,9 @@ import '../../../../internals/helpers/guards.js';
|
|
|
12
12
|
import '../../../../internals/serializable.js';
|
|
13
13
|
import 'ajv';
|
|
14
14
|
import '../../../../context.js';
|
|
15
|
-
import '../../../../emitter-
|
|
15
|
+
import '../../../../emitter-BxVxGBbJ.js';
|
|
16
16
|
import '../../../../internals/helpers/promise.js';
|
|
17
|
-
import '../../../../base-
|
|
17
|
+
import '../../../../base-mmG-8Pk9.js';
|
|
18
18
|
import '../../../../backend/chat.js';
|
|
19
19
|
import 'ai';
|
|
20
20
|
import 'promise-based-task';
|
|
@@ -4,9 +4,9 @@ import * as zod from 'zod';
|
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.cjs';
|
|
5
5
|
import { DefaultRunner } from '../default/runner.cjs';
|
|
6
6
|
import { BeeRunOptions, BeeParserInput } from '../../types.cjs';
|
|
7
|
-
import {
|
|
7
|
+
import { c as BeeInput, d as BeeAgent } from '../../../../agent-BZ-_ATuJ.cjs';
|
|
8
8
|
import { GetRunContext } from '../../../../context.cjs';
|
|
9
|
-
import '../../../../emitter-
|
|
9
|
+
import '../../../../emitter-C9EN5B0j.cjs';
|
|
10
10
|
import '../../../../internals/types.cjs';
|
|
11
11
|
import '../../../../internals/helpers/guards.cjs';
|
|
12
12
|
import '../../../../internals/serializable.cjs';
|
|
@@ -24,7 +24,7 @@ import '../../../../internals/helpers/promise.cjs';
|
|
|
24
24
|
import '../../../../backend/message.cjs';
|
|
25
25
|
import 'ai';
|
|
26
26
|
import '../../../../memory/base.cjs';
|
|
27
|
-
import '../../../../base-
|
|
27
|
+
import '../../../../base-daM6fHUP.cjs';
|
|
28
28
|
import '../../../../backend/chat.cjs';
|
|
29
29
|
import '../../../../backend/utils.cjs';
|
|
30
30
|
import '../../../../backend/constants.cjs';
|