beeai-framework 0.1.28 → 0.1.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/a2a/agents/agent.cjs.map +1 -1
- package/dist/adapters/a2a/agents/agent.d.cts +2 -2
- package/dist/adapters/a2a/agents/agent.d.ts +2 -2
- package/dist/adapters/a2a/agents/agent.js.map +1 -1
- package/dist/adapters/a2a/agents/events.d.cts +1 -1
- package/dist/adapters/a2a/agents/events.d.ts +1 -1
- package/dist/adapters/a2a/agents/types.d.cts +2 -2
- package/dist/adapters/a2a/agents/types.d.ts +2 -2
- package/dist/adapters/a2a/agents/utils.cjs +52 -11
- package/dist/adapters/a2a/agents/utils.cjs.map +1 -1
- package/dist/adapters/a2a/agents/utils.js +52 -11
- package/dist/adapters/a2a/agents/utils.js.map +1 -1
- package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -1
- package/dist/adapters/a2a/serve/agent_executor.d.cts +3 -3
- package/dist/adapters/a2a/serve/agent_executor.d.ts +3 -3
- package/dist/adapters/a2a/serve/agent_executor.js.map +1 -1
- package/dist/adapters/a2a/serve/server.cjs.map +1 -1
- package/dist/adapters/a2a/serve/server.d.cts +2 -2
- package/dist/adapters/a2a/serve/server.d.ts +2 -2
- package/dist/adapters/a2a/serve/server.js.map +1 -1
- package/dist/adapters/acp/agents/agent.cjs.map +1 -1
- package/dist/adapters/acp/agents/agent.d.cts +2 -2
- package/dist/adapters/acp/agents/agent.d.ts +2 -2
- package/dist/adapters/acp/agents/agent.js.map +1 -1
- package/dist/adapters/acp/agents/events.d.cts +1 -1
- package/dist/adapters/acp/agents/events.d.ts +1 -1
- package/dist/adapters/agentstack/agents/agent.cjs.map +1 -1
- package/dist/adapters/agentstack/agents/agent.d.cts +2 -2
- package/dist/adapters/agentstack/agents/agent.d.ts +2 -2
- package/dist/adapters/agentstack/agents/agent.js.map +1 -1
- package/dist/adapters/agentstack/agents/events.d.cts +1 -1
- package/dist/adapters/agentstack/agents/events.d.ts +1 -1
- package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/chat.d.cts +2 -2
- package/dist/adapters/amazon-bedrock/backend/chat.d.ts +2 -2
- package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/client.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/client.js.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +2 -2
- package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +2 -2
- package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
- package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/chat.d.cts +3 -3
- package/dist/adapters/anthropic/backend/chat.d.ts +3 -3
- package/dist/adapters/anthropic/backend/chat.js.map +1 -1
- package/dist/adapters/anthropic/backend/client.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/client.js.map +1 -1
- package/dist/adapters/anthropic/backend/embedding.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/embedding.d.cts +2 -2
- package/dist/adapters/anthropic/backend/embedding.d.ts +2 -2
- package/dist/adapters/anthropic/backend/embedding.js.map +1 -1
- package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/chat.d.cts +3 -3
- package/dist/adapters/azure-openai/backend/chat.d.ts +3 -3
- package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
- package/dist/adapters/azure-openai/backend/client.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/client.js.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.d.cts +2 -2
- package/dist/adapters/azure-openai/backend/embedding.d.ts +2 -2
- package/dist/adapters/azure-openai/backend/embedding.js.map +1 -1
- package/dist/adapters/dummy/backend/chat.cjs.map +1 -1
- package/dist/adapters/dummy/backend/chat.d.cts +2 -2
- package/dist/adapters/dummy/backend/chat.d.ts +2 -2
- package/dist/adapters/dummy/backend/chat.js.map +1 -1
- package/dist/adapters/dummy/backend/embedding.cjs.map +1 -1
- package/dist/adapters/dummy/backend/embedding.d.cts +2 -2
- package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
- package/dist/adapters/dummy/backend/embedding.js.map +1 -1
- package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/chat.d.cts +3 -3
- package/dist/adapters/google-vertex/backend/chat.d.ts +3 -3
- package/dist/adapters/google-vertex/backend/chat.js.map +1 -1
- package/dist/adapters/google-vertex/backend/client.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/client.js.map +1 -1
- package/dist/adapters/google-vertex/backend/embedding.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/embedding.d.cts +2 -2
- package/dist/adapters/google-vertex/backend/embedding.d.ts +2 -2
- package/dist/adapters/google-vertex/backend/embedding.js.map +1 -1
- package/dist/adapters/groq/backend/chat.cjs.map +1 -1
- package/dist/adapters/groq/backend/chat.d.cts +3 -3
- package/dist/adapters/groq/backend/chat.d.ts +3 -3
- package/dist/adapters/groq/backend/chat.js.map +1 -1
- package/dist/adapters/groq/backend/client.cjs.map +1 -1
- package/dist/adapters/groq/backend/client.js.map +1 -1
- package/dist/adapters/groq/backend/embedding.cjs.map +1 -1
- package/dist/adapters/groq/backend/embedding.d.cts +2 -2
- package/dist/adapters/groq/backend/embedding.d.ts +2 -2
- package/dist/adapters/groq/backend/embedding.js.map +1 -1
- package/dist/adapters/langchain/backend/chat.cjs +6 -28
- package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
- package/dist/adapters/langchain/backend/chat.d.cts +6 -5
- package/dist/adapters/langchain/backend/chat.d.ts +6 -5
- package/dist/adapters/langchain/backend/chat.js +6 -28
- package/dist/adapters/langchain/backend/chat.js.map +1 -1
- package/dist/adapters/langchain/backend/embedding.cjs +3 -2
- package/dist/adapters/langchain/backend/embedding.cjs.map +1 -1
- package/dist/adapters/langchain/backend/embedding.d.cts +3 -3
- package/dist/adapters/langchain/backend/embedding.d.ts +3 -3
- package/dist/adapters/langchain/backend/embedding.js +3 -2
- package/dist/adapters/langchain/backend/embedding.js.map +1 -1
- package/dist/adapters/langchain/backend/utils.cjs +328 -0
- package/dist/adapters/langchain/backend/utils.cjs.map +1 -0
- package/dist/adapters/langchain/backend/utils.d.cts +39 -0
- package/dist/adapters/langchain/backend/utils.d.ts +39 -0
- package/dist/adapters/langchain/backend/utils.js +324 -0
- package/dist/adapters/langchain/backend/utils.js.map +1 -0
- package/dist/adapters/langchain/tools.cjs.map +1 -1
- package/dist/adapters/langchain/tools.d.cts +2 -2
- package/dist/adapters/langchain/tools.d.ts +2 -2
- package/dist/adapters/langchain/tools.js.map +1 -1
- package/dist/adapters/mcp/serve/http_server.cjs.map +1 -1
- package/dist/adapters/mcp/serve/http_server.js.map +1 -1
- package/dist/adapters/mcp/serve/in_memory_store.cjs.map +1 -1
- package/dist/adapters/mcp/serve/in_memory_store.js.map +1 -1
- package/dist/adapters/mcp/serve/server.cjs.map +1 -1
- package/dist/adapters/mcp/serve/server.js.map +1 -1
- package/dist/adapters/minimax/backend/chat.cjs +25 -0
- package/dist/adapters/minimax/backend/chat.cjs.map +1 -0
- package/dist/adapters/minimax/backend/chat.d.cts +38 -0
- package/dist/adapters/minimax/backend/chat.d.ts +38 -0
- package/dist/adapters/minimax/backend/chat.js +23 -0
- package/dist/adapters/minimax/backend/chat.js.map +1 -0
- package/dist/adapters/minimax/backend/client.cjs +31 -0
- package/dist/adapters/minimax/backend/client.cjs.map +1 -0
- package/dist/adapters/minimax/backend/client.d.cts +17 -0
- package/dist/adapters/minimax/backend/client.d.ts +17 -0
- package/dist/adapters/minimax/backend/client.js +29 -0
- package/dist/adapters/minimax/backend/client.js.map +1 -0
- package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
- package/dist/adapters/ollama/backend/chat.d.cts +2 -2
- package/dist/adapters/ollama/backend/chat.d.ts +2 -2
- package/dist/adapters/ollama/backend/chat.js.map +1 -1
- package/dist/adapters/ollama/backend/client.cjs.map +1 -1
- package/dist/adapters/ollama/backend/client.js.map +1 -1
- package/dist/adapters/ollama/backend/embedding.cjs.map +1 -1
- package/dist/adapters/ollama/backend/embedding.d.cts +2 -2
- package/dist/adapters/ollama/backend/embedding.d.ts +2 -2
- package/dist/adapters/ollama/backend/embedding.js.map +1 -1
- package/dist/adapters/openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/openai/backend/chat.d.cts +2 -2
- package/dist/adapters/openai/backend/chat.d.ts +2 -2
- package/dist/adapters/openai/backend/chat.js.map +1 -1
- package/dist/adapters/openai/backend/client.cjs.map +1 -1
- package/dist/adapters/openai/backend/client.js.map +1 -1
- package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/openai/backend/embedding.d.cts +2 -2
- package/dist/adapters/openai/backend/embedding.d.ts +2 -2
- package/dist/adapters/openai/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
- package/dist/adapters/vercel/backend/chat.d.cts +2 -2
- package/dist/adapters/vercel/backend/chat.d.ts +2 -2
- package/dist/adapters/vercel/backend/chat.js.map +1 -1
- package/dist/adapters/vercel/backend/embedding.cjs.map +1 -1
- package/dist/adapters/vercel/backend/embedding.d.cts +2 -2
- package/dist/adapters/vercel/backend/embedding.d.ts +2 -2
- package/dist/adapters/vercel/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
- package/dist/adapters/vercel/backend/utils.d.cts +2 -2
- package/dist/adapters/vercel/backend/utils.d.ts +2 -2
- package/dist/adapters/vercel/backend/utils.js.map +1 -1
- package/dist/adapters/watsonx/backend/chat.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
- package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
- package/dist/adapters/watsonx/backend/chat.js +1 -1
- package/dist/adapters/watsonx/backend/chat.js.map +1 -1
- package/dist/adapters/watsonx/backend/client.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/client.js.map +1 -1
- package/dist/adapters/watsonx/backend/embedding.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/embedding.d.cts +2 -2
- package/dist/adapters/watsonx/backend/embedding.d.ts +2 -2
- package/dist/adapters/watsonx/backend/embedding.js.map +1 -1
- package/dist/adapters/xai/backend/chat.cjs.map +1 -1
- package/dist/adapters/xai/backend/chat.d.cts +2 -2
- package/dist/adapters/xai/backend/chat.d.ts +2 -2
- package/dist/adapters/xai/backend/chat.js.map +1 -1
- package/dist/adapters/xai/backend/client.cjs.map +1 -1
- package/dist/adapters/xai/backend/client.js.map +1 -1
- package/dist/{agent-BAVf6-xf.d.ts → agent-s3uhvAba.d.ts} +5 -5
- package/dist/{agent-DHO-oJQf.d.cts → agent-zfT__iq9.d.cts} +5 -5
- 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.map +1 -1
- package/dist/agents/experimental/replan/agent.cjs.map +1 -1
- package/dist/agents/experimental/replan/agent.d.cts +3 -3
- package/dist/agents/experimental/replan/agent.d.ts +3 -3
- package/dist/agents/experimental/replan/agent.js.map +1 -1
- package/dist/agents/experimental/replan/prompts.cjs.map +1 -1
- package/dist/agents/experimental/replan/prompts.d.cts +1 -1
- package/dist/agents/experimental/replan/prompts.d.ts +1 -1
- package/dist/agents/experimental/replan/prompts.js.map +1 -1
- package/dist/agents/experimental/streamlit/agent.cjs.map +1 -1
- package/dist/agents/experimental/streamlit/agent.d.cts +3 -3
- package/dist/agents/experimental/streamlit/agent.d.ts +3 -3
- package/dist/agents/experimental/streamlit/agent.js.map +1 -1
- package/dist/agents/experimental/streamlit/prompts.cjs +2 -2
- package/dist/agents/experimental/streamlit/prompts.cjs.map +1 -1
- package/dist/agents/experimental/streamlit/prompts.js +2 -2
- package/dist/agents/experimental/streamlit/prompts.js.map +1 -1
- package/dist/agents/react/agent.cjs +6 -6
- package/dist/agents/react/agent.cjs.map +1 -1
- package/dist/agents/react/agent.d.cts +4 -4
- package/dist/agents/react/agent.d.ts +4 -4
- package/dist/agents/react/agent.js.map +1 -1
- package/dist/agents/react/prompts.cjs.map +1 -1
- package/dist/agents/react/prompts.d.cts +1 -1
- package/dist/agents/react/prompts.d.ts +1 -1
- package/dist/agents/react/prompts.js.map +1 -1
- package/dist/agents/react/runners/base.cjs.map +1 -1
- package/dist/agents/react/runners/base.d.cts +4 -4
- package/dist/agents/react/runners/base.d.ts +4 -4
- package/dist/agents/react/runners/base.js.map +1 -1
- package/dist/agents/react/runners/deep-think/prompts.cjs.map +1 -1
- package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -1
- package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -1
- package/dist/agents/react/runners/deep-think/prompts.js.map +1 -1
- package/dist/agents/react/runners/deep-think/runner.cjs.map +1 -1
- package/dist/agents/react/runners/deep-think/runner.d.cts +5 -5
- package/dist/agents/react/runners/deep-think/runner.d.ts +5 -5
- package/dist/agents/react/runners/deep-think/runner.js.map +1 -1
- package/dist/agents/react/runners/default/runner.cjs.map +1 -1
- package/dist/agents/react/runners/default/runner.d.cts +5 -5
- package/dist/agents/react/runners/default/runner.d.ts +5 -5
- package/dist/agents/react/runners/default/runner.js.map +1 -1
- package/dist/agents/react/runners/default/runner.spec.cjs.map +1 -1
- package/dist/agents/react/runners/default/runner.spec.js.map +1 -1
- package/dist/agents/react/runners/granite/prompts.cjs.map +1 -1
- package/dist/agents/react/runners/granite/prompts.d.cts +1 -1
- package/dist/agents/react/runners/granite/prompts.d.ts +1 -1
- package/dist/agents/react/runners/granite/prompts.js.map +1 -1
- package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
- package/dist/agents/react/runners/granite/runner.d.cts +5 -5
- package/dist/agents/react/runners/granite/runner.d.ts +5 -5
- package/dist/agents/react/runners/granite/runner.js.map +1 -1
- package/dist/agents/react/types.d.cts +2 -2
- package/dist/agents/react/types.d.ts +2 -2
- package/dist/agents/requirement/agent.cjs.map +1 -1
- package/dist/agents/requirement/agent.d.cts +5 -5
- package/dist/agents/requirement/agent.d.ts +5 -5
- package/dist/agents/requirement/agent.js.map +1 -1
- package/dist/agents/requirement/prompts.d.cts +2 -2
- package/dist/agents/requirement/prompts.d.ts +2 -2
- package/dist/agents/requirement/requirements/conditional.cjs.map +1 -1
- package/dist/agents/requirement/requirements/conditional.d.cts +5 -5
- package/dist/agents/requirement/requirements/conditional.d.ts +5 -5
- package/dist/agents/requirement/requirements/conditional.js.map +1 -1
- package/dist/agents/requirement/requirements/requirement.cjs.map +1 -1
- package/dist/agents/requirement/requirements/requirement.d.cts +4 -4
- package/dist/agents/requirement/requirements/requirement.d.ts +4 -4
- package/dist/agents/requirement/requirements/requirement.js.map +1 -1
- package/dist/agents/requirement/requirements/utils.cjs.map +1 -1
- package/dist/agents/requirement/requirements/utils.d.cts +1 -1
- package/dist/agents/requirement/requirements/utils.d.ts +1 -1
- package/dist/agents/requirement/requirements/utils.js.map +1 -1
- package/dist/agents/requirement/runner.cjs.map +1 -1
- package/dist/agents/requirement/runner.d.cts +5 -5
- package/dist/agents/requirement/runner.d.ts +5 -5
- package/dist/agents/requirement/runner.js.map +1 -1
- package/dist/agents/requirement/types.d.cts +4 -4
- package/dist/agents/requirement/types.d.ts +4 -4
- package/dist/agents/requirement/utils/llm.cjs.map +1 -1
- package/dist/agents/requirement/utils/llm.d.cts +4 -4
- package/dist/agents/requirement/utils/llm.d.ts +4 -4
- package/dist/agents/requirement/utils/llm.js.map +1 -1
- package/dist/agents/requirement/utils/tool.cjs.map +1 -1
- package/dist/agents/requirement/utils/tool.d.cts +4 -4
- package/dist/agents/requirement/utils/tool.d.ts +4 -4
- package/dist/agents/requirement/utils/tool.js.map +1 -1
- package/dist/agents/requirement/utils/toolCallChecker.cjs.map +1 -1
- package/dist/agents/requirement/utils/toolCallChecker.js.map +1 -1
- package/dist/agents/toolCalling/agent.cjs.map +1 -1
- package/dist/agents/toolCalling/agent.d.cts +4 -4
- package/dist/agents/toolCalling/agent.d.ts +4 -4
- package/dist/agents/toolCalling/agent.js.map +1 -1
- package/dist/agents/toolCalling/prompts.cjs.map +1 -1
- package/dist/agents/toolCalling/prompts.js.map +1 -1
- package/dist/agents/toolCalling/types.d.cts +1 -1
- package/dist/agents/toolCalling/types.d.ts +1 -1
- package/dist/agents/types.d.cts +2 -2
- package/dist/agents/types.d.ts +2 -2
- package/dist/backend/backend.cjs.map +1 -1
- package/dist/backend/backend.d.cts +3 -3
- package/dist/backend/backend.d.ts +3 -3
- package/dist/backend/backend.js.map +1 -1
- package/dist/backend/chat.cjs.map +1 -1
- package/dist/backend/chat.d.cts +2 -2
- package/dist/backend/chat.d.ts +2 -2
- package/dist/backend/chat.js.map +1 -1
- package/dist/backend/client.cjs.map +1 -1
- package/dist/backend/client.js.map +1 -1
- package/dist/backend/constants.cjs +7 -0
- package/dist/backend/constants.cjs.map +1 -1
- package/dist/backend/constants.d.cts +5 -0
- package/dist/backend/constants.d.ts +5 -0
- package/dist/backend/constants.js +7 -0
- package/dist/backend/constants.js.map +1 -1
- package/dist/backend/core.d.cts +2 -2
- package/dist/backend/core.d.ts +2 -2
- package/dist/backend/embedding.cjs.map +1 -1
- package/dist/backend/embedding.d.cts +2 -2
- package/dist/backend/embedding.d.ts +2 -2
- package/dist/backend/embedding.js.map +1 -1
- package/dist/backend/errors.cjs.map +1 -1
- package/dist/backend/errors.d.cts +2 -2
- package/dist/backend/errors.d.ts +2 -2
- package/dist/backend/errors.js.map +1 -1
- package/dist/backend/message.cjs.map +1 -1
- package/dist/backend/message.js.map +1 -1
- package/dist/backend/utils.cjs.map +1 -1
- package/dist/backend/utils.d.cts +2 -2
- package/dist/backend/utils.d.ts +2 -2
- package/dist/backend/utils.js.map +1 -1
- package/dist/{base-BfhNzUYf.d.ts → base-BjzyQ8k6.d.ts} +2 -2
- package/dist/{base-BqzN2QwB.d.cts → base-s3ioVIE9.d.cts} +2 -2
- package/dist/cache/decoratorCache.cjs.map +1 -1
- package/dist/cache/decoratorCache.js.map +1 -1
- package/dist/cache/fileCache.cjs.map +1 -1
- package/dist/cache/fileCache.js.map +1 -1
- package/dist/cache/nullCache.cjs.map +1 -1
- package/dist/cache/nullCache.js.map +1 -1
- package/dist/cache/slidingCache.cjs.map +1 -1
- package/dist/cache/slidingCache.js.map +1 -1
- package/dist/cache/unconstrainedCache.cjs.map +1 -1
- package/dist/cache/unconstrainedCache.js.map +1 -1
- package/dist/{chat-DaqV3woF.d.cts → chat-C20nYj46.d.cts} +3 -3
- package/dist/{chat-DTxmaKP0.d.ts → chat-CfTNfR60.d.ts} +3 -3
- package/dist/context.cjs.map +1 -1
- package/dist/context.d.cts +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/context.js.map +1 -1
- package/dist/emitter/emitter.cjs.map +1 -1
- package/dist/emitter/emitter.d.cts +1 -1
- package/dist/emitter/emitter.d.ts +1 -1
- package/dist/emitter/emitter.js.map +1 -1
- package/dist/emitter/types.d.cts +1 -1
- package/dist/emitter/types.d.ts +1 -1
- package/dist/emitter/utils.cjs.map +1 -1
- package/dist/emitter/utils.js.map +1 -1
- package/dist/{emitter-UkIkNrek.d.cts → emitter-D4OcelZ9.d.cts} +2 -2
- package/dist/{emitter-CL56qab4.d.ts → emitter-kHxkUxco.d.ts} +2 -2
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/internals/env.cjs.map +1 -1
- package/dist/internals/env.js.map +1 -1
- package/dist/internals/fetcher.cjs.map +1 -1
- package/dist/internals/fetcher.d.cts +1 -1
- package/dist/internals/fetcher.d.ts +1 -1
- package/dist/internals/fetcher.js.map +1 -1
- package/dist/internals/helpers/array.cjs.map +1 -1
- package/dist/internals/helpers/array.js.map +1 -1
- package/dist/internals/helpers/cancellation.cjs.map +1 -1
- package/dist/internals/helpers/cancellation.js.map +1 -1
- package/dist/internals/helpers/counter.cjs.map +1 -1
- package/dist/internals/helpers/counter.js.map +1 -1
- package/dist/internals/helpers/general.cjs.map +1 -1
- package/dist/internals/helpers/general.js.map +1 -1
- package/dist/internals/helpers/hash.cjs.map +1 -1
- package/dist/internals/helpers/hash.js.map +1 -1
- package/dist/internals/helpers/map.cjs.map +1 -1
- package/dist/internals/helpers/map.js.map +1 -1
- package/dist/internals/helpers/math.cjs.map +1 -1
- package/dist/internals/helpers/math.js.map +1 -1
- package/dist/internals/helpers/object.cjs +7 -1
- package/dist/internals/helpers/object.cjs.map +1 -1
- package/dist/internals/helpers/object.js +7 -1
- package/dist/internals/helpers/object.js.map +1 -1
- package/dist/internals/helpers/paginate.cjs.map +1 -1
- package/dist/internals/helpers/paginate.js.map +1 -1
- package/dist/internals/helpers/promise.cjs.map +1 -1
- package/dist/internals/helpers/promise.js.map +1 -1
- package/dist/internals/helpers/prototype.cjs.map +1 -1
- package/dist/internals/helpers/prototype.js.map +1 -1
- package/dist/internals/helpers/retry.cjs.map +1 -1
- package/dist/internals/helpers/retry.js.map +1 -1
- package/dist/internals/helpers/retryable.cjs.map +1 -1
- package/dist/internals/helpers/retryable.js.map +1 -1
- package/dist/internals/helpers/schema.cjs.map +1 -1
- package/dist/internals/helpers/schema.d.cts +4 -4
- package/dist/internals/helpers/schema.d.ts +4 -4
- package/dist/internals/helpers/schema.js.map +1 -1
- package/dist/internals/helpers/stream.cjs.map +1 -1
- package/dist/internals/helpers/stream.js.map +1 -1
- package/dist/internals/helpers/string.cjs.map +1 -1
- package/dist/internals/helpers/string.js.map +1 -1
- package/dist/internals/helpers/weakRef.cjs.map +1 -1
- package/dist/internals/helpers/weakRef.js.map +1 -1
- package/dist/internals/serializable.cjs +3 -1
- package/dist/internals/serializable.cjs.map +1 -1
- package/dist/internals/serializable.d.cts +6 -0
- package/dist/internals/serializable.d.ts +6 -0
- package/dist/internals/serializable.js +3 -1
- package/dist/internals/serializable.js.map +1 -1
- package/dist/internals/types.cjs.map +1 -1
- package/dist/internals/types.js.map +1 -1
- package/dist/logger/logger.cjs.map +1 -1
- package/dist/logger/logger.d.cts +2 -2
- package/dist/logger/logger.d.ts +2 -2
- package/dist/logger/logger.js +2 -2
- package/dist/logger/logger.js.map +1 -1
- package/dist/logger/pretty.cjs.map +1 -1
- package/dist/logger/pretty.js.map +1 -1
- package/dist/memory/base.cjs.map +1 -1
- package/dist/memory/base.js.map +1 -1
- package/dist/memory/slidingMemory.cjs.map +1 -1
- package/dist/memory/slidingMemory.js.map +1 -1
- package/dist/memory/summarizeMemory.cjs.map +1 -1
- package/dist/memory/summarizeMemory.d.cts +2 -2
- package/dist/memory/summarizeMemory.d.ts +2 -2
- package/dist/memory/summarizeMemory.js.map +1 -1
- package/dist/memory/tokenMemory.cjs.map +1 -1
- package/dist/memory/tokenMemory.js.map +1 -1
- package/dist/memory/unconstrainedMemory.cjs.map +1 -1
- package/dist/memory/unconstrainedMemory.js.map +1 -1
- package/dist/middleware/streamToolCall.cjs.map +1 -1
- package/dist/middleware/streamToolCall.d.cts +2 -2
- package/dist/middleware/streamToolCall.d.ts +2 -2
- package/dist/middleware/streamToolCall.js.map +1 -1
- package/dist/middleware/trajectory.cjs.map +1 -1
- package/dist/middleware/trajectory.d.cts +2 -2
- package/dist/middleware/trajectory.d.ts +2 -2
- package/dist/middleware/trajectory.js.map +1 -1
- package/dist/parsers/errors.cjs.map +1 -1
- package/dist/parsers/errors.js.map +1 -1
- package/dist/parsers/field.cjs.map +1 -1
- package/dist/parsers/field.js.map +1 -1
- package/dist/parsers/linePrefix.cjs.map +1 -1
- package/dist/parsers/linePrefix.d.cts +1 -1
- package/dist/parsers/linePrefix.d.ts +1 -1
- package/dist/parsers/linePrefix.js.map +1 -1
- package/dist/serializer/error.cjs.map +1 -1
- package/dist/serializer/error.js.map +1 -1
- package/dist/serializer/serializer.cjs +16 -3
- package/dist/serializer/serializer.cjs.map +1 -1
- package/dist/serializer/serializer.d.cts +1 -1
- package/dist/serializer/serializer.d.ts +1 -1
- package/dist/serializer/serializer.js +16 -4
- package/dist/serializer/serializer.js.map +1 -1
- package/dist/serializer/utils.cjs.map +1 -1
- package/dist/serializer/utils.d.cts +1 -1
- package/dist/serializer/utils.d.ts +1 -1
- package/dist/serializer/utils.js.map +1 -1
- package/dist/{serializer-53t8gGQa.d.ts → serializer-BafOT48s.d.ts} +10 -4
- package/dist/{serializer-c51B2z6d.d.cts → serializer-CFDWYUco.d.cts} +10 -4
- package/dist/serve/server.cjs.map +1 -1
- package/dist/serve/server.js.map +1 -1
- package/dist/template.cjs.map +1 -1
- package/dist/template.js.map +1 -1
- package/dist/tools/arxiv.cjs.map +1 -1
- package/dist/tools/arxiv.d.cts +2 -2
- package/dist/tools/arxiv.d.ts +2 -2
- package/dist/tools/arxiv.js.map +1 -1
- package/dist/tools/base.cjs.map +1 -1
- package/dist/tools/base.d.cts +1 -1
- package/dist/tools/base.d.ts +1 -1
- package/dist/tools/base.js.map +1 -1
- package/dist/tools/calculator.cjs.map +1 -1
- package/dist/tools/calculator.d.cts +3 -3
- package/dist/tools/calculator.d.ts +3 -3
- package/dist/tools/calculator.js.map +1 -1
- package/dist/tools/custom.cjs.map +1 -1
- package/dist/tools/custom.d.cts +3 -3
- package/dist/tools/custom.d.ts +3 -3
- package/dist/tools/custom.js.map +1 -1
- package/dist/tools/database/elasticsearch.cjs.map +1 -1
- package/dist/tools/database/elasticsearch.d.cts +3 -3
- package/dist/tools/database/elasticsearch.d.ts +3 -3
- package/dist/tools/database/elasticsearch.js.map +1 -1
- package/dist/tools/database/metadata.cjs.map +1 -1
- package/dist/tools/database/metadata.js.map +1 -1
- package/dist/tools/database/milvus.cjs.map +1 -1
- package/dist/tools/database/milvus.d.cts +3 -3
- package/dist/tools/database/milvus.d.ts +3 -3
- package/dist/tools/database/milvus.js.map +1 -1
- package/dist/tools/database/qdrant.cjs.map +1 -1
- package/dist/tools/database/qdrant.d.cts +2 -2
- package/dist/tools/database/qdrant.d.ts +2 -2
- package/dist/tools/database/qdrant.js.map +1 -1
- package/dist/tools/database/sql.cjs.map +1 -1
- package/dist/tools/database/sql.d.cts +2 -2
- package/dist/tools/database/sql.d.ts +2 -2
- package/dist/tools/database/sql.js.map +1 -1
- package/dist/tools/handoff.cjs.map +1 -1
- package/dist/tools/handoff.d.cts +2 -2
- package/dist/tools/handoff.d.ts +2 -2
- package/dist/tools/handoff.js.map +1 -1
- package/dist/tools/llm.cjs +1 -1
- package/dist/tools/llm.cjs.map +1 -1
- package/dist/tools/llm.d.cts +3 -3
- package/dist/tools/llm.d.ts +3 -3
- package/dist/tools/llm.js +1 -1
- package/dist/tools/llm.js.map +1 -1
- package/dist/tools/mcp.cjs.map +1 -1
- package/dist/tools/mcp.d.cts +2 -2
- package/dist/tools/mcp.d.ts +2 -2
- package/dist/tools/mcp.js.map +1 -1
- package/dist/tools/openapi.cjs.map +1 -1
- package/dist/tools/openapi.d.cts +2 -2
- package/dist/tools/openapi.d.ts +2 -2
- package/dist/tools/openapi.js.map +1 -1
- package/dist/tools/python/output.cjs.map +1 -1
- package/dist/tools/python/output.d.cts +1 -1
- package/dist/tools/python/output.d.ts +1 -1
- package/dist/tools/python/output.js.map +1 -1
- package/dist/tools/python/python.cjs +5 -2
- package/dist/tools/python/python.cjs.map +1 -1
- package/dist/tools/python/python.d.cts +3 -3
- package/dist/tools/python/python.d.ts +3 -3
- package/dist/tools/python/python.js +5 -2
- package/dist/tools/python/python.js.map +1 -1
- package/dist/tools/python/storage.cjs.map +1 -1
- package/dist/tools/python/storage.js.map +1 -1
- package/dist/tools/search/base.cjs.map +1 -1
- package/dist/tools/search/base.d.cts +2 -2
- package/dist/tools/search/base.d.ts +2 -2
- package/dist/tools/search/base.js.map +1 -1
- package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.cts +2 -2
- package/dist/tools/search/duckDuckGoSearch.d.ts +2 -2
- package/dist/tools/search/duckDuckGoSearch.js.map +1 -1
- package/dist/tools/search/googleSearch.cjs.map +1 -1
- package/dist/tools/search/googleSearch.d.cts +2 -2
- package/dist/tools/search/googleSearch.d.ts +2 -2
- package/dist/tools/search/googleSearch.js.map +1 -1
- package/dist/tools/search/searXNGSearch.cjs.map +1 -1
- package/dist/tools/search/searXNGSearch.d.cts +2 -2
- package/dist/tools/search/searXNGSearch.d.ts +2 -2
- package/dist/tools/search/searXNGSearch.js.map +1 -1
- package/dist/tools/search/wikipedia.cjs.map +1 -1
- package/dist/tools/search/wikipedia.d.cts +3 -3
- package/dist/tools/search/wikipedia.d.ts +3 -3
- package/dist/tools/search/wikipedia.js.map +1 -1
- package/dist/tools/similarity.cjs.map +1 -1
- package/dist/tools/similarity.d.cts +2 -2
- package/dist/tools/similarity.d.ts +2 -2
- package/dist/tools/similarity.js.map +1 -1
- package/dist/tools/think.cjs.map +1 -1
- package/dist/tools/think.d.cts +2 -2
- package/dist/tools/think.d.ts +2 -2
- package/dist/tools/think.js.map +1 -1
- package/dist/tools/weather/openMeteo.cjs.map +1 -1
- package/dist/tools/weather/openMeteo.d.cts +2 -2
- package/dist/tools/weather/openMeteo.d.ts +2 -2
- package/dist/tools/weather/openMeteo.js.map +1 -1
- package/dist/tools/web/webCrawler.cjs.map +1 -1
- package/dist/tools/web/webCrawler.d.cts +2 -2
- package/dist/tools/web/webCrawler.d.ts +2 -2
- package/dist/tools/web/webCrawler.js.map +1 -1
- package/dist/{types-YoNQSxQH.d.cts → types-BNsa3W7Z.d.cts} +4 -4
- package/dist/{types-YT-WdK3m.d.ts → types-DYtzF6ya.d.ts} +4 -4
- package/dist/version.cjs +1 -1
- package/dist/version.js +1 -1
- package/dist/workflows/agent.cjs.map +1 -1
- package/dist/workflows/agent.d.cts +40 -40
- package/dist/workflows/agent.d.ts +40 -40
- package/dist/workflows/agent.js.map +1 -1
- package/dist/workflows/workflow.cjs.map +1 -1
- package/dist/workflows/workflow.d.cts +1 -1
- package/dist/workflows/workflow.d.ts +1 -1
- package/dist/workflows/workflow.js.map +1 -1
- package/package.json +38 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/client.ts"],"names":["BackendClient","Serializable","instance","settings","create","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","ensure"],"mappings":";;;;;;;AAQO,MAAeA,sBAA4BC,6BAAAA,CAAAA;EARlD;;;AASkBC,EAAAA,QAAAA;AACGC,EAAAA,QAAAA;AAEnB,EAAA,WAAA,CAAYA,QAAAA,EAAa;AACvB,IAAA,KAAA,EAAK;AACL,IAAA,IAAA,CAAKA,QAAAA,GAAWA,YAAa,EAAC;AAC9B,IAAA,IAAA,CAAKD,QAAAA,GAAW,KAAKE,MAAAA,EAAM;AAC7B;EAIAC,cAAAA,GAAiB;AACf,IAAA,OAAO;MACLF,QAAAA,EAAUG,qBAAAA,CAAY,KAAKH,QAAQ;AACrC,KAAA;AACF;AAEAI,EAAAA,YAAAA,CAAaC,QAAAA,EAAkD;AAC7DC,IAAAA,MAAAA,CAAOC,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACpBC,IAAAA,MAAAA,CAAOC,OAAO,IAAA,EAAM;AAAER,MAAAA,QAAAA,EAAU,KAAKE,MAAAA;KAAS,CAAA;AAChD;AAEA,EAAA,OAAOO,OAELR,QAAAA,EACG;AACH,IAAA,IAAIA,QAAAA,IAAYA,oBAAoB,IAAA,EAAM;AACxC,MAAA,OAAOA,QAAAA;AACT;AACA,IAAA,OAAO,IAAI,KAAKA,QAAAA,CAAAA;AAClB;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport abstract class BackendClient<P, T> extends Serializable {\n public readonly instance: T;\n protected readonly settings: P;\n\n constructor(settings: P) {\n super();\n this.settings = settings ?? ({} as P);\n this.instance = this.create();\n }\n\n protected abstract create(): T;\n\n createSnapshot() {\n return {\n settings: shallowCopy(this.settings),\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n Object.assign(this, { instance: this.create() });\n }\n\n static ensure<P2, T2, R extends BackendClient<P2, T2>>(\n this: new (settings: P2) => R,\n settings?: P2 | R,\n ): R {\n if (settings && settings instanceof this) {\n return settings;\n }\n return new this(settings as P2);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/client.ts"],"names":["BackendClient","Serializable","instance","settings","create","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","ensure"],"mappings":";;;;;;;AAQO,MAAeA,sBAA4BC,6BAAAA,CAAAA;EARlD;;;AASkBC,EAAAA,QAAAA;AACGC,EAAAA,QAAAA;AAEnB,EAAA,WAAA,CAAYA,QAAAA,EAAa;AACvB,IAAA,KAAA,EAAK;AACL,IAAA,IAAA,CAAKA,QAAAA,GAAWA,YAAa,EAAC;AAC9B,IAAA,IAAA,CAAKD,QAAAA,GAAW,KAAKE,MAAAA,EAAM;AAC7B,EAAA;EAIAC,cAAAA,GAAiB;AACf,IAAA,OAAO;MACLF,QAAAA,EAAUG,qBAAAA,CAAY,KAAKH,QAAQ;AACrC,KAAA;AACF,EAAA;AAEAI,EAAAA,YAAAA,CAAaC,QAAAA,EAAkD;AAC7DC,IAAAA,MAAAA,CAAOC,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACpBC,IAAAA,MAAAA,CAAOC,OAAO,IAAA,EAAM;AAAER,MAAAA,QAAAA,EAAU,KAAKE,MAAAA;KAAS,CAAA;AAChD,EAAA;AAEA,EAAA,OAAOO,OAELR,QAAAA,EACG;AACH,IAAA,IAAIA,QAAAA,IAAYA,oBAAoB,IAAA,EAAM;AACxC,MAAA,OAAOA,QAAAA;AACT,IAAA;AACA,IAAA,OAAO,IAAI,KAAKA,QAAAA,CAAAA;AAClB,EAAA;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport abstract class BackendClient<P, T> extends Serializable {\n public readonly instance: T;\n protected readonly settings: P;\n\n constructor(settings: P) {\n super();\n this.settings = settings ?? ({} as P);\n this.instance = this.create();\n }\n\n protected abstract create(): T;\n\n createSnapshot() {\n return {\n settings: shallowCopy(this.settings),\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n Object.assign(this, { instance: this.create() });\n }\n\n static ensure<P2, T2, R extends BackendClient<P2, T2>>(\n this: new (settings: P2) => R,\n settings?: P2 | R,\n ): R {\n if (settings && settings instanceof this) {\n return settings;\n }\n return new this(settings as P2);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/client.ts"],"names":["BackendClient","Serializable","instance","settings","create","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","ensure"],"mappings":";;;;;AAQO,MAAeA,sBAA4BC,YAAAA,CAAAA;EARlD;;;AASkBC,EAAAA,QAAAA;AACGC,EAAAA,QAAAA;AAEnB,EAAA,WAAA,CAAYA,QAAAA,EAAa;AACvB,IAAA,KAAA,EAAK;AACL,IAAA,IAAA,CAAKA,QAAAA,GAAWA,YAAa,EAAC;AAC9B,IAAA,IAAA,CAAKD,QAAAA,GAAW,KAAKE,MAAAA,EAAM;AAC7B;EAIAC,cAAAA,GAAiB;AACf,IAAA,OAAO;MACLF,QAAAA,EAAUG,WAAAA,CAAY,KAAKH,QAAQ;AACrC,KAAA;AACF;AAEAI,EAAAA,YAAAA,CAAaC,QAAAA,EAAkD;AAC7DC,IAAAA,MAAAA,CAAOC,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACpBC,IAAAA,MAAAA,CAAOC,OAAO,IAAA,EAAM;AAAER,MAAAA,QAAAA,EAAU,KAAKE,MAAAA;KAAS,CAAA;AAChD;AAEA,EAAA,OAAOO,OAELR,QAAAA,EACG;AACH,IAAA,IAAIA,QAAAA,IAAYA,oBAAoB,IAAA,EAAM;AACxC,MAAA,OAAOA,QAAAA;AACT;AACA,IAAA,OAAO,IAAI,KAAKA,QAAAA,CAAAA;AAClB;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport abstract class BackendClient<P, T> extends Serializable {\n public readonly instance: T;\n protected readonly settings: P;\n\n constructor(settings: P) {\n super();\n this.settings = settings ?? ({} as P);\n this.instance = this.create();\n }\n\n protected abstract create(): T;\n\n createSnapshot() {\n return {\n settings: shallowCopy(this.settings),\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n Object.assign(this, { instance: this.create() });\n }\n\n static ensure<P2, T2, R extends BackendClient<P2, T2>>(\n this: new (settings: P2) => R,\n settings?: P2 | R,\n ): R {\n if (settings && settings instanceof this) {\n return settings;\n }\n return new this(settings as P2);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/client.ts"],"names":["BackendClient","Serializable","instance","settings","create","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","ensure"],"mappings":";;;;;AAQO,MAAeA,sBAA4BC,YAAAA,CAAAA;EARlD;;;AASkBC,EAAAA,QAAAA;AACGC,EAAAA,QAAAA;AAEnB,EAAA,WAAA,CAAYA,QAAAA,EAAa;AACvB,IAAA,KAAA,EAAK;AACL,IAAA,IAAA,CAAKA,QAAAA,GAAWA,YAAa,EAAC;AAC9B,IAAA,IAAA,CAAKD,QAAAA,GAAW,KAAKE,MAAAA,EAAM;AAC7B,EAAA;EAIAC,cAAAA,GAAiB;AACf,IAAA,OAAO;MACLF,QAAAA,EAAUG,WAAAA,CAAY,KAAKH,QAAQ;AACrC,KAAA;AACF,EAAA;AAEAI,EAAAA,YAAAA,CAAaC,QAAAA,EAAkD;AAC7DC,IAAAA,MAAAA,CAAOC,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACpBC,IAAAA,MAAAA,CAAOC,OAAO,IAAA,EAAM;AAAER,MAAAA,QAAAA,EAAU,KAAKE,MAAAA;KAAS,CAAA;AAChD,EAAA;AAEA,EAAA,OAAOO,OAELR,QAAAA,EACG;AACH,IAAA,IAAIA,QAAAA,IAAYA,oBAAoB,IAAA,EAAM;AACxC,MAAA,OAAOA,QAAAA;AACT,IAAA;AACA,IAAA,OAAO,IAAI,KAAKA,QAAAA,CAAAA;AAClB,EAAA;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport abstract class BackendClient<P, T> extends Serializable {\n public readonly instance: T;\n protected readonly settings: P;\n\n constructor(settings: P) {\n super();\n this.settings = settings ?? ({} as P);\n this.instance = this.create();\n }\n\n protected abstract create(): T;\n\n createSnapshot() {\n return {\n settings: shallowCopy(this.settings),\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n Object.assign(this, { instance: this.create() });\n }\n\n static ensure<P2, T2, R extends BackendClient<P2, T2>>(\n this: new (settings: P2) => R,\n settings?: P2 | R,\n ): R {\n if (settings && settings instanceof this) {\n return settings;\n }\n return new this(settings as P2);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/constants.ts"],"names":["BackendProviders","OpenAI","name","module","aliases","Azure","Watsonx","Ollama","GoogleVertex","Bedrock","Groq","Xai","Dummy","Anthropic"],"mappings":";;AAKO,MAAMA,gBAAAA,GAAmB;EAC9BC,MAAAA,EAAQ;IAAEC,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;IAAUC,OAAAA,EAAS;AAAC,MAAA;;AAAsB,GAAA;EAC5EC,KAAAA,EAAO;IACLH,IAAAA,EAAM,OAAA;IACNC,MAAAA,EAAQ,OAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,WAAA;AAAa,MAAA;;AACzB,GAAA;EACAE,OAAAA,EAAS;IACPJ,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,SAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,SAAA;AAAW,MAAA;;AACvB,GAAA;EACAG,MAAAA,EAAQ;IAAEL,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;AAAUC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACpEI,YAAAA,EAAc;IACZN,IAAAA,EAAM,cAAA;IACNC,MAAAA,EAAQ,eAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAK,OAAAA,EAAS;IACPP,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,gBAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAM,IAAAA,EAAM;IAAER,IAAAA,EAAM,MAAA;IAAQC,MAAAA,EAAQ,MAAA;AAAQC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EAC9DO,GAAAA,EAAK;IAAET,IAAAA,EAAM,KAAA;IAAOC,MAAAA,EAAQ,KAAA;IAAOC,OAAAA,EAAS;AAAC,MAAA,MAAA;AAAQ,MAAA;;AAAmB,GAAA;EACxEQ,KAAAA,EAAO;IAAEV,IAAAA,EAAM,OAAA;IAASC,MAAAA,EAAQ,OAAA;AAASC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACjES,SAAAA,EAAW;IACTX,IAAAA,EAAM,WAAA;IACNC,MAAAA,EAAQ,WAAA;AACRC,IAAAA,OAAAA,EAAS;AACX;AACF","file":"constants.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const BackendProviders = {\n OpenAI: { name: \"OpenAI\", module: \"openai\", aliases: [\"openai\"] as string[] },\n Azure: {\n name: \"Azure\",\n module: \"azure\",\n aliases: [\"microsoft\", \"microsoft-azure\"] as string[],\n },\n Watsonx: {\n name: \"Watsonx\",\n module: \"watsonx\",\n aliases: [\"watsonx\", \"ibm\"] as string[],\n },\n Ollama: { name: \"Ollama\", module: \"ollama\", aliases: [] as string[] },\n GoogleVertex: {\n name: \"GoogleVertex\",\n module: \"google-vertex\",\n aliases: [\"google\", \"vertex\"] as string[],\n },\n Bedrock: {\n name: \"Bedrock\",\n module: \"amazon-bedrock\",\n aliases: [\"amazon\", \"bedrock\"] as string[],\n },\n Groq: { name: \"Groq\", module: \"groq\", aliases: [] as string[] },\n Xai: { name: \"XAI\", module: \"xai\", aliases: [\"grok\", \"xai\"] as string[] },\n Dummy: { name: \"Dummy\", module: \"dummy\", aliases: [] as string[] },\n Anthropic: {\n name: \"Anthropic\",\n module: \"anthropic\",\n aliases: [] as string[],\n },\n} as const;\n\nexport type ProviderName = (typeof BackendProviders)[keyof typeof BackendProviders][\"module\"];\nexport type ProviderHumanName = (typeof BackendProviders)[keyof typeof BackendProviders][\"name\"];\nexport type ProviderDef = (typeof BackendProviders)[keyof typeof BackendProviders];\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/constants.ts"],"names":["BackendProviders","OpenAI","name","module","aliases","Azure","Watsonx","Ollama","GoogleVertex","Bedrock","Groq","Xai","Dummy","Anthropic","MiniMax"],"mappings":";;AAKO,MAAMA,gBAAAA,GAAmB;EAC9BC,MAAAA,EAAQ;IAAEC,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;IAAUC,OAAAA,EAAS;AAAC,MAAA;;AAAsB,GAAA;EAC5EC,KAAAA,EAAO;IACLH,IAAAA,EAAM,OAAA;IACNC,MAAAA,EAAQ,OAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,WAAA;AAAa,MAAA;;AACzB,GAAA;EACAE,OAAAA,EAAS;IACPJ,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,SAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,SAAA;AAAW,MAAA;;AACvB,GAAA;EACAG,MAAAA,EAAQ;IAAEL,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;AAAUC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACpEI,YAAAA,EAAc;IACZN,IAAAA,EAAM,cAAA;IACNC,MAAAA,EAAQ,eAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAK,OAAAA,EAAS;IACPP,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,gBAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAM,IAAAA,EAAM;IAAER,IAAAA,EAAM,MAAA;IAAQC,MAAAA,EAAQ,MAAA;AAAQC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EAC9DO,GAAAA,EAAK;IAAET,IAAAA,EAAM,KAAA;IAAOC,MAAAA,EAAQ,KAAA;IAAOC,OAAAA,EAAS;AAAC,MAAA,MAAA;AAAQ,MAAA;;AAAmB,GAAA;EACxEQ,KAAAA,EAAO;IAAEV,IAAAA,EAAM,OAAA;IAASC,MAAAA,EAAQ,OAAA;AAASC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACjES,SAAAA,EAAW;IACTX,IAAAA,EAAM,WAAA;IACNC,MAAAA,EAAQ,WAAA;AACRC,IAAAA,OAAAA,EAAS;AACX,GAAA;EACAU,OAAAA,EAAS;IACPZ,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,SAAA;IACRC,OAAAA,EAAS;AAAC,MAAA;;AACZ;AACF","file":"constants.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const BackendProviders = {\n OpenAI: { name: \"OpenAI\", module: \"openai\", aliases: [\"openai\"] as string[] },\n Azure: {\n name: \"Azure\",\n module: \"azure\",\n aliases: [\"microsoft\", \"microsoft-azure\"] as string[],\n },\n Watsonx: {\n name: \"Watsonx\",\n module: \"watsonx\",\n aliases: [\"watsonx\", \"ibm\"] as string[],\n },\n Ollama: { name: \"Ollama\", module: \"ollama\", aliases: [] as string[] },\n GoogleVertex: {\n name: \"GoogleVertex\",\n module: \"google-vertex\",\n aliases: [\"google\", \"vertex\"] as string[],\n },\n Bedrock: {\n name: \"Bedrock\",\n module: \"amazon-bedrock\",\n aliases: [\"amazon\", \"bedrock\"] as string[],\n },\n Groq: { name: \"Groq\", module: \"groq\", aliases: [] as string[] },\n Xai: { name: \"XAI\", module: \"xai\", aliases: [\"grok\", \"xai\"] as string[] },\n Dummy: { name: \"Dummy\", module: \"dummy\", aliases: [] as string[] },\n Anthropic: {\n name: \"Anthropic\",\n module: \"anthropic\",\n aliases: [] as string[],\n },\n MiniMax: {\n name: \"MiniMax\",\n module: \"minimax\",\n aliases: [\"minimax\"] as string[],\n },\n} as const;\n\nexport type ProviderName = (typeof BackendProviders)[keyof typeof BackendProviders][\"module\"];\nexport type ProviderHumanName = (typeof BackendProviders)[keyof typeof BackendProviders][\"name\"];\nexport type ProviderDef = (typeof BackendProviders)[keyof typeof BackendProviders];\n"]}
|
|
@@ -53,6 +53,11 @@ declare const BackendProviders: {
|
|
|
53
53
|
readonly module: "anthropic";
|
|
54
54
|
readonly aliases: string[];
|
|
55
55
|
};
|
|
56
|
+
readonly MiniMax: {
|
|
57
|
+
readonly name: "MiniMax";
|
|
58
|
+
readonly module: "minimax";
|
|
59
|
+
readonly aliases: string[];
|
|
60
|
+
};
|
|
56
61
|
};
|
|
57
62
|
type ProviderName = (typeof BackendProviders)[keyof typeof BackendProviders]["module"];
|
|
58
63
|
type ProviderHumanName = (typeof BackendProviders)[keyof typeof BackendProviders]["name"];
|
|
@@ -53,6 +53,11 @@ declare const BackendProviders: {
|
|
|
53
53
|
readonly module: "anthropic";
|
|
54
54
|
readonly aliases: string[];
|
|
55
55
|
};
|
|
56
|
+
readonly MiniMax: {
|
|
57
|
+
readonly name: "MiniMax";
|
|
58
|
+
readonly module: "minimax";
|
|
59
|
+
readonly aliases: string[];
|
|
60
|
+
};
|
|
56
61
|
};
|
|
57
62
|
type ProviderName = (typeof BackendProviders)[keyof typeof BackendProviders]["module"];
|
|
58
63
|
type ProviderHumanName = (typeof BackendProviders)[keyof typeof BackendProviders]["name"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/constants.ts"],"names":["BackendProviders","OpenAI","name","module","aliases","Azure","Watsonx","Ollama","GoogleVertex","Bedrock","Groq","Xai","Dummy","Anthropic"],"mappings":"AAKO,MAAMA,gBAAAA,GAAmB;EAC9BC,MAAAA,EAAQ;IAAEC,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;IAAUC,OAAAA,EAAS;AAAC,MAAA;;AAAsB,GAAA;EAC5EC,KAAAA,EAAO;IACLH,IAAAA,EAAM,OAAA;IACNC,MAAAA,EAAQ,OAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,WAAA;AAAa,MAAA;;AACzB,GAAA;EACAE,OAAAA,EAAS;IACPJ,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,SAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,SAAA;AAAW,MAAA;;AACvB,GAAA;EACAG,MAAAA,EAAQ;IAAEL,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;AAAUC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACpEI,YAAAA,EAAc;IACZN,IAAAA,EAAM,cAAA;IACNC,MAAAA,EAAQ,eAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAK,OAAAA,EAAS;IACPP,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,gBAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAM,IAAAA,EAAM;IAAER,IAAAA,EAAM,MAAA;IAAQC,MAAAA,EAAQ,MAAA;AAAQC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EAC9DO,GAAAA,EAAK;IAAET,IAAAA,EAAM,KAAA;IAAOC,MAAAA,EAAQ,KAAA;IAAOC,OAAAA,EAAS;AAAC,MAAA,MAAA;AAAQ,MAAA;;AAAmB,GAAA;EACxEQ,KAAAA,EAAO;IAAEV,IAAAA,EAAM,OAAA;IAASC,MAAAA,EAAQ,OAAA;AAASC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACjES,SAAAA,EAAW;IACTX,IAAAA,EAAM,WAAA;IACNC,MAAAA,EAAQ,WAAA;AACRC,IAAAA,OAAAA,EAAS;AACX;AACF","file":"constants.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const BackendProviders = {\n OpenAI: { name: \"OpenAI\", module: \"openai\", aliases: [\"openai\"] as string[] },\n Azure: {\n name: \"Azure\",\n module: \"azure\",\n aliases: [\"microsoft\", \"microsoft-azure\"] as string[],\n },\n Watsonx: {\n name: \"Watsonx\",\n module: \"watsonx\",\n aliases: [\"watsonx\", \"ibm\"] as string[],\n },\n Ollama: { name: \"Ollama\", module: \"ollama\", aliases: [] as string[] },\n GoogleVertex: {\n name: \"GoogleVertex\",\n module: \"google-vertex\",\n aliases: [\"google\", \"vertex\"] as string[],\n },\n Bedrock: {\n name: \"Bedrock\",\n module: \"amazon-bedrock\",\n aliases: [\"amazon\", \"bedrock\"] as string[],\n },\n Groq: { name: \"Groq\", module: \"groq\", aliases: [] as string[] },\n Xai: { name: \"XAI\", module: \"xai\", aliases: [\"grok\", \"xai\"] as string[] },\n Dummy: { name: \"Dummy\", module: \"dummy\", aliases: [] as string[] },\n Anthropic: {\n name: \"Anthropic\",\n module: \"anthropic\",\n aliases: [] as string[],\n },\n} as const;\n\nexport type ProviderName = (typeof BackendProviders)[keyof typeof BackendProviders][\"module\"];\nexport type ProviderHumanName = (typeof BackendProviders)[keyof typeof BackendProviders][\"name\"];\nexport type ProviderDef = (typeof BackendProviders)[keyof typeof BackendProviders];\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/constants.ts"],"names":["BackendProviders","OpenAI","name","module","aliases","Azure","Watsonx","Ollama","GoogleVertex","Bedrock","Groq","Xai","Dummy","Anthropic","MiniMax"],"mappings":"AAKO,MAAMA,gBAAAA,GAAmB;EAC9BC,MAAAA,EAAQ;IAAEC,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;IAAUC,OAAAA,EAAS;AAAC,MAAA;;AAAsB,GAAA;EAC5EC,KAAAA,EAAO;IACLH,IAAAA,EAAM,OAAA;IACNC,MAAAA,EAAQ,OAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,WAAA;AAAa,MAAA;;AACzB,GAAA;EACAE,OAAAA,EAAS;IACPJ,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,SAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,SAAA;AAAW,MAAA;;AACvB,GAAA;EACAG,MAAAA,EAAQ;IAAEL,IAAAA,EAAM,QAAA;IAAUC,MAAAA,EAAQ,QAAA;AAAUC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACpEI,YAAAA,EAAc;IACZN,IAAAA,EAAM,cAAA;IACNC,MAAAA,EAAQ,eAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAK,OAAAA,EAAS;IACPP,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,gBAAA;IACRC,OAAAA,EAAS;AAAC,MAAA,QAAA;AAAU,MAAA;;AACtB,GAAA;EACAM,IAAAA,EAAM;IAAER,IAAAA,EAAM,MAAA;IAAQC,MAAAA,EAAQ,MAAA;AAAQC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EAC9DO,GAAAA,EAAK;IAAET,IAAAA,EAAM,KAAA;IAAOC,MAAAA,EAAQ,KAAA;IAAOC,OAAAA,EAAS;AAAC,MAAA,MAAA;AAAQ,MAAA;;AAAmB,GAAA;EACxEQ,KAAAA,EAAO;IAAEV,IAAAA,EAAM,OAAA;IAASC,MAAAA,EAAQ,OAAA;AAASC,IAAAA,OAAAA,EAAS;AAAe,GAAA;EACjES,SAAAA,EAAW;IACTX,IAAAA,EAAM,WAAA;IACNC,MAAAA,EAAQ,WAAA;AACRC,IAAAA,OAAAA,EAAS;AACX,GAAA;EACAU,OAAAA,EAAS;IACPZ,IAAAA,EAAM,SAAA;IACNC,MAAAA,EAAQ,SAAA;IACRC,OAAAA,EAAS;AAAC,MAAA;;AACZ;AACF","file":"constants.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const BackendProviders = {\n OpenAI: { name: \"OpenAI\", module: \"openai\", aliases: [\"openai\"] as string[] },\n Azure: {\n name: \"Azure\",\n module: \"azure\",\n aliases: [\"microsoft\", \"microsoft-azure\"] as string[],\n },\n Watsonx: {\n name: \"Watsonx\",\n module: \"watsonx\",\n aliases: [\"watsonx\", \"ibm\"] as string[],\n },\n Ollama: { name: \"Ollama\", module: \"ollama\", aliases: [] as string[] },\n GoogleVertex: {\n name: \"GoogleVertex\",\n module: \"google-vertex\",\n aliases: [\"google\", \"vertex\"] as string[],\n },\n Bedrock: {\n name: \"Bedrock\",\n module: \"amazon-bedrock\",\n aliases: [\"amazon\", \"bedrock\"] as string[],\n },\n Groq: { name: \"Groq\", module: \"groq\", aliases: [] as string[] },\n Xai: { name: \"XAI\", module: \"xai\", aliases: [\"grok\", \"xai\"] as string[] },\n Dummy: { name: \"Dummy\", module: \"dummy\", aliases: [] as string[] },\n Anthropic: {\n name: \"Anthropic\",\n module: \"anthropic\",\n aliases: [] as string[],\n },\n MiniMax: {\n name: \"MiniMax\",\n module: \"minimax\",\n aliases: [\"minimax\"] as string[],\n },\n} as const;\n\nexport type ProviderName = (typeof BackendProviders)[keyof typeof BackendProviders][\"module\"];\nexport type ProviderHumanName = (typeof BackendProviders)[keyof typeof BackendProviders][\"name\"];\nexport type ProviderDef = (typeof BackendProviders)[keyof typeof BackendProviders];\n"]}
|
package/dist/backend/core.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Backend } from './backend.cjs';
|
|
2
|
-
export {
|
|
2
|
+
export { C as ChatConfig, a as ChatModel, b as ChatModelCache, c as ChatModelEmitter, d as ChatModelEvents, e as ChatModelFinishReason, f as ChatModelInput, g as ChatModelObjectInput, h as ChatModelObjectOutput, i as ChatModelOutput, j as ChatModelParameters, k as ChatModelToolChoice, l as ChatModelToolChoiceSupport, m as ChatModelUsage, n as ConfigFn } from '../chat-C20nYj46.cjs';
|
|
3
3
|
export { EmbeddingModel, EmbeddingModelEmitter, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from './embedding.cjs';
|
|
4
4
|
export { AssistantMessage, CustomMessage, Message, MessageContentPart, MessageInput, MessageMeta, MessageRole, Role, SystemMessage, ToolMessage, UserMessage } from './message.cjs';
|
|
5
5
|
export { BackendError, ChatModelError, ChatModelToolCallError, ChatModelToolCallErrorInput, EmbeddingModelError, EmptyChatModelResponseError } from './errors.cjs';
|
|
@@ -8,7 +8,7 @@ import '../internals/types.cjs';
|
|
|
8
8
|
import '../internals/helpers/guards.cjs';
|
|
9
9
|
import './constants.cjs';
|
|
10
10
|
import '../context.cjs';
|
|
11
|
-
import '../emitter-
|
|
11
|
+
import '../emitter-D4OcelZ9.cjs';
|
|
12
12
|
import '../internals/helpers/promise.cjs';
|
|
13
13
|
import '../errors.cjs';
|
|
14
14
|
import 'promise-based-task';
|
package/dist/backend/core.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Backend } from './backend.js';
|
|
2
|
-
export {
|
|
2
|
+
export { C as ChatConfig, a as ChatModel, b as ChatModelCache, c as ChatModelEmitter, d as ChatModelEvents, e as ChatModelFinishReason, f as ChatModelInput, g as ChatModelObjectInput, h as ChatModelObjectOutput, i as ChatModelOutput, j as ChatModelParameters, k as ChatModelToolChoice, l as ChatModelToolChoiceSupport, m as ChatModelUsage, n as ConfigFn } from '../chat-CfTNfR60.js';
|
|
3
3
|
export { EmbeddingModel, EmbeddingModelEmitter, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from './embedding.js';
|
|
4
4
|
export { AssistantMessage, CustomMessage, Message, MessageContentPart, MessageInput, MessageMeta, MessageRole, Role, SystemMessage, ToolMessage, UserMessage } from './message.js';
|
|
5
5
|
export { BackendError, ChatModelError, ChatModelToolCallError, ChatModelToolCallErrorInput, EmbeddingModelError, EmptyChatModelResponseError } from './errors.js';
|
|
@@ -8,7 +8,7 @@ import '../internals/types.js';
|
|
|
8
8
|
import '../internals/helpers/guards.js';
|
|
9
9
|
import './constants.js';
|
|
10
10
|
import '../context.js';
|
|
11
|
-
import '../emitter-
|
|
11
|
+
import '../emitter-kHxkUxco.js';
|
|
12
12
|
import '../internals/helpers/promise.js';
|
|
13
13
|
import '../errors.js';
|
|
14
14
|
import 'promise-based-task';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/embedding.ts"],"names":["EmbeddingModel","Serializable","create","input","shallowCopy","RunContext","enter","params","signal","abortSignal","run","emitter","emit","result","pRetry","_create","retries","maxRetries","value","error","EmbeddingModelError","fromName","name","providerId","modelId","parseModel","Target","loadModel","createSnapshot","destroy"],"mappings":";;;;;;;;;;;AAuCO,MAAeA,uBAAuBC,6BAAAA,CAAAA;EAvC7C;;;AA6CEC,EAAAA,MAAAA,CAAOC,KAAAA,EAA4B;AACjCA,IAAAA,KAAAA,GAAQC,sBAAYD,KAAAA,CAAAA;AAEpB,IAAA,OAAOE,sBAAAA,CAAWC,MAChB,IAAA,EACA;MAAEC,MAAAA,EAAQ;AAACJ,QAAAA;;AAAiBK,MAAAA,MAAAA,EAAQL,KAAAA,EAAOM;AAAY,KAAA,EACvD,OAAOC,GAAAA,KAAAA;AACL,MAAA,IAAI;AACF,QAAA,MAAMA,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,OAAA,EAAS;AAAET,UAAAA;SAAM,CAAA;AACxC,QAAA,MAAMU,MAAAA,GAA+B,MAAMC,gBAAAA,CAAO,MAAM,KAAKC,OAAAA,CAAQZ,KAAAA,EAAOO,GAAAA,CAAAA,EAAM;AAChFM,UAAAA,OAAAA,EAASb,MAAMc,UAAAA,IAAc,CAAA;AAC7BT,UAAAA,MAAAA,EAAQE,GAAAA,CAAIF;SACd,CAAA;AACA,QAAA,MAAME,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,SAAA,EAAW;UAAEM,KAAAA,EAAOL;SAAO,CAAA;AAClD,QAAA,OAAOA,MAAAA;AACT,
|
|
1
|
+
{"version":3,"sources":["../../src/backend/embedding.ts"],"names":["EmbeddingModel","Serializable","create","input","shallowCopy","RunContext","enter","params","signal","abortSignal","run","emitter","emit","result","pRetry","_create","retries","maxRetries","value","error","EmbeddingModelError","fromName","name","providerId","modelId","parseModel","Target","loadModel","createSnapshot","destroy"],"mappings":";;;;;;;;;;;AAuCO,MAAeA,uBAAuBC,6BAAAA,CAAAA;EAvC7C;;;AA6CEC,EAAAA,MAAAA,CAAOC,KAAAA,EAA4B;AACjCA,IAAAA,KAAAA,GAAQC,sBAAYD,KAAAA,CAAAA;AAEpB,IAAA,OAAOE,sBAAAA,CAAWC,MAChB,IAAA,EACA;MAAEC,MAAAA,EAAQ;AAACJ,QAAAA;;AAAiBK,MAAAA,MAAAA,EAAQL,KAAAA,EAAOM;AAAY,KAAA,EACvD,OAAOC,GAAAA,KAAAA;AACL,MAAA,IAAI;AACF,QAAA,MAAMA,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,OAAA,EAAS;AAAET,UAAAA;SAAM,CAAA;AACxC,QAAA,MAAMU,MAAAA,GAA+B,MAAMC,gBAAAA,CAAO,MAAM,KAAKC,OAAAA,CAAQZ,KAAAA,EAAOO,GAAAA,CAAAA,EAAM;AAChFM,UAAAA,OAAAA,EAASb,MAAMc,UAAAA,IAAc,CAAA;AAC7BT,UAAAA,MAAAA,EAAQE,GAAAA,CAAIF;SACd,CAAA;AACA,QAAA,MAAME,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,SAAA,EAAW;UAAEM,KAAAA,EAAOL;SAAO,CAAA;AAClD,QAAA,OAAOA,MAAAA;AACT,MAAA,CAAA,CAAA,OAASM,KAAAA,EAAO;AACd,QAAA,MAAMT,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,OAAA,EAAS;AAAET,UAAAA,KAAAA;AAAOgB,UAAAA;SAAM,CAAA;AAC/C,QAAA,IAAIA,iBAAiBC,8BAAAA,EAAqB;AACxC,UAAA,MAAMD,KAAAA;QACR,CAAA,MAAO;AACL,UAAA,MAAM,IAAIC,+BAAoB,CAAA,6CAAA,CAAA,EAAiD;AAACD,YAAAA;AAAM,WAAA,CAAA;AACxF,QAAA;MACF,CAAA,SAAA;AACE,QAAA,MAAMT,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,QAAA,EAAU,IAAA,CAAA;AACnC,MAAA;IACF,CAAA,CAAA;AAEJ,EAAA;AAEA,EAAA,aAAaS,SAASC,IAAAA,EAAoC;AACxD,IAAA,MAAM,EAAEC,UAAAA,EAAYC,OAAAA,GAAU,EAAA,EAAE,GAAKC,uBAAWH,IAAAA,CAAAA;AAChD,IAAA,MAAMI,MAAAA,GAAS,MAAMC,qBAAAA,CAA0BJ,UAAAA,EAAY,WAAA,CAAA;AAC3D,IAAA,OAAO,IAAIG,OAAOF,OAAAA,CAAAA;AACpB,EAAA;EAOAI,cAAAA,GAAiB;AACf,IAAA,OAAO;AAAEjB,MAAAA,OAAAA,EAAS,IAAA,CAAKA;AAAQ,KAAA;AACjC,EAAA;EAEAkB,OAAAA,GAAU;AACR,IAAA,IAAA,CAAKlB,QAAQkB,OAAAA,EAAO;AACtB,EAAA;AACF","file":"embedding.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Callback } from \"@/emitter/types.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { GetRunContext, RunContext } from \"@/context.js\";\nimport { pRetry } from \"@/internals/helpers/retry.js\";\nimport { FullModelName, loadModel, parseModel } from \"@/backend/utils.js\";\nimport { ProviderName } from \"@/backend/constants.js\";\nimport { EmbeddingModelError } from \"@/backend/errors.js\";\n\nexport interface EmbeddingModelInput {\n values: string[];\n abortSignal?: AbortSignal;\n maxRetries?: number;\n}\n\nexport interface EmbeddingModelOutput {\n values: string[];\n embeddings: number[][];\n usage: { tokens?: number };\n}\n\nexport interface EmbeddingModelEvents {\n success?: Callback<{ value: EmbeddingModelOutput }>;\n start?: Callback<{ input: EmbeddingModelInput }>;\n error?: Callback<{ input: EmbeddingModelInput; error: FrameworkError }>;\n finish?: Callback<null>;\n}\n\nexport type EmbeddingModelEmitter<A = Record<never, never>> = Emitter<\n EmbeddingModelEvents & Omit<A, keyof EmbeddingModelEvents>\n>;\n\nexport abstract class EmbeddingModel extends Serializable {\n public abstract readonly emitter: Emitter<EmbeddingModelEvents>;\n\n abstract get modelId(): string;\n abstract get providerId(): string;\n\n create(input: EmbeddingModelInput) {\n input = shallowCopy(input);\n\n return RunContext.enter(\n this,\n { params: [input] as const, signal: input?.abortSignal },\n async (run) => {\n try {\n await run.emitter.emit(\"start\", { input });\n const result: EmbeddingModelOutput = await pRetry(() => this._create(input, run), {\n retries: input.maxRetries || 0,\n signal: run.signal,\n });\n await run.emitter.emit(\"success\", { value: result });\n return result;\n } catch (error) {\n await run.emitter.emit(\"error\", { input, error });\n if (error instanceof EmbeddingModelError) {\n throw error;\n } else {\n throw new EmbeddingModelError(`The Embedding Model has encountered an error.`, [error]);\n }\n } finally {\n await run.emitter.emit(\"finish\", null);\n }\n },\n );\n }\n\n static async fromName(name: FullModelName | ProviderName) {\n const { providerId, modelId = \"\" } = parseModel(name);\n const Target = await loadModel<EmbeddingModel>(providerId, \"embedding\");\n return new Target(modelId);\n }\n\n protected abstract _create(\n input: EmbeddingModelInput,\n run: GetRunContext<typeof this>,\n ): Promise<EmbeddingModelOutput>;\n\n createSnapshot() {\n return { emitter: this.emitter };\n }\n\n destroy() {\n this.emitter.destroy();\n }\n}\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Run, GetRunContext } from '../context.cjs';
|
|
2
2
|
import { Serializable } from '../internals/serializable.cjs';
|
|
3
|
-
import {
|
|
3
|
+
import { E as Emitter, C as Callback } from '../emitter-D4OcelZ9.cjs';
|
|
4
4
|
import { FrameworkError } from '../errors.cjs';
|
|
5
|
-
import { F as FullModelName } from '../chat-
|
|
5
|
+
import { F as FullModelName } from '../chat-C20nYj46.cjs';
|
|
6
6
|
import { ProviderName } from './constants.cjs';
|
|
7
7
|
import '../internals/helpers/promise.cjs';
|
|
8
8
|
import '../internals/types.cjs';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Run, GetRunContext } from '../context.js';
|
|
2
2
|
import { Serializable } from '../internals/serializable.js';
|
|
3
|
-
import {
|
|
3
|
+
import { E as Emitter, C as Callback } from '../emitter-kHxkUxco.js';
|
|
4
4
|
import { FrameworkError } from '../errors.js';
|
|
5
|
-
import { F as FullModelName } from '../chat-
|
|
5
|
+
import { F as FullModelName } from '../chat-CfTNfR60.js';
|
|
6
6
|
import { ProviderName } from './constants.js';
|
|
7
7
|
import '../internals/helpers/promise.js';
|
|
8
8
|
import '../internals/types.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/embedding.ts"],"names":["EmbeddingModel","Serializable","create","input","shallowCopy","RunContext","enter","params","signal","abortSignal","run","emitter","emit","result","pRetry","_create","retries","maxRetries","value","error","EmbeddingModelError","fromName","name","providerId","modelId","parseModel","Target","loadModel","createSnapshot","destroy"],"mappings":";;;;;;;;;AAuCO,MAAeA,uBAAuBC,YAAAA,CAAAA;EAvC7C;;;AA6CEC,EAAAA,MAAAA,CAAOC,KAAAA,EAA4B;AACjCA,IAAAA,KAAAA,GAAQC,YAAYD,KAAAA,CAAAA;AAEpB,IAAA,OAAOE,UAAAA,CAAWC,MAChB,IAAA,EACA;MAAEC,MAAAA,EAAQ;AAACJ,QAAAA;;AAAiBK,MAAAA,MAAAA,EAAQL,KAAAA,EAAOM;AAAY,KAAA,EACvD,OAAOC,GAAAA,KAAAA;AACL,MAAA,IAAI;AACF,QAAA,MAAMA,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,OAAA,EAAS;AAAET,UAAAA;SAAM,CAAA;AACxC,QAAA,MAAMU,MAAAA,GAA+B,MAAMC,MAAAA,CAAO,MAAM,KAAKC,OAAAA,CAAQZ,KAAAA,EAAOO,GAAAA,CAAAA,EAAM;AAChFM,UAAAA,OAAAA,EAASb,MAAMc,UAAAA,IAAc,CAAA;AAC7BT,UAAAA,MAAAA,EAAQE,GAAAA,CAAIF;SACd,CAAA;AACA,QAAA,MAAME,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,SAAA,EAAW;UAAEM,KAAAA,EAAOL;SAAO,CAAA;AAClD,QAAA,OAAOA,MAAAA;AACT,
|
|
1
|
+
{"version":3,"sources":["../../src/backend/embedding.ts"],"names":["EmbeddingModel","Serializable","create","input","shallowCopy","RunContext","enter","params","signal","abortSignal","run","emitter","emit","result","pRetry","_create","retries","maxRetries","value","error","EmbeddingModelError","fromName","name","providerId","modelId","parseModel","Target","loadModel","createSnapshot","destroy"],"mappings":";;;;;;;;;AAuCO,MAAeA,uBAAuBC,YAAAA,CAAAA;EAvC7C;;;AA6CEC,EAAAA,MAAAA,CAAOC,KAAAA,EAA4B;AACjCA,IAAAA,KAAAA,GAAQC,YAAYD,KAAAA,CAAAA;AAEpB,IAAA,OAAOE,UAAAA,CAAWC,MAChB,IAAA,EACA;MAAEC,MAAAA,EAAQ;AAACJ,QAAAA;;AAAiBK,MAAAA,MAAAA,EAAQL,KAAAA,EAAOM;AAAY,KAAA,EACvD,OAAOC,GAAAA,KAAAA;AACL,MAAA,IAAI;AACF,QAAA,MAAMA,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,OAAA,EAAS;AAAET,UAAAA;SAAM,CAAA;AACxC,QAAA,MAAMU,MAAAA,GAA+B,MAAMC,MAAAA,CAAO,MAAM,KAAKC,OAAAA,CAAQZ,KAAAA,EAAOO,GAAAA,CAAAA,EAAM;AAChFM,UAAAA,OAAAA,EAASb,MAAMc,UAAAA,IAAc,CAAA;AAC7BT,UAAAA,MAAAA,EAAQE,GAAAA,CAAIF;SACd,CAAA;AACA,QAAA,MAAME,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,SAAA,EAAW;UAAEM,KAAAA,EAAOL;SAAO,CAAA;AAClD,QAAA,OAAOA,MAAAA;AACT,MAAA,CAAA,CAAA,OAASM,KAAAA,EAAO;AACd,QAAA,MAAMT,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,OAAA,EAAS;AAAET,UAAAA,KAAAA;AAAOgB,UAAAA;SAAM,CAAA;AAC/C,QAAA,IAAIA,iBAAiBC,mBAAAA,EAAqB;AACxC,UAAA,MAAMD,KAAAA;QACR,CAAA,MAAO;AACL,UAAA,MAAM,IAAIC,oBAAoB,CAAA,6CAAA,CAAA,EAAiD;AAACD,YAAAA;AAAM,WAAA,CAAA;AACxF,QAAA;MACF,CAAA,SAAA;AACE,QAAA,MAAMT,GAAAA,CAAIC,OAAAA,CAAQC,IAAAA,CAAK,QAAA,EAAU,IAAA,CAAA;AACnC,MAAA;IACF,CAAA,CAAA;AAEJ,EAAA;AAEA,EAAA,aAAaS,SAASC,IAAAA,EAAoC;AACxD,IAAA,MAAM,EAAEC,UAAAA,EAAYC,OAAAA,GAAU,EAAA,EAAE,GAAKC,WAAWH,IAAAA,CAAAA;AAChD,IAAA,MAAMI,MAAAA,GAAS,MAAMC,SAAAA,CAA0BJ,UAAAA,EAAY,WAAA,CAAA;AAC3D,IAAA,OAAO,IAAIG,OAAOF,OAAAA,CAAAA;AACpB,EAAA;EAOAI,cAAAA,GAAiB;AACf,IAAA,OAAO;AAAEjB,MAAAA,OAAAA,EAAS,IAAA,CAAKA;AAAQ,KAAA;AACjC,EAAA;EAEAkB,OAAAA,GAAU;AACR,IAAA,IAAA,CAAKlB,QAAQkB,OAAAA,EAAO;AACtB,EAAA;AACF","file":"embedding.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Callback } from \"@/emitter/types.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { GetRunContext, RunContext } from \"@/context.js\";\nimport { pRetry } from \"@/internals/helpers/retry.js\";\nimport { FullModelName, loadModel, parseModel } from \"@/backend/utils.js\";\nimport { ProviderName } from \"@/backend/constants.js\";\nimport { EmbeddingModelError } from \"@/backend/errors.js\";\n\nexport interface EmbeddingModelInput {\n values: string[];\n abortSignal?: AbortSignal;\n maxRetries?: number;\n}\n\nexport interface EmbeddingModelOutput {\n values: string[];\n embeddings: number[][];\n usage: { tokens?: number };\n}\n\nexport interface EmbeddingModelEvents {\n success?: Callback<{ value: EmbeddingModelOutput }>;\n start?: Callback<{ input: EmbeddingModelInput }>;\n error?: Callback<{ input: EmbeddingModelInput; error: FrameworkError }>;\n finish?: Callback<null>;\n}\n\nexport type EmbeddingModelEmitter<A = Record<never, never>> = Emitter<\n EmbeddingModelEvents & Omit<A, keyof EmbeddingModelEvents>\n>;\n\nexport abstract class EmbeddingModel extends Serializable {\n public abstract readonly emitter: Emitter<EmbeddingModelEvents>;\n\n abstract get modelId(): string;\n abstract get providerId(): string;\n\n create(input: EmbeddingModelInput) {\n input = shallowCopy(input);\n\n return RunContext.enter(\n this,\n { params: [input] as const, signal: input?.abortSignal },\n async (run) => {\n try {\n await run.emitter.emit(\"start\", { input });\n const result: EmbeddingModelOutput = await pRetry(() => this._create(input, run), {\n retries: input.maxRetries || 0,\n signal: run.signal,\n });\n await run.emitter.emit(\"success\", { value: result });\n return result;\n } catch (error) {\n await run.emitter.emit(\"error\", { input, error });\n if (error instanceof EmbeddingModelError) {\n throw error;\n } else {\n throw new EmbeddingModelError(`The Embedding Model has encountered an error.`, [error]);\n }\n } finally {\n await run.emitter.emit(\"finish\", null);\n }\n },\n );\n }\n\n static async fromName(name: FullModelName | ProviderName) {\n const { providerId, modelId = \"\" } = parseModel(name);\n const Target = await loadModel<EmbeddingModel>(providerId, \"embedding\");\n return new Target(modelId);\n }\n\n protected abstract _create(\n input: EmbeddingModelInput,\n run: GetRunContext<typeof this>,\n ): Promise<EmbeddingModelOutput>;\n\n createSnapshot() {\n return { emitter: this.emitter };\n }\n\n destroy() {\n this.emitter.destroy();\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/errors.ts"],"names":["BackendError","FrameworkError","ChatModelError","EmptyChatModelResponseError","message","isFatal","isRetryable","ChatModelToolCallError","errors","data","EmbeddingModelError"],"mappings":";;;;;;AAQO,MAAMA,qBAAqBC,yBAAAA,CAAAA;EARlC;;;AAQkD;AAE3C,MAAMC,uBAAuBF,YAAAA,CAAAA;EAVpC;;;AAUkD;AAE3C,MAAMG,oCAAoCD,cAAAA,CAAAA;EAZjD;;;AAaE,EAAA,WAAA,CAAYE,UAAU,wCAAA,EAA0C;AAC9D,IAAA,KAAA,CAAMA,OAAAA,EAAS,EAAA,EAAI;MACjBC,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA;AACF;AACF;AAQO,MAAMC,+BAA+BL,cAAAA,CAAAA;EA3B5C;;;;AA4BE,EAAA,WAAA,CACEE,OAAAA,EACAI,MAAAA,GAAkB,EAAA,EACFC,IAAAA,EAChB;AACA,IAAA,KAAA,CAAML,SAASI,MAAAA,EAAQ;MACrBH,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA,EAAA,KALgBG,IAAAA,GAAAA,IAAAA;AAMlB;AACF;AAEO,MAAMC,4BAA4BV,YAAAA,CAAAA;EAxCzC;;;AAwCuD","file":"errors.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FrameworkError } from \"@/errors.js\";\nimport type { ChatModelOutput } from \"@/backend/chat.js\";\n\nexport class BackendError extends FrameworkError {}\n\nexport class ChatModelError extends BackendError {}\n\nexport class EmptyChatModelResponseError extends ChatModelError {\n constructor(message = \"Chat Model produced an empty response!\") {\n super(message, [], {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport interface ChatModelToolCallErrorInput {\n generatedContent: string;\n generatedError: string;\n response?: ChatModelOutput;\n}\n\nexport class ChatModelToolCallError extends ChatModelError {\n constructor(\n message: string,\n errors: Error[] = [],\n public readonly data: ChatModelToolCallErrorInput,\n ) {\n super(message, errors, {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport class EmbeddingModelError extends BackendError {}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/errors.ts"],"names":["BackendError","FrameworkError","ChatModelError","EmptyChatModelResponseError","message","isFatal","isRetryable","ChatModelToolCallError","errors","data","EmbeddingModelError"],"mappings":";;;;;;AAQO,MAAMA,qBAAqBC,yBAAAA,CAAAA;EARlC;;;AAQkD;AAE3C,MAAMC,uBAAuBF,YAAAA,CAAAA;EAVpC;;;AAUkD;AAE3C,MAAMG,oCAAoCD,cAAAA,CAAAA;EAZjD;;;AAaE,EAAA,WAAA,CAAYE,UAAU,wCAAA,EAA0C;AAC9D,IAAA,KAAA,CAAMA,OAAAA,EAAS,EAAA,EAAI;MACjBC,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA;AACF,EAAA;AACF;AAQO,MAAMC,+BAA+BL,cAAAA,CAAAA;EA3B5C;;;;AA4BE,EAAA,WAAA,CACEE,OAAAA,EACAI,MAAAA,GAAkB,EAAA,EACFC,IAAAA,EAChB;AACA,IAAA,KAAA,CAAML,SAASI,MAAAA,EAAQ;MACrBH,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA,EAAA,KALgBG,IAAAA,GAAAA,IAAAA;AAMlB,EAAA;AACF;AAEO,MAAMC,4BAA4BV,YAAAA,CAAAA;EAxCzC;;;AAwCuD","file":"errors.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FrameworkError } from \"@/errors.js\";\nimport type { ChatModelOutput } from \"@/backend/chat.js\";\n\nexport class BackendError extends FrameworkError {}\n\nexport class ChatModelError extends BackendError {}\n\nexport class EmptyChatModelResponseError extends ChatModelError {\n constructor(message = \"Chat Model produced an empty response!\") {\n super(message, [], {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport interface ChatModelToolCallErrorInput {\n generatedContent: string;\n generatedError: string;\n response?: ChatModelOutput;\n}\n\nexport class ChatModelToolCallError extends ChatModelError {\n constructor(\n message: string,\n errors: Error[] = [],\n public readonly data: ChatModelToolCallErrorInput,\n ) {\n super(message, errors, {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport class EmbeddingModelError extends BackendError {}\n"]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { FrameworkError } from '../errors.cjs';
|
|
2
|
-
import {
|
|
2
|
+
import { i as ChatModelOutput } from '../chat-C20nYj46.cjs';
|
|
3
3
|
import '../internals/types.cjs';
|
|
4
4
|
import '../internals/helpers/guards.cjs';
|
|
5
5
|
import './message.cjs';
|
|
6
6
|
import '../internals/serializable.cjs';
|
|
7
7
|
import 'ai';
|
|
8
8
|
import '../context.cjs';
|
|
9
|
-
import '../emitter-
|
|
9
|
+
import '../emitter-D4OcelZ9.cjs';
|
|
10
10
|
import '../internals/helpers/promise.cjs';
|
|
11
11
|
import 'promise-based-task';
|
|
12
12
|
import '../cache/base.cjs';
|
package/dist/backend/errors.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { FrameworkError } from '../errors.js';
|
|
2
|
-
import {
|
|
2
|
+
import { i as ChatModelOutput } from '../chat-CfTNfR60.js';
|
|
3
3
|
import '../internals/types.js';
|
|
4
4
|
import '../internals/helpers/guards.js';
|
|
5
5
|
import './message.js';
|
|
6
6
|
import '../internals/serializable.js';
|
|
7
7
|
import 'ai';
|
|
8
8
|
import '../context.js';
|
|
9
|
-
import '../emitter-
|
|
9
|
+
import '../emitter-kHxkUxco.js';
|
|
10
10
|
import '../internals/helpers/promise.js';
|
|
11
11
|
import 'promise-based-task';
|
|
12
12
|
import '../cache/base.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/errors.ts"],"names":["BackendError","FrameworkError","ChatModelError","EmptyChatModelResponseError","message","isFatal","isRetryable","ChatModelToolCallError","errors","data","EmbeddingModelError"],"mappings":";;;;AAQO,MAAMA,qBAAqBC,cAAAA,CAAAA;EARlC;;;AAQkD;AAE3C,MAAMC,uBAAuBF,YAAAA,CAAAA;EAVpC;;;AAUkD;AAE3C,MAAMG,oCAAoCD,cAAAA,CAAAA;EAZjD;;;AAaE,EAAA,WAAA,CAAYE,UAAU,wCAAA,EAA0C;AAC9D,IAAA,KAAA,CAAMA,OAAAA,EAAS,EAAA,EAAI;MACjBC,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA;AACF;AACF;AAQO,MAAMC,+BAA+BL,cAAAA,CAAAA;EA3B5C;;;;AA4BE,EAAA,WAAA,CACEE,OAAAA,EACAI,MAAAA,GAAkB,EAAA,EACFC,IAAAA,EAChB;AACA,IAAA,KAAA,CAAML,SAASI,MAAAA,EAAQ;MACrBH,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA,EAAA,KALgBG,IAAAA,GAAAA,IAAAA;AAMlB;AACF;AAEO,MAAMC,4BAA4BV,YAAAA,CAAAA;EAxCzC;;;AAwCuD","file":"errors.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FrameworkError } from \"@/errors.js\";\nimport type { ChatModelOutput } from \"@/backend/chat.js\";\n\nexport class BackendError extends FrameworkError {}\n\nexport class ChatModelError extends BackendError {}\n\nexport class EmptyChatModelResponseError extends ChatModelError {\n constructor(message = \"Chat Model produced an empty response!\") {\n super(message, [], {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport interface ChatModelToolCallErrorInput {\n generatedContent: string;\n generatedError: string;\n response?: ChatModelOutput;\n}\n\nexport class ChatModelToolCallError extends ChatModelError {\n constructor(\n message: string,\n errors: Error[] = [],\n public readonly data: ChatModelToolCallErrorInput,\n ) {\n super(message, errors, {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport class EmbeddingModelError extends BackendError {}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/errors.ts"],"names":["BackendError","FrameworkError","ChatModelError","EmptyChatModelResponseError","message","isFatal","isRetryable","ChatModelToolCallError","errors","data","EmbeddingModelError"],"mappings":";;;;AAQO,MAAMA,qBAAqBC,cAAAA,CAAAA;EARlC;;;AAQkD;AAE3C,MAAMC,uBAAuBF,YAAAA,CAAAA;EAVpC;;;AAUkD;AAE3C,MAAMG,oCAAoCD,cAAAA,CAAAA;EAZjD;;;AAaE,EAAA,WAAA,CAAYE,UAAU,wCAAA,EAA0C;AAC9D,IAAA,KAAA,CAAMA,OAAAA,EAAS,EAAA,EAAI;MACjBC,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA;AACF,EAAA;AACF;AAQO,MAAMC,+BAA+BL,cAAAA,CAAAA;EA3B5C;;;;AA4BE,EAAA,WAAA,CACEE,OAAAA,EACAI,MAAAA,GAAkB,EAAA,EACFC,IAAAA,EAChB;AACA,IAAA,KAAA,CAAML,SAASI,MAAAA,EAAQ;MACrBH,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa;KACf,CAAA,EAAA,KALgBG,IAAAA,GAAAA,IAAAA;AAMlB,EAAA;AACF;AAEO,MAAMC,4BAA4BV,YAAAA,CAAAA;EAxCzC;;;AAwCuD","file":"errors.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FrameworkError } from \"@/errors.js\";\nimport type { ChatModelOutput } from \"@/backend/chat.js\";\n\nexport class BackendError extends FrameworkError {}\n\nexport class ChatModelError extends BackendError {}\n\nexport class EmptyChatModelResponseError extends ChatModelError {\n constructor(message = \"Chat Model produced an empty response!\") {\n super(message, [], {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport interface ChatModelToolCallErrorInput {\n generatedContent: string;\n generatedError: string;\n response?: ChatModelOutput;\n}\n\nexport class ChatModelToolCallError extends ChatModelError {\n constructor(\n message: string,\n errors: Error[] = [],\n public readonly data: ChatModelToolCallErrorInput,\n ) {\n super(message, errors, {\n isFatal: true,\n isRetryable: true,\n });\n }\n}\n\nexport class EmbeddingModelError extends BackendError {}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/message.ts"],"names":["isText","content","type","isImage","isFile","isToolCall","isToolResult","Message","Serializable","id","meta","undefined","createdAt","Date","fromString","Array","isArray","chunk","assertContent","watchArray","onAdd","of","role","text","UserMessage","AssistantMessage","SystemMessage","ToolMessage","CustomMessage","getTexts","map","c","join","filter","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","toPlain","merge","other","push","fromChunks","chunks","instance","forEach","Symbol","iterator","register","getToolCalls","key","getOwnPropertyDescriptor","args","popProp","hasProp","Logger","root","warn","input","safeDefineProperty","getToolResults","schema","z","object","literal","toolName","string","toolCallId","and","output","any","or","result","success","data","safeParse","ValueError","isError","isString","value","includes","getImages","getFiles","Role","ASSISTANT","SYSTEM","USER"],"mappings":";;;;;;;;;;;;;AA8BA,SAASA,OAAOC,OAAAA,EAA2B;AACzC,EAAA,OAAOA,QAAQC,IAAAA,KAAS,MAAA;AAC1B;AAFSF,MAAAA,CAAAA,MAAAA,EAAAA,QAAAA,CAAAA;AAGT,SAASG,QAAQF,OAAAA,EAA2B;AAC1C,EAAA,OAAOA,QAAQC,IAAAA,KAAS,OAAA;AAC1B;AAFSC,MAAAA,CAAAA,OAAAA,EAAAA,SAAAA,CAAAA;AAGT,SAASC,OAAOH,OAAAA,EAA2B;AACzC,EAAA,OAAOA,QAAQC,IAAAA,KAAS,MAAA;AAC1B;AAFSE,MAAAA,CAAAA,MAAAA,EAAAA,QAAAA,CAAAA;AAGT,SAASC,WAAWJ,OAAAA,EAA2B;AAC7C,EAAA,OAAOA,QAAQC,IAAAA,KAAS,WAAA;AAC1B;AAFSG,MAAAA,CAAAA,UAAAA,EAAAA,YAAAA,CAAAA;AAGT,SAASC,aAAaL,OAAAA,EAA2B;AAC/C,EAAA,OAAOA,QAAQC,IAAAA,KAAS,aAAA;AAC1B;AAFSI,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA;AAIF,MAAeC,gBAGZC,6BAAAA,CAAAA;EAjDV;;;;AAkDSC,EAAAA,EAAAA;AAESR,EAAAA,OAAAA;AAEhB,EAAA,WAAA,CACEA,OAAAA,EACgBS,IAAAA,GAAoB,EAAC,EACrCD,KAAyBE,MAAAA,EACzB;AACA,IAAA,KAAA,EAAK,EAAA,KAHWD,IAAAA,GAAAA,IAAAA;AAIhB,IAAA,IAAA,CAAKD,EAAAA,GAAKA,EAAAA;AACV,IAAA,IAAI,CAACC,MAAME,SAAAA,EAAW;AACpBF,MAAAA,IAAAA,CAAKE,SAAAA,uBAAgBC,IAAAA,EAAAA;AACvB;AACA,IAAA,IAAI,OAAOZ,YAAY,QAAA,EAAU;AAC/B,MAAA,IAAA,CAAKA,OAAAA,GAAU;AAAC,QAAA,IAAA,CAAKa,WAAWb,OAAAA;;KAClC,MAAO;AACL,MAAA,IAAA,CAAKA,OAAAA,GAAUc,KAAAA,CAAMC,OAAAA,CAAQf,OAAAA,IAAWA,OAAAA,GAAU;AAACA,QAAAA;;AACrD;AACA,IAAA,KAAA,MAAWgB,KAAAA,IAAS,KAAKhB,OAAAA,EAAS;AAChC,MAAA,IAAA,CAAKiB,cAAcD,KAAAA,CAAAA;AACrB;AACA,IAAA,IAAA,CAAKhB,OAAAA,GAAUkB,oBAAAA,CAAW,IAAA,CAAKlB,OAAAA,EAAS;AACtCmB,MAAAA,KAAAA,EAAO,IAAA,CAAKF;KACd,CAAA;AACF;AAEUA,EAAAA,aAAAA,CAAcjB,OAAAA,EAAkC;AAAC;AAI3D,EAAA,OAAOoB,GAAG,EAAEC,IAAAA,EAAMC,IAAAA,EAAMb,IAAAA,EAAMD,IAAE,EAA2B;AACzD,IAAA,IAAIa,SAAS,MAAA,EAAQ;AACnB,MAAA,OAAO,IAAIE,WAAAA,CAAYD,IAAAA,EAAMb,IAAAA,EAAMD,EAAAA,CAAAA;AACrC,KAAA,MAAA,IAAWa,SAAS,WAAA,EAAa;AAC/B,MAAA,OAAO,IAAIG,gBAAAA,CAAiBF,IAAAA,EAAMb,IAAAA,EAAMD,EAAAA,CAAAA;AAC1C,KAAA,MAAA,IAAWa,SAAS,QAAA,EAAU;AAC5B,MAAA,OAAO,IAAII,aAAAA,CAAcH,IAAAA,EAAMb,IAAAA,EAAMD,EAAAA,CAAAA;AACvC,KAAA,MAAA,IAAWa,SAAS,MAAA,EAAQ;AAC1B,MAAA,OAAO,IAAIK,WAAAA,CAAYJ,IAAAA,EAAMb,IAAAA,EAAMD,EAAAA,CAAAA;KACrC,MAAO;AACL,MAAA,OAAO,IAAImB,aAAAA,CAAcN,IAAAA,EAAMC,IAAAA,EAAMb,MAAMD,EAAAA,CAAAA;AAC7C;AACF;AAEA,EAAA,IAAIc,IAAAA,GAAO;AACT,IAAA,OAAO,IAAA,CAAKM,QAAAA,EAAQ,CACjBC,GAAAA,CAAI,CAACC,MAAMA,CAAAA,CAAER,IAAI,CAAA,CACjBS,IAAAA,CAAK,EAAA,CAAA;AACV;EAEAH,QAAAA,GAAW;AACT,IAAA,OAAO,IAAA,CAAK5B,OAAAA,CAAQgC,MAAAA,CAAOjC,MAAAA,CAAAA;AAC7B;EAEAkC,cAAAA,GAAiB;AACf,IAAA,OAAO;AACLzB,MAAAA,EAAAA,EAAI,IAAA,CAAKA,EAAAA;MACTR,OAAAA,EAASkC,qBAAAA,CAAY,KAAKlC,OAAO,CAAA;MACjCS,IAAAA,EAAMyB,qBAAAA,CAAY,KAAKzB,IAAI,CAAA;AAC3BY,MAAAA,IAAAA,EAAM,IAAA,CAAKA;AACb,KAAA;AACF;AAEAc,EAAAA,YAAAA,CAAaC,QAAAA,EAAkD;AAC7DC,IAAAA,MAAAA,CAAOC,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACtB;EAEAG,OAAAA,GAAU;AACR,IAAA,OAAO;AAAE/B,MAAAA,EAAAA,EAAI,IAAA,CAAKA,EAAAA;AAAIa,MAAAA,IAAAA,EAAM,IAAA,CAAKA,IAAAA;MAAMrB,OAAAA,EAASkC,qBAAAA,CAAY,KAAKlC,OAAO;AAAE,KAAA;AAC5E;AAEAwC,EAAAA,KAAAA,CAAMC,KAAAA,EAAsB;AAC1B,IAAA,IAAA,CAAKjC,EAAAA,GAAK,IAAA,CAAKA,EAAAA,IAAMiC,KAAAA,CAAMjC,EAAAA;AAC3B6B,IAAAA,MAAAA,CAAOC,MAAAA,CAAO,IAAA,EAAMG,KAAAA,CAAMhC,IAAI,CAAA;AAC9B,IAAA,IAAA,CAAKT,OAAAA,CAAQ0C,IAAAA,CAAI,GAAID,KAAAA,CAAMzC,OAAO,CAAA;AACpC;AAEA,EAAA,OAAO2C,WAAiEC,MAAAA,EAAkB;AACxF,IAAA,MAAMC,QAAAA,GAAW,IAAI,IAAA,CAAK,EAAE,CAAA;AAC5BD,IAAAA,MAAAA,CAAOE,QAAQ,CAAC9B,KAAAA,KAAU6B,QAAAA,CAASL,KAAAA,CAAMxB,KAAAA,CAAAA,CAAAA;AACzC,IAAA,OAAO6B,QAAAA;AACT;EAEA,CAACE,MAAAA,CAAOC,QAAQ,CAAA,GAAiB;AAC/B,IAAA,OAAO,IAAA,CAAKhD,OAAAA,CAAQ+C,MAAAA,CAAOC,QAAQ,CAAA,EAAC;AACtC;AACF;AAEO,MAAMxB,yBAAyBlB,OAAAA,CAAAA;EA3ItC;;;EA4IkBe,IAAAA,GAAO,WAAA;EAEvB;AACE,IAAA,IAAA,CAAK4B,QAAAA,EAAQ;AACf;EAEAC,YAAAA,GAAe;AACb,IAAA,OAAO,IAAA,CAAKlD,OAAAA,CAAQgC,MAAAA,CAAO5B,UAAAA,CAAAA;AAC7B;AAEUS,EAAAA,UAAAA,CAAWS,IAAAA,EAAwB;AAC3C,IAAA,OAAO;MAAErB,IAAAA,EAAM,MAAA;AAAQqB,MAAAA;AAAK,KAAA;AAC9B;AAEUL,EAAAA,aAAAA,CACRjB,OAAAA,EACuD;AACvD,IAAA,IAAIA,OAAAA,CAAQC,SAAS,WAAA,EAAa;AAChC,MAAA,MAAMkD,GAAAA,GAAM,MAAA;AACZ,MAAA,IAAI,CAACd,MAAAA,CAAOe,wBAAAA,CAAyBpD,OAAAA,EAASmD,GAAAA,CAAAA,EAAM;AAClD,QAAA,MAAME,IAAAA,GAAOC,kBAAAA,CAAQtD,OAAAA,EAAgBmD,GAAAA,CAAAA;AAErC,QAAA,IAAIE,SAAS,IAAA,IAAQ,CAACE,kBAAAA,CAAQvD,OAAAA,EAAS,OAAA,CAAA,EAAU;AAC/CwD,UAAAA,iBAAAA,CAAOC,IAAAA,CAAKC,IAAAA,CACV,CAAA,KAAA,EAAQP,GAAAA,CAAAA,0IAAAA,CAA+I,CAAA;AAEzJnD,UAAAA,OAAAA,CAAQ2D,KAAAA,GAAQN,IAAAA;AAClB;AACF;AAEAO,MAAAA,6BAAAA,CAAmB5D,OAAAA,EAASmD,KAA6B,MAAA;AACvDK,QAAAA,iBAAAA,CAAOC,IAAAA,CAAKC,IAAAA,CACV,CAAA,KAAA,EAAQP,GAAAA,CAAAA,gGAAAA,CAAqG,CAAA;AAE/G,QAAA,OAAOnD,OAAAA,CAAQ2D,KAAAA;OACjB,CAAA;AACF;AACF;AACF;AAEO,MAAMjC,oBAAoBpB,OAAAA,CAAAA;EApLjC;;;EAqLkBe,IAAAA,GAAO,MAAA;EAEvB;AACE,IAAA,IAAA,CAAK4B,QAAAA,EAAQ;AACf;EAEAY,cAAAA,GAAiB;AACf,IAAA,OAAO,IAAA,CAAK7D,OAAAA,CAAQgC,MAAAA,CAAO3B,YAAAA,CAAAA;AAC7B;AAEUQ,EAAAA,UAAAA,CAAWS,IAAAA,EAA8B;AACjD,IAAA,MAAMwC,MAAAA,GAASC,MACZC,MAAAA,CAAO;MACN/D,IAAAA,EAAM8D,KAAAA,CAAEE,QAAQ,aAAA,CAAA;AAChBC,MAAAA,QAAAA,EAAUH,MAAEI,MAAAA,EAAM;AAClBC,MAAAA,UAAAA,EAAYL,MAAEI,MAAAA;KAChB,CAAA,CACCE,GAAAA,CAAIN,KAAAA,CAAEC,MAAAA,CAAO;AAAEM,MAAAA,MAAAA,EAAQP,MAAEQ,GAAAA;KAAM,CAAA,CAAGC,EAAAA,CAAGT,KAAAA,CAAEC,MAAAA,CAAO;AAAES,MAAAA,MAAAA,EAAQV,MAAEQ,GAAAA;AAAM,KAAA,CAAA,CAAA,CAAA;AAEnE,IAAA,MAAM,EAAEG,OAAAA,EAASC,IAAAA,EAAI,GAAKb,MAAAA,CAAOc,UAAUtD,IAAAA,CAAAA;AAC3C,IAAA,IAAI,CAACoD,OAAAA,EAAS;AACZ,MAAA,MAAM,IAAIG,qBAAAA,CAAW,CAAA,oCAAA,EAAuCvD,IAAAA,CAAAA,EAAAA,CAAQ,CAAA;AACtE;AAEA,IAAA,OAAOqD,IAAAA;AACT;AAEU1D,EAAAA,aAAAA,CAAcjB,OAAAA,EAA4D;AAClF,IAAA,MAAMyE,MAAAA,GAASnB,kBAAAA,CAAQtD,OAAAA,EAAgB,QAAA,EAAU,IAAA,CAAA;AACjD,IAAA,MAAM8E,OAAAA,GAAUxB,kBAAAA,CAAQtD,OAAAA,EAAgB,SAAA,EAAW,KAAA,CAAA;AAEnD,IAAA,IAAIyE,WAAW,IAAA,IAAQ,CAAClB,kBAAAA,CAAQvD,OAAAA,EAAS,QAAA,CAAA,EAAW;AAClDwD,MAAAA,iBAAAA,CAAOC,IAAAA,CAAKC,KACV,yIAAA,CAAA;AAEF,MAAA,IAAIqB,eAAAA,CAASN,MAAAA,CAAAA,EAAS;AACpBzE,QAAAA,OAAAA,CAAQsE,MAAAA,GAAS;AAAErE,UAAAA,IAAAA,EAAM6E,UAAU,YAAA,GAAe,MAAA;UAAQE,KAAAA,EAAOP;AAAO,SAAA;OAC1E,MAAO;AACLzE,QAAAA,OAAAA,CAAQsE,MAAAA,GAAS;AAAErE,UAAAA,IAAAA,EAAM6E,UAAU,YAAA,GAAe,MAAA;UAAQE,KAAAA,EAAOP;AAAO,SAAA;AAC1E;AACF;AAEAb,IAAAA,6BAAAA,CAAmB5D,OAAAA,EAAS,UAAiB,MAAA;AAC3CwD,MAAAA,iBAAAA,CAAOC,IAAAA,CAAKC,KACV,mHAAA,CAAA;AAEF,MAAA,IAAI,OAAA,IAAW1D,QAAQsE,MAAAA,EAAQ;AAC7B,QAAA,OAAOtE,QAAQsE,MAAAA,CAAOU,KAAAA;AACxB;AACA,MAAA,OAAO,IAAA;KACT,CAAA;AACApB,IAAAA,6BAAAA,CAAmB5D,OAAAA,EAAS,WAAkB,MAAA;AAC5CwD,MAAAA,iBAAAA,CAAOC,IAAAA,CAAKC,KACV,mHAAA,CAAA;AAEF,MAAA,OAAO1D,OAAAA,CAAQsE,MAAAA,CAAOrE,IAAAA,CAAKgF,QAAAA,CAAS,OAAA,CAAA;KACtC,CAAA;AACF;AACF;AAEO,MAAMxD,sBAAsBnB,OAAAA,CAAAA;EAjPnC;;;EAkPkBe,IAAAA,GAAoB,QAAA;EAEpC;AACE,IAAA,IAAA,CAAK4B,QAAAA,EAAQ;AACf;AAEUpC,EAAAA,UAAAA,CAAWS,IAAAA,EAAwB;AAC3C,IAAA,OAAO;MAAErB,IAAAA,EAAM,MAAA;AAAQqB,MAAAA;AAAK,KAAA;AAC9B;AACF;AAEO,MAAMC,oBAAoBjB,OAAAA,CAAAA;EA7PjC;;;EA8PkBe,IAAAA,GAAO,MAAA;EAEvB;AACE,IAAA,IAAA,CAAK4B,QAAAA,EAAQ;AACf;EAEAiC,SAAAA,GAAY;AACV,IAAA,OAAO,IAAA,CAAKlF,OAAAA,CAAQgC,MAAAA,CAAO9B,OAAAA,CAAAA;AAC7B;EAEAiF,QAAAA,GAAW;AACT,IAAA,OAAO,IAAA,CAAKnF,OAAAA,CAAQgC,MAAAA,CAAO7B,MAAAA,CAAAA;AAC7B;AAEUU,EAAAA,UAAAA,CAAWS,IAAAA,EAAwB;AAC3C,IAAA,OAAO;MAAErB,IAAAA,EAAM,MAAA;AAAQqB,MAAAA;AAAK,KAAA;AAC9B;AACF;AAEO,MAAM8D,IAAAA,GAAO;EAClBC,SAAAA,EAAW,WAAA;EACXC,MAAAA,EAAQ,QAAA;EACRC,IAAAA,EAAM;AACR;AAEO,MAAM5D,sBAAsBrB,OAAAA,CAAAA;EAvRnC;;;AAwRSe,EAAAA,IAAAA;AAEP,EAAA,WAAA,CACEA,IAAAA,EACArB,OAAAA,EACAS,IAAAA,GAAoB,IACpBD,EAAAA,EACA;AACA,IAAA,KAAA,CAAMR,OAAAA,EAASS,MAAMD,EAAAA,CAAAA;AACrB,IAAA,IAAI,CAACa,IAAAA,EAAM;AACT,MAAA,MAAM,IAAIwD,qBAAAA,CAAW,CAAA,MAAA,EAASxD,IAAAA,CAAAA,oBAAAA,CAA0B,CAAA;AAC1D;AACA,IAAA,IAAA,CAAKA,IAAAA,GAAOA,IAAAA;AACd;AAEUR,EAAAA,UAAAA,CAAW8C,KAAAA,EAAmC;AACtD,IAAA,OAAO;MAAE1D,IAAAA,EAAM,MAAA;MAAQqB,IAAAA,EAAMqC;AAAM,KAAA;AACrC;AACF","file":"message.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { FilePart, ImagePart, TextPart, ToolCallPart, ToolResultPart } from \"ai\";\nimport { z } from \"zod\";\nimport { ValueError } from \"@/errors.js\";\nimport { hasProp, popProp, safeDefineProperty } from \"@/internals/helpers/object.js\";\nimport { Logger } from \"@/logger/logger.js\";\nimport { isString } from \"remeda\";\nimport { watchArray } from \"@/internals/helpers/array.js\";\n\nexport type MessageRole = \"user\" | \"system\" | \"tool\" | \"assistant\";\nexport type MessageContentPart = TextPart | ToolCallPart | ImagePart | FilePart | ToolResultPart;\n\nexport interface MessageMeta {\n [key: string]: any;\n createdAt?: Date;\n}\n\nexport interface MessageInput {\n id?: string;\n role: MessageRole;\n text: string; // TODO\n meta?: MessageMeta;\n}\n\nfunction isText(content: MessageContentPart): content is TextPart {\n return content.type === \"text\";\n}\nfunction isImage(content: MessageContentPart): content is ImagePart {\n return content.type === \"image\";\n}\nfunction isFile(content: MessageContentPart): content is FilePart {\n return content.type === \"file\";\n}\nfunction isToolCall(content: MessageContentPart): content is ToolCallPart {\n return content.type === \"tool-call\";\n}\nfunction isToolResult(content: MessageContentPart): content is ToolResultPart {\n return content.type === \"tool-result\";\n}\n\nexport abstract class Message<\n T extends MessageContentPart = MessageContentPart,\n R extends string = MessageRole | string,\n> extends Serializable {\n public id: string | undefined;\n public abstract readonly role: R;\n public readonly content: T[];\n\n constructor(\n content: T | T[] | string,\n public readonly meta: MessageMeta = {},\n id: string | undefined = undefined,\n ) {\n super();\n this.id = id;\n if (!meta?.createdAt) {\n meta.createdAt = new Date();\n }\n if (typeof content === \"string\") {\n this.content = [this.fromString(content)];\n } else {\n this.content = Array.isArray(content) ? content : [content];\n }\n for (const chunk of this.content) {\n this.assertContent(chunk);\n }\n this.content = watchArray(this.content, {\n onAdd: this.assertContent,\n });\n }\n\n protected assertContent(content: T): asserts content is T {}\n\n protected abstract fromString(input: string): T;\n\n static of({ role, text, meta, id }: MessageInput): Message {\n if (role === \"user\") {\n return new UserMessage(text, meta, id);\n } else if (role === \"assistant\") {\n return new AssistantMessage(text, meta, id);\n } else if (role === \"system\") {\n return new SystemMessage(text, meta, id);\n } else if (role === \"tool\") {\n return new ToolMessage(text, meta, id);\n } else {\n return new CustomMessage(role, text, meta, id);\n }\n }\n\n get text() {\n return this.getTexts()\n .map((c) => c.text)\n .join(\"\");\n }\n\n getTexts() {\n return this.content.filter(isText) as TextPart[];\n }\n\n createSnapshot() {\n return {\n id: this.id,\n content: shallowCopy(this.content),\n meta: shallowCopy(this.meta),\n role: this.role,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n\n toPlain() {\n return { id: this.id, role: this.role, content: shallowCopy(this.content) } as const;\n }\n\n merge(other: Message<T, R>) {\n this.id = this.id || other.id;\n Object.assign(this, other.meta);\n this.content.push(...other.content);\n }\n\n static fromChunks<M2 extends Message>(this: new (...args: any[]) => M2, chunks: M2[]): M2 {\n const instance = new this([]);\n chunks.forEach((chunk) => instance.merge(chunk));\n return instance;\n }\n\n [Symbol.iterator](): Iterator<T> {\n return this.content[Symbol.iterator]();\n }\n}\n\nexport class AssistantMessage extends Message<TextPart | ToolCallPart | FilePart> {\n public readonly role = \"assistant\";\n\n static {\n this.register();\n }\n\n getToolCalls() {\n return this.content.filter(isToolCall);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n\n protected assertContent(\n content: TextPart | ToolCallPart | FilePart,\n ): asserts content is TextPart | ToolCallPart | FilePart {\n if (content.type === \"tool-call\") {\n const key = \"args\";\n if (!Object.getOwnPropertyDescriptor(content, key)) {\n const args = popProp(content as any, key);\n\n if (args !== null && !hasProp(content, \"input\")) {\n Logger.root.warn(\n `The '${key}' property in the AssistantMessage class is deprecated and will be removed. Use the 'input' property for Tool Call content chunks instead.`,\n );\n content.input = args;\n }\n }\n\n safeDefineProperty(content, key as keyof typeof content, () => {\n Logger.root.warn(\n `The '${key}' property in the Tool Call is deprecated and will be removed. Use the 'input' property instead.`,\n );\n return content.input;\n });\n }\n }\n}\n\nexport class ToolMessage extends Message<ToolResultPart> {\n public readonly role = \"tool\";\n\n static {\n this.register();\n }\n\n getToolResults() {\n return this.content.filter(isToolResult);\n }\n\n protected fromString(text: string): ToolResultPart {\n const schema = z\n .object({\n type: z.literal(\"tool-result\"),\n toolName: z.string(),\n toolCallId: z.string(),\n })\n .and(z.object({ output: z.any() }).or(z.object({ result: z.any() })));\n\n const { success, data } = schema.safeParse(text);\n if (!success) {\n throw new ValueError(`ToolMessage cannot be created from '${text}'!`);\n }\n\n return data as ToolResultPart;\n }\n\n protected assertContent(content: ToolResultPart): asserts content is ToolResultPart {\n const result = popProp(content as any, \"result\", null);\n const isError = popProp(content as any, \"isError\", false);\n\n if (result !== null && !hasProp(content, \"output\")) {\n Logger.root.warn(\n \"The 'result' property in the ToolMessage class is deprecated and will be removed. Use the 'output' property for content chunks instead.\",\n );\n if (isString(result)) {\n content.output = { type: isError ? \"error-text\" : \"text\", value: result };\n } else {\n content.output = { type: isError ? \"error-json\" : \"json\", value: result };\n }\n }\n\n safeDefineProperty(content, \"result\" as any, () => {\n Logger.root.warn(\n \"The 'result' property of Tool Message is deprecated and will be removed. Use the 'output.value' property instead.\",\n );\n if (\"value\" in content.output) {\n return content.output.value;\n }\n return null;\n });\n safeDefineProperty(content, \"isError\" as any, () => {\n Logger.root.warn(\n \"The 'isError' property of Tool Message is deprecated and will be removed. Use the 'output.type' property instead.\",\n );\n return content.output.type.includes(\"error\");\n });\n }\n}\n\nexport class SystemMessage extends Message<TextPart> {\n public readonly role: MessageRole = \"system\";\n\n static {\n this.register();\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport class UserMessage extends Message<TextPart | ImagePart | FilePart> {\n public readonly role = \"user\";\n\n static {\n this.register();\n }\n\n getImages() {\n return this.content.filter(isImage);\n }\n\n getFiles() {\n return this.content.filter(isFile);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport const Role = {\n ASSISTANT: \"assistant\",\n SYSTEM: \"system\",\n USER: \"user\",\n} as const;\n\nexport class CustomMessage extends Message<MessageContentPart, string> {\n public role: string;\n\n constructor(\n role: string,\n content: MessageContentPart | string,\n meta: MessageMeta = {},\n id?: string,\n ) {\n super(content, meta, id);\n if (!role) {\n throw new ValueError(`Role \"${role}\" must be specified!`);\n }\n this.role = role;\n }\n\n protected fromString(input: string): MessageContentPart {\n return { type: \"text\", text: input };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/message.ts"],"names":["isText","content","type","isImage","isFile","isToolCall","isToolResult","Message","Serializable","id","meta","undefined","createdAt","Date","fromString","Array","isArray","chunk","assertContent","watchArray","onAdd","of","role","text","UserMessage","AssistantMessage","SystemMessage","ToolMessage","CustomMessage","getTexts","map","c","join","filter","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","toPlain","merge","other","push","fromChunks","chunks","instance","forEach","Symbol","iterator","register","getToolCalls","key","getOwnPropertyDescriptor","args","popProp","hasProp","Logger","root","warn","input","safeDefineProperty","getToolResults","schema","z","object","literal","toolName","string","toolCallId","and","output","any","or","result","success","data","safeParse","ValueError","isError","isString","value","includes","getImages","getFiles","Role","ASSISTANT","SYSTEM","USER"],"mappings":"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","file":"message.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { FilePart, ImagePart, TextPart, ToolCallPart, ToolResultPart } from \"ai\";\nimport { z } from \"zod\";\nimport { ValueError } from \"@/errors.js\";\nimport { hasProp, popProp, safeDefineProperty } from \"@/internals/helpers/object.js\";\nimport { Logger } from \"@/logger/logger.js\";\nimport { isString } from \"remeda\";\nimport { watchArray } from \"@/internals/helpers/array.js\";\n\nexport type MessageRole = \"user\" | \"system\" | \"tool\" | \"assistant\";\nexport type MessageContentPart = TextPart | ToolCallPart | ImagePart | FilePart | ToolResultPart;\n\nexport interface MessageMeta {\n [key: string]: any;\n createdAt?: Date;\n}\n\nexport interface MessageInput {\n id?: string;\n role: MessageRole;\n text: string; // TODO\n meta?: MessageMeta;\n}\n\nfunction isText(content: MessageContentPart): content is TextPart {\n return content.type === \"text\";\n}\nfunction isImage(content: MessageContentPart): content is ImagePart {\n return content.type === \"image\";\n}\nfunction isFile(content: MessageContentPart): content is FilePart {\n return content.type === \"file\";\n}\nfunction isToolCall(content: MessageContentPart): content is ToolCallPart {\n return content.type === \"tool-call\";\n}\nfunction isToolResult(content: MessageContentPart): content is ToolResultPart {\n return content.type === \"tool-result\";\n}\n\nexport abstract class Message<\n T extends MessageContentPart = MessageContentPart,\n R extends string = MessageRole | string,\n> extends Serializable {\n public id: string | undefined;\n public abstract readonly role: R;\n public readonly content: T[];\n\n constructor(\n content: T | T[] | string,\n public readonly meta: MessageMeta = {},\n id: string | undefined = undefined,\n ) {\n super();\n this.id = id;\n if (!meta?.createdAt) {\n meta.createdAt = new Date();\n }\n if (typeof content === \"string\") {\n this.content = [this.fromString(content)];\n } else {\n this.content = Array.isArray(content) ? content : [content];\n }\n for (const chunk of this.content) {\n this.assertContent(chunk);\n }\n this.content = watchArray(this.content, {\n onAdd: this.assertContent,\n });\n }\n\n protected assertContent(content: T): asserts content is T {}\n\n protected abstract fromString(input: string): T;\n\n static of({ role, text, meta, id }: MessageInput): Message {\n if (role === \"user\") {\n return new UserMessage(text, meta, id);\n } else if (role === \"assistant\") {\n return new AssistantMessage(text, meta, id);\n } else if (role === \"system\") {\n return new SystemMessage(text, meta, id);\n } else if (role === \"tool\") {\n return new ToolMessage(text, meta, id);\n } else {\n return new CustomMessage(role, text, meta, id);\n }\n }\n\n get text() {\n return this.getTexts()\n .map((c) => c.text)\n .join(\"\");\n }\n\n getTexts() {\n return this.content.filter(isText) as TextPart[];\n }\n\n createSnapshot() {\n return {\n id: this.id,\n content: shallowCopy(this.content),\n meta: shallowCopy(this.meta),\n role: this.role,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n\n toPlain() {\n return { id: this.id, role: this.role, content: shallowCopy(this.content) } as const;\n }\n\n merge(other: Message<T, R>) {\n this.id = this.id || other.id;\n Object.assign(this, other.meta);\n this.content.push(...other.content);\n }\n\n static fromChunks<M2 extends Message>(this: new (...args: any[]) => M2, chunks: M2[]): M2 {\n const instance = new this([]);\n chunks.forEach((chunk) => instance.merge(chunk));\n return instance;\n }\n\n [Symbol.iterator](): Iterator<T> {\n return this.content[Symbol.iterator]();\n }\n}\n\nexport class AssistantMessage extends Message<TextPart | ToolCallPart | FilePart> {\n public readonly role = \"assistant\";\n\n static {\n this.register();\n }\n\n getToolCalls() {\n return this.content.filter(isToolCall);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n\n protected assertContent(\n content: TextPart | ToolCallPart | FilePart,\n ): asserts content is TextPart | ToolCallPart | FilePart {\n if (content.type === \"tool-call\") {\n const key = \"args\";\n if (!Object.getOwnPropertyDescriptor(content, key)) {\n const args = popProp(content as any, key);\n\n if (args !== null && !hasProp(content, \"input\")) {\n Logger.root.warn(\n `The '${key}' property in the AssistantMessage class is deprecated and will be removed. Use the 'input' property for Tool Call content chunks instead.`,\n );\n content.input = args;\n }\n }\n\n safeDefineProperty(content, key as keyof typeof content, () => {\n Logger.root.warn(\n `The '${key}' property in the Tool Call is deprecated and will be removed. Use the 'input' property instead.`,\n );\n return content.input;\n });\n }\n }\n}\n\nexport class ToolMessage extends Message<ToolResultPart> {\n public readonly role = \"tool\";\n\n static {\n this.register();\n }\n\n getToolResults() {\n return this.content.filter(isToolResult);\n }\n\n protected fromString(text: string): ToolResultPart {\n const schema = z\n .object({\n type: z.literal(\"tool-result\"),\n toolName: z.string(),\n toolCallId: z.string(),\n })\n .and(z.object({ output: z.any() }).or(z.object({ result: z.any() })));\n\n const { success, data } = schema.safeParse(text);\n if (!success) {\n throw new ValueError(`ToolMessage cannot be created from '${text}'!`);\n }\n\n return data as ToolResultPart;\n }\n\n protected assertContent(content: ToolResultPart): asserts content is ToolResultPart {\n const result = popProp(content as any, \"result\", null);\n const isError = popProp(content as any, \"isError\", false);\n\n if (result !== null && !hasProp(content, \"output\")) {\n Logger.root.warn(\n \"The 'result' property in the ToolMessage class is deprecated and will be removed. Use the 'output' property for content chunks instead.\",\n );\n if (isString(result)) {\n content.output = { type: isError ? \"error-text\" : \"text\", value: result };\n } else {\n content.output = { type: isError ? \"error-json\" : \"json\", value: result };\n }\n }\n\n safeDefineProperty(content, \"result\" as any, () => {\n Logger.root.warn(\n \"The 'result' property of Tool Message is deprecated and will be removed. Use the 'output.value' property instead.\",\n );\n if (\"value\" in content.output) {\n return content.output.value;\n }\n return null;\n });\n safeDefineProperty(content, \"isError\" as any, () => {\n Logger.root.warn(\n \"The 'isError' property of Tool Message is deprecated and will be removed. Use the 'output.type' property instead.\",\n );\n return content.output.type.includes(\"error\");\n });\n }\n}\n\nexport class SystemMessage extends Message<TextPart> {\n public readonly role: MessageRole = \"system\";\n\n static {\n this.register();\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport class UserMessage extends Message<TextPart | ImagePart | FilePart> {\n public readonly role = \"user\";\n\n static {\n this.register();\n }\n\n getImages() {\n return this.content.filter(isImage);\n }\n\n getFiles() {\n return this.content.filter(isFile);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport const Role = {\n ASSISTANT: \"assistant\",\n SYSTEM: \"system\",\n USER: \"user\",\n} as const;\n\nexport class CustomMessage extends Message<MessageContentPart, string> {\n public role: string;\n\n constructor(\n role: string,\n content: MessageContentPart | string,\n meta: MessageMeta = {},\n id?: string,\n ) {\n super(content, meta, id);\n if (!role) {\n throw new ValueError(`Role \"${role}\" must be specified!`);\n }\n this.role = role;\n }\n\n protected fromString(input: string): MessageContentPart {\n return { type: \"text\", text: input };\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/message.ts"],"names":["isText","content","type","isImage","isFile","isToolCall","isToolResult","Message","Serializable","id","meta","undefined","createdAt","Date","fromString","Array","isArray","chunk","assertContent","watchArray","onAdd","of","role","text","UserMessage","AssistantMessage","SystemMessage","ToolMessage","CustomMessage","getTexts","map","c","join","filter","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","toPlain","merge","other","push","fromChunks","chunks","instance","forEach","Symbol","iterator","register","getToolCalls","key","getOwnPropertyDescriptor","args","popProp","hasProp","Logger","root","warn","input","safeDefineProperty","getToolResults","schema","z","object","literal","toolName","string","toolCallId","and","output","any","or","result","success","data","safeParse","ValueError","isError","isString","value","includes","getImages","getFiles","Role","ASSISTANT","SYSTEM","USER"],"mappings":"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","file":"message.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { FilePart, ImagePart, TextPart, ToolCallPart, ToolResultPart } from \"ai\";\nimport { z } from \"zod\";\nimport { ValueError } from \"@/errors.js\";\nimport { hasProp, popProp, safeDefineProperty } from \"@/internals/helpers/object.js\";\nimport { Logger } from \"@/logger/logger.js\";\nimport { isString } from \"remeda\";\nimport { watchArray } from \"@/internals/helpers/array.js\";\n\nexport type MessageRole = \"user\" | \"system\" | \"tool\" | \"assistant\";\nexport type MessageContentPart = TextPart | ToolCallPart | ImagePart | FilePart | ToolResultPart;\n\nexport interface MessageMeta {\n [key: string]: any;\n createdAt?: Date;\n}\n\nexport interface MessageInput {\n id?: string;\n role: MessageRole;\n text: string; // TODO\n meta?: MessageMeta;\n}\n\nfunction isText(content: MessageContentPart): content is TextPart {\n return content.type === \"text\";\n}\nfunction isImage(content: MessageContentPart): content is ImagePart {\n return content.type === \"image\";\n}\nfunction isFile(content: MessageContentPart): content is FilePart {\n return content.type === \"file\";\n}\nfunction isToolCall(content: MessageContentPart): content is ToolCallPart {\n return content.type === \"tool-call\";\n}\nfunction isToolResult(content: MessageContentPart): content is ToolResultPart {\n return content.type === \"tool-result\";\n}\n\nexport abstract class Message<\n T extends MessageContentPart = MessageContentPart,\n R extends string = MessageRole | string,\n> extends Serializable {\n public id: string | undefined;\n public abstract readonly role: R;\n public readonly content: T[];\n\n constructor(\n content: T | T[] | string,\n public readonly meta: MessageMeta = {},\n id: string | undefined = undefined,\n ) {\n super();\n this.id = id;\n if (!meta?.createdAt) {\n meta.createdAt = new Date();\n }\n if (typeof content === \"string\") {\n this.content = [this.fromString(content)];\n } else {\n this.content = Array.isArray(content) ? content : [content];\n }\n for (const chunk of this.content) {\n this.assertContent(chunk);\n }\n this.content = watchArray(this.content, {\n onAdd: this.assertContent,\n });\n }\n\n protected assertContent(content: T): asserts content is T {}\n\n protected abstract fromString(input: string): T;\n\n static of({ role, text, meta, id }: MessageInput): Message {\n if (role === \"user\") {\n return new UserMessage(text, meta, id);\n } else if (role === \"assistant\") {\n return new AssistantMessage(text, meta, id);\n } else if (role === \"system\") {\n return new SystemMessage(text, meta, id);\n } else if (role === \"tool\") {\n return new ToolMessage(text, meta, id);\n } else {\n return new CustomMessage(role, text, meta, id);\n }\n }\n\n get text() {\n return this.getTexts()\n .map((c) => c.text)\n .join(\"\");\n }\n\n getTexts() {\n return this.content.filter(isText) as TextPart[];\n }\n\n createSnapshot() {\n return {\n id: this.id,\n content: shallowCopy(this.content),\n meta: shallowCopy(this.meta),\n role: this.role,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n\n toPlain() {\n return { id: this.id, role: this.role, content: shallowCopy(this.content) } as const;\n }\n\n merge(other: Message<T, R>) {\n this.id = this.id || other.id;\n Object.assign(this, other.meta);\n this.content.push(...other.content);\n }\n\n static fromChunks<M2 extends Message>(this: new (...args: any[]) => M2, chunks: M2[]): M2 {\n const instance = new this([]);\n chunks.forEach((chunk) => instance.merge(chunk));\n return instance;\n }\n\n [Symbol.iterator](): Iterator<T> {\n return this.content[Symbol.iterator]();\n }\n}\n\nexport class AssistantMessage extends Message<TextPart | ToolCallPart | FilePart> {\n public readonly role = \"assistant\";\n\n static {\n this.register();\n }\n\n getToolCalls() {\n return this.content.filter(isToolCall);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n\n protected assertContent(\n content: TextPart | ToolCallPart | FilePart,\n ): asserts content is TextPart | ToolCallPart | FilePart {\n if (content.type === \"tool-call\") {\n const key = \"args\";\n if (!Object.getOwnPropertyDescriptor(content, key)) {\n const args = popProp(content as any, key);\n\n if (args !== null && !hasProp(content, \"input\")) {\n Logger.root.warn(\n `The '${key}' property in the AssistantMessage class is deprecated and will be removed. Use the 'input' property for Tool Call content chunks instead.`,\n );\n content.input = args;\n }\n }\n\n safeDefineProperty(content, key as keyof typeof content, () => {\n Logger.root.warn(\n `The '${key}' property in the Tool Call is deprecated and will be removed. Use the 'input' property instead.`,\n );\n return content.input;\n });\n }\n }\n}\n\nexport class ToolMessage extends Message<ToolResultPart> {\n public readonly role = \"tool\";\n\n static {\n this.register();\n }\n\n getToolResults() {\n return this.content.filter(isToolResult);\n }\n\n protected fromString(text: string): ToolResultPart {\n const schema = z\n .object({\n type: z.literal(\"tool-result\"),\n toolName: z.string(),\n toolCallId: z.string(),\n })\n .and(z.object({ output: z.any() }).or(z.object({ result: z.any() })));\n\n const { success, data } = schema.safeParse(text);\n if (!success) {\n throw new ValueError(`ToolMessage cannot be created from '${text}'!`);\n }\n\n return data as ToolResultPart;\n }\n\n protected assertContent(content: ToolResultPart): asserts content is ToolResultPart {\n const result = popProp(content as any, \"result\", null);\n const isError = popProp(content as any, \"isError\", false);\n\n if (result !== null && !hasProp(content, \"output\")) {\n Logger.root.warn(\n \"The 'result' property in the ToolMessage class is deprecated and will be removed. Use the 'output' property for content chunks instead.\",\n );\n if (isString(result)) {\n content.output = { type: isError ? \"error-text\" : \"text\", value: result };\n } else {\n content.output = { type: isError ? \"error-json\" : \"json\", value: result };\n }\n }\n\n safeDefineProperty(content, \"result\" as any, () => {\n Logger.root.warn(\n \"The 'result' property of Tool Message is deprecated and will be removed. Use the 'output.value' property instead.\",\n );\n if (\"value\" in content.output) {\n return content.output.value;\n }\n return null;\n });\n safeDefineProperty(content, \"isError\" as any, () => {\n Logger.root.warn(\n \"The 'isError' property of Tool Message is deprecated and will be removed. Use the 'output.type' property instead.\",\n );\n return content.output.type.includes(\"error\");\n });\n }\n}\n\nexport class SystemMessage extends Message<TextPart> {\n public readonly role: MessageRole = \"system\";\n\n static {\n this.register();\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport class UserMessage extends Message<TextPart | ImagePart | FilePart> {\n public readonly role = \"user\";\n\n static {\n this.register();\n }\n\n getImages() {\n return this.content.filter(isImage);\n }\n\n getFiles() {\n return this.content.filter(isFile);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport const Role = {\n ASSISTANT: \"assistant\",\n SYSTEM: \"system\",\n USER: \"user\",\n} as const;\n\nexport class CustomMessage extends Message<MessageContentPart, string> {\n public role: string;\n\n constructor(\n role: string,\n content: MessageContentPart | string,\n meta: MessageMeta = {},\n id?: string,\n ) {\n super(content, meta, id);\n if (!role) {\n throw new ValueError(`Role \"${role}\" must be specified!`);\n }\n this.role = role;\n }\n\n protected fromString(input: string): MessageContentPart {\n return { type: \"text\", text: input };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/message.ts"],"names":["isText","content","type","isImage","isFile","isToolCall","isToolResult","Message","Serializable","id","meta","undefined","createdAt","Date","fromString","Array","isArray","chunk","assertContent","watchArray","onAdd","of","role","text","UserMessage","AssistantMessage","SystemMessage","ToolMessage","CustomMessage","getTexts","map","c","join","filter","createSnapshot","shallowCopy","loadSnapshot","snapshot","Object","assign","toPlain","merge","other","push","fromChunks","chunks","instance","forEach","Symbol","iterator","register","getToolCalls","key","getOwnPropertyDescriptor","args","popProp","hasProp","Logger","root","warn","input","safeDefineProperty","getToolResults","schema","z","object","literal","toolName","string","toolCallId","and","output","any","or","result","success","data","safeParse","ValueError","isError","isString","value","includes","getImages","getFiles","Role","ASSISTANT","SYSTEM","USER"],"mappings":"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","file":"message.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { FilePart, ImagePart, TextPart, ToolCallPart, ToolResultPart } from \"ai\";\nimport { z } from \"zod\";\nimport { ValueError } from \"@/errors.js\";\nimport { hasProp, popProp, safeDefineProperty } from \"@/internals/helpers/object.js\";\nimport { Logger } from \"@/logger/logger.js\";\nimport { isString } from \"remeda\";\nimport { watchArray } from \"@/internals/helpers/array.js\";\n\nexport type MessageRole = \"user\" | \"system\" | \"tool\" | \"assistant\";\nexport type MessageContentPart = TextPart | ToolCallPart | ImagePart | FilePart | ToolResultPart;\n\nexport interface MessageMeta {\n [key: string]: any;\n createdAt?: Date;\n}\n\nexport interface MessageInput {\n id?: string;\n role: MessageRole;\n text: string; // TODO\n meta?: MessageMeta;\n}\n\nfunction isText(content: MessageContentPart): content is TextPart {\n return content.type === \"text\";\n}\nfunction isImage(content: MessageContentPart): content is ImagePart {\n return content.type === \"image\";\n}\nfunction isFile(content: MessageContentPart): content is FilePart {\n return content.type === \"file\";\n}\nfunction isToolCall(content: MessageContentPart): content is ToolCallPart {\n return content.type === \"tool-call\";\n}\nfunction isToolResult(content: MessageContentPart): content is ToolResultPart {\n return content.type === \"tool-result\";\n}\n\nexport abstract class Message<\n T extends MessageContentPart = MessageContentPart,\n R extends string = MessageRole | string,\n> extends Serializable {\n public id: string | undefined;\n public abstract readonly role: R;\n public readonly content: T[];\n\n constructor(\n content: T | T[] | string,\n public readonly meta: MessageMeta = {},\n id: string | undefined = undefined,\n ) {\n super();\n this.id = id;\n if (!meta?.createdAt) {\n meta.createdAt = new Date();\n }\n if (typeof content === \"string\") {\n this.content = [this.fromString(content)];\n } else {\n this.content = Array.isArray(content) ? content : [content];\n }\n for (const chunk of this.content) {\n this.assertContent(chunk);\n }\n this.content = watchArray(this.content, {\n onAdd: this.assertContent,\n });\n }\n\n protected assertContent(content: T): asserts content is T {}\n\n protected abstract fromString(input: string): T;\n\n static of({ role, text, meta, id }: MessageInput): Message {\n if (role === \"user\") {\n return new UserMessage(text, meta, id);\n } else if (role === \"assistant\") {\n return new AssistantMessage(text, meta, id);\n } else if (role === \"system\") {\n return new SystemMessage(text, meta, id);\n } else if (role === \"tool\") {\n return new ToolMessage(text, meta, id);\n } else {\n return new CustomMessage(role, text, meta, id);\n }\n }\n\n get text() {\n return this.getTexts()\n .map((c) => c.text)\n .join(\"\");\n }\n\n getTexts() {\n return this.content.filter(isText) as TextPart[];\n }\n\n createSnapshot() {\n return {\n id: this.id,\n content: shallowCopy(this.content),\n meta: shallowCopy(this.meta),\n role: this.role,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n\n toPlain() {\n return { id: this.id, role: this.role, content: shallowCopy(this.content) } as const;\n }\n\n merge(other: Message<T, R>) {\n this.id = this.id || other.id;\n Object.assign(this, other.meta);\n this.content.push(...other.content);\n }\n\n static fromChunks<M2 extends Message>(this: new (...args: any[]) => M2, chunks: M2[]): M2 {\n const instance = new this([]);\n chunks.forEach((chunk) => instance.merge(chunk));\n return instance;\n }\n\n [Symbol.iterator](): Iterator<T> {\n return this.content[Symbol.iterator]();\n }\n}\n\nexport class AssistantMessage extends Message<TextPart | ToolCallPart | FilePart> {\n public readonly role = \"assistant\";\n\n static {\n this.register();\n }\n\n getToolCalls() {\n return this.content.filter(isToolCall);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n\n protected assertContent(\n content: TextPart | ToolCallPart | FilePart,\n ): asserts content is TextPart | ToolCallPart | FilePart {\n if (content.type === \"tool-call\") {\n const key = \"args\";\n if (!Object.getOwnPropertyDescriptor(content, key)) {\n const args = popProp(content as any, key);\n\n if (args !== null && !hasProp(content, \"input\")) {\n Logger.root.warn(\n `The '${key}' property in the AssistantMessage class is deprecated and will be removed. Use the 'input' property for Tool Call content chunks instead.`,\n );\n content.input = args;\n }\n }\n\n safeDefineProperty(content, key as keyof typeof content, () => {\n Logger.root.warn(\n `The '${key}' property in the Tool Call is deprecated and will be removed. Use the 'input' property instead.`,\n );\n return content.input;\n });\n }\n }\n}\n\nexport class ToolMessage extends Message<ToolResultPart> {\n public readonly role = \"tool\";\n\n static {\n this.register();\n }\n\n getToolResults() {\n return this.content.filter(isToolResult);\n }\n\n protected fromString(text: string): ToolResultPart {\n const schema = z\n .object({\n type: z.literal(\"tool-result\"),\n toolName: z.string(),\n toolCallId: z.string(),\n })\n .and(z.object({ output: z.any() }).or(z.object({ result: z.any() })));\n\n const { success, data } = schema.safeParse(text);\n if (!success) {\n throw new ValueError(`ToolMessage cannot be created from '${text}'!`);\n }\n\n return data as ToolResultPart;\n }\n\n protected assertContent(content: ToolResultPart): asserts content is ToolResultPart {\n const result = popProp(content as any, \"result\", null);\n const isError = popProp(content as any, \"isError\", false);\n\n if (result !== null && !hasProp(content, \"output\")) {\n Logger.root.warn(\n \"The 'result' property in the ToolMessage class is deprecated and will be removed. Use the 'output' property for content chunks instead.\",\n );\n if (isString(result)) {\n content.output = { type: isError ? \"error-text\" : \"text\", value: result };\n } else {\n content.output = { type: isError ? \"error-json\" : \"json\", value: result };\n }\n }\n\n safeDefineProperty(content, \"result\" as any, () => {\n Logger.root.warn(\n \"The 'result' property of Tool Message is deprecated and will be removed. Use the 'output.value' property instead.\",\n );\n if (\"value\" in content.output) {\n return content.output.value;\n }\n return null;\n });\n safeDefineProperty(content, \"isError\" as any, () => {\n Logger.root.warn(\n \"The 'isError' property of Tool Message is deprecated and will be removed. Use the 'output.type' property instead.\",\n );\n return content.output.type.includes(\"error\");\n });\n }\n}\n\nexport class SystemMessage extends Message<TextPart> {\n public readonly role: MessageRole = \"system\";\n\n static {\n this.register();\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport class UserMessage extends Message<TextPart | ImagePart | FilePart> {\n public readonly role = \"user\";\n\n static {\n this.register();\n }\n\n getImages() {\n return this.content.filter(isImage);\n }\n\n getFiles() {\n return this.content.filter(isFile);\n }\n\n protected fromString(text: string): TextPart {\n return { type: \"text\", text };\n }\n}\n\nexport const Role = {\n ASSISTANT: \"assistant\",\n SYSTEM: \"system\",\n USER: \"user\",\n} as const;\n\nexport class CustomMessage extends Message<MessageContentPart, string> {\n public role: string;\n\n constructor(\n role: string,\n content: MessageContentPart | string,\n meta: MessageMeta = {},\n id?: string,\n ) {\n super(content, meta, id);\n if (!role) {\n throw new ValueError(`Role \"${role}\" must be specified!`);\n }\n this.role = role;\n }\n\n protected fromString(input: string): MessageContentPart {\n return { type: \"text\", text: input };\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/utils.ts"],"names":["findProviderDef","value","Object","values","BackendProviders","find","p","name","module","aliases","includes","parseModel","ValueError","providerId","rest","split","modelId","join","providerDef","loadModel","type","capitalize","generateToolUnionSchema","tools","isEmpty","schemas","Promise","all","map","tool","z","object","literal","parameters","inputSchema","hasMinLength","discriminatedUnion","filterToolsByToolChoice","Tool"],"mappings":";;;;;;;;;;;AAgBA,SAASA,gBAAgBC,KAAAA,EAAa;AACpC,EAAA,OACEC,OAAOC,MAAAA,CAAOC,8BAAAA,EAAkBC,IAAAA,CAC9B,CAACC,MAAMA,CAAAA,CAAEC,IAAAA,KAASN,KAAAA,IAASK,CAAAA,CAAEE,WAAWP,KAAAA,IAASK,CAAAA,CAAEG,QAAQC,QAAAA,CAAST,KAAAA,CAAAA,CAAAA,IACjE,IAAA;AAET;AANSD,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAQF,SAASW,WAAWJ,IAAAA,EAAY;AACrC,EAAA,IAAI,CAACA,IAAAA,EAAM;AACT,IAAA,MAAM,IAAIK,sBAAW,wDAAA,CAAA;AACvB;AACA,EAAA,MAAM,CAACC,UAAAA,EAAY,GAAGC,IAAAA,CAAAA,GAAQP,IAAAA,CAAKQ,MAAM,GAAA,CAAA;AACzC,EAAA,MAAMC,OAAAA,GAAUF,IAAAA,CAAKG,IAAAA,CAAK,GAAA,CAAA;AAE1B,EAAA,MAAMC,WAAAA,GAAclB,gBAAgBa,UAAAA,CAAAA;AACpC,EAAA,IAAI,CAACK,WAAAA,EAAa;AAChB,IAAA,MAAM,IAAIN,sBAAW,uCAAA,CAAA;AACvB;AACA,EAAA,OAAO;AAAEC,IAAAA,UAAAA;AAAYG,IAAAA,OAAAA;AAASE,IAAAA;AAAY,GAAA;AAC5C;AAZgBP,MAAAA,CAAAA,UAAAA,EAAAA,YAAAA,CAAAA;AAchB,eAAsBQ,SAAAA,CACpBZ,MACAa,IAAAA,EAA0B;AAE1B,EAAA,MAAM,EAAEF,WAAAA,EAAW,GAAKP,UAAAA,CAAWJ,IAAAA,CAAAA;AACnC,EAAA,MAAMC,SAAS,MAAM,OAAO,4BAA4BU,WAAAA,CAAYV,MAAM,YAAYY,IAAAA,CAAAA,CAAAA,CAAAA;AACtF,EAAA,OAAOZ,MAAAA,CAAO,GAAGU,WAAAA,CAAYX,IAAI,GAAGc,iBAAAA,CAAWD,IAAAA,CAAAA,CAAAA,KAAAA,CAAY,CAAA;AAC7D;AAPsBD,MAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAStB,eAAsBG,wBAAwBC,KAAAA,EAAgB;AAC5D,EAAA,IAAIC,cAAAA,CAAQD,KAAAA,CAAAA,EAAQ;AAClB,IAAA,MAAM,IAAIX,sBAAW,oBAAA,CAAA;AACvB;AAEA,EAAA,MAAMa,OAAAA,GAAU,MAAMC,OAAAA,CAAQC,GAAAA,CAC5BJ,MAAMK,GAAAA,CAAI,OAAOC,IAAAA,KACfC,KAAAA,CAAEC,MAAAA,CAAO;IACPxB,IAAAA,EAAMuB,KAAAA,CAAEE,OAAAA,CAAQH,IAAAA,CAAKtB,IAAI,CAAA;IACzB0B,UAAAA,EAAa,MAAMJ,KAAKK,WAAAA;AAC1B,GAAA,CAAA,CAAA,CAAA;AAIJ,EAAA,OAAOC,sBAAAA,CAAaV,OAAAA,EAAS,CAAA,CAAA,GAAKK,KAAAA,CAAEM,mBAAmB,MAAA,EAAQX,OAAAA,CAAAA,GAAWA,OAAAA,CAAQ,CAAA,CAAA;AACpF;AAfsBH,MAAAA,CAAAA,uBAAAA,EAAAA,yBAAAA,CAAAA;AAiBf,SAASe,uBAAAA,CAAwBd,OAAkBtB,KAAAA,EAA2B;AACnF,EAAA,IAAIA,UAAU,MAAA,EAAQ;AACpB,IAAA,OAAO,EAAA;AACT;AAEA,EAAA,IAAI,CAACA,KAAAA,IAASA,KAAAA,KAAU,UAAA,IAAcA,UAAU,MAAA,EAAQ;AACtD,IAAA,OAAOsB,KAAAA;AACT;AAEA,EAAA,IAAItB,iBAAiBqC,aAAAA,EAAM;AACzB,IAAA,MAAMT,OAAON,KAAAA,CAAMlB,IAAAA,CAAK,CAACwB,KAAAA,KAASA,UAAS5B,KAAAA,CAAAA;AAC3C,IAAA,IAAI,CAAC4B,IAAAA,EAAM;AACT,MAAA,MAAM,IAAIjB,sBAAW,CAAA,iDAAA,CAAmD,CAAA;AAC1E;AACA,IAAA,OAAO;AAACiB,MAAAA;;AACV;AAEA,EAAA,MAAM,IAAIjB,qBAAAA,CAAW,CAAA,8BAAA,EAAiCX,KAAAA,CAAAA,EAAAA,CAAS,CAAA;AACjE;AAlBgBoC,MAAAA,CAAAA,uBAAAA,EAAAA,yBAAAA,CAAAA","file":"utils.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ValueError } from \"@/errors.js\";\nimport { ClassConstructor } from \"@/internals/types.js\";\nimport { BackendProviders, ProviderDef, ProviderName } from \"@/backend/constants.js\";\nimport { capitalize, isEmpty } from \"remeda\";\nimport { AnyTool, Tool } from \"@/tools/base.js\";\nimport { ChatModelToolChoice } from \"@/backend/chat.js\";\nimport { hasMinLength } from \"@/internals/helpers/array.js\";\nimport { z, ZodSchema } from \"zod\";\n\nexport type FullModelName = `${ProviderName}:${string}`;\n\nfunction findProviderDef(value: string): ProviderDef | null {\n return (\n Object.values(BackendProviders).find(\n (p) => p.name === value || p.module === value || p.aliases.includes(value),\n ) ?? null\n );\n}\n\nexport function parseModel(name: string) {\n if (!name) {\n throw new ValueError(\"Neither 'provider' nor 'provider:model' was specified.\");\n }\n const [providerId, ...rest] = name.split(\":\") as [ProviderName, ...string[]];\n const modelId = rest.join(\":\");\n\n const providerDef = findProviderDef(providerId);\n if (!providerDef) {\n throw new ValueError(\"Model does not contain provider name!\");\n }\n return { providerId, modelId, providerDef };\n}\n\nexport async function loadModel<T>(\n name: ProviderName | FullModelName,\n type: \"embedding\" | \"chat\",\n): Promise<ClassConstructor<T>> {\n const { providerDef } = parseModel(name);\n const module = await import(`beeai-framework/adapters/${providerDef.module}/backend/${type}`);\n return module[`${providerDef.name}${capitalize(type)}Model`];\n}\n\nexport async function generateToolUnionSchema(tools: AnyTool[]): Promise<ZodSchema> {\n if (isEmpty(tools)) {\n throw new ValueError(\"No tools provided!\");\n }\n\n const schemas = await Promise.all(\n tools.map(async (tool) =>\n z.object({\n name: z.literal(tool.name),\n parameters: (await tool.inputSchema()) as ZodSchema,\n }),\n ),\n );\n\n return hasMinLength(schemas, 2) ? z.discriminatedUnion(\"name\", schemas) : schemas[0];\n}\n\nexport function filterToolsByToolChoice(tools: AnyTool[], value?: ChatModelToolChoice): AnyTool[] {\n if (value === \"none\") {\n return [];\n }\n\n if (!value || value === \"required\" || value === \"auto\") {\n return tools;\n }\n\n if (value instanceof Tool) {\n const tool = tools.find((tool) => tool === value);\n if (!tool) {\n throw new ValueError(`Invalid tool choice provided! Tool was not found.`);\n }\n return [tool];\n }\n\n throw new ValueError(`Invalid tool choice provided (${value})!`);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/utils.ts"],"names":["findProviderDef","value","Object","values","BackendProviders","find","p","name","module","aliases","includes","parseModel","ValueError","providerId","rest","split","modelId","join","providerDef","loadModel","type","capitalize","generateToolUnionSchema","tools","isEmpty","schemas","Promise","all","map","tool","z","object","literal","parameters","inputSchema","hasMinLength","discriminatedUnion","filterToolsByToolChoice","Tool"],"mappings":"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","file":"utils.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ValueError } from \"@/errors.js\";\nimport { ClassConstructor } from \"@/internals/types.js\";\nimport { BackendProviders, ProviderDef, ProviderName } from \"@/backend/constants.js\";\nimport { capitalize, isEmpty } from \"remeda\";\nimport { AnyTool, Tool } from \"@/tools/base.js\";\nimport { ChatModelToolChoice } from \"@/backend/chat.js\";\nimport { hasMinLength } from \"@/internals/helpers/array.js\";\nimport { z, ZodSchema } from \"zod\";\n\nexport type FullModelName = `${ProviderName}:${string}`;\n\nfunction findProviderDef(value: string): ProviderDef | null {\n return (\n Object.values(BackendProviders).find(\n (p) => p.name === value || p.module === value || p.aliases.includes(value),\n ) ?? null\n );\n}\n\nexport function parseModel(name: string) {\n if (!name) {\n throw new ValueError(\"Neither 'provider' nor 'provider:model' was specified.\");\n }\n const [providerId, ...rest] = name.split(\":\") as [ProviderName, ...string[]];\n const modelId = rest.join(\":\");\n\n const providerDef = findProviderDef(providerId);\n if (!providerDef) {\n throw new ValueError(\"Model does not contain provider name!\");\n }\n return { providerId, modelId, providerDef };\n}\n\nexport async function loadModel<T>(\n name: ProviderName | FullModelName,\n type: \"embedding\" | \"chat\",\n): Promise<ClassConstructor<T>> {\n const { providerDef } = parseModel(name);\n const module = await import(`beeai-framework/adapters/${providerDef.module}/backend/${type}`);\n return module[`${providerDef.name}${capitalize(type)}Model`];\n}\n\nexport async function generateToolUnionSchema(tools: AnyTool[]): Promise<ZodSchema> {\n if (isEmpty(tools)) {\n throw new ValueError(\"No tools provided!\");\n }\n\n const schemas = await Promise.all(\n tools.map(async (tool) =>\n z.object({\n name: z.literal(tool.name),\n parameters: (await tool.inputSchema()) as ZodSchema,\n }),\n ),\n );\n\n return hasMinLength(schemas, 2) ? z.discriminatedUnion(\"name\", schemas) : schemas[0];\n}\n\nexport function filterToolsByToolChoice(tools: AnyTool[], value?: ChatModelToolChoice): AnyTool[] {\n if (value === \"none\") {\n return [];\n }\n\n if (!value || value === \"required\" || value === \"auto\") {\n return tools;\n }\n\n if (value instanceof Tool) {\n const tool = tools.find((tool) => tool === value);\n if (!tool) {\n throw new ValueError(`Invalid tool choice provided! Tool was not found.`);\n }\n return [tool];\n }\n\n throw new ValueError(`Invalid tool choice provided (${value})!`);\n}\n"]}
|
package/dist/backend/utils.d.cts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import '../internals/types.cjs';
|
|
2
2
|
import './constants.cjs';
|
|
3
3
|
import '../tools/base.cjs';
|
|
4
|
-
export { F as FullModelName,
|
|
4
|
+
export { F as FullModelName, o as filterToolsByToolChoice, p as generateToolUnionSchema, q as loadModel, r as parseModel } from '../chat-C20nYj46.cjs';
|
|
5
5
|
import 'zod';
|
|
6
6
|
import '../internals/helpers/guards.cjs';
|
|
7
7
|
import 'ajv';
|
|
8
8
|
import '../context.cjs';
|
|
9
|
-
import '../emitter-
|
|
9
|
+
import '../emitter-D4OcelZ9.cjs';
|
|
10
10
|
import '../internals/serializable.cjs';
|
|
11
11
|
import '../internals/helpers/promise.cjs';
|
|
12
12
|
import '../errors.cjs';
|
package/dist/backend/utils.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import '../internals/types.js';
|
|
2
2
|
import './constants.js';
|
|
3
3
|
import '../tools/base.js';
|
|
4
|
-
export { F as FullModelName,
|
|
4
|
+
export { F as FullModelName, o as filterToolsByToolChoice, p as generateToolUnionSchema, q as loadModel, r as parseModel } from '../chat-CfTNfR60.js';
|
|
5
5
|
import 'zod';
|
|
6
6
|
import '../internals/helpers/guards.js';
|
|
7
7
|
import 'ajv';
|
|
8
8
|
import '../context.js';
|
|
9
|
-
import '../emitter-
|
|
9
|
+
import '../emitter-kHxkUxco.js';
|
|
10
10
|
import '../internals/serializable.js';
|
|
11
11
|
import '../internals/helpers/promise.js';
|
|
12
12
|
import '../errors.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/backend/utils.ts"],"names":["findProviderDef","value","Object","values","BackendProviders","find","p","name","module","aliases","includes","parseModel","ValueError","providerId","rest","split","modelId","join","providerDef","loadModel","type","capitalize","generateToolUnionSchema","tools","isEmpty","schemas","Promise","all","map","tool","z","object","literal","parameters","inputSchema","hasMinLength","discriminatedUnion","filterToolsByToolChoice","Tool"],"mappings":"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","file":"utils.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ValueError } from \"@/errors.js\";\nimport { ClassConstructor } from \"@/internals/types.js\";\nimport { BackendProviders, ProviderDef, ProviderName } from \"@/backend/constants.js\";\nimport { capitalize, isEmpty } from \"remeda\";\nimport { AnyTool, Tool } from \"@/tools/base.js\";\nimport { ChatModelToolChoice } from \"@/backend/chat.js\";\nimport { hasMinLength } from \"@/internals/helpers/array.js\";\nimport { z, ZodSchema } from \"zod\";\n\nexport type FullModelName = `${ProviderName}:${string}`;\n\nfunction findProviderDef(value: string): ProviderDef | null {\n return (\n Object.values(BackendProviders).find(\n (p) => p.name === value || p.module === value || p.aliases.includes(value),\n ) ?? null\n );\n}\n\nexport function parseModel(name: string) {\n if (!name) {\n throw new ValueError(\"Neither 'provider' nor 'provider:model' was specified.\");\n }\n const [providerId, ...rest] = name.split(\":\") as [ProviderName, ...string[]];\n const modelId = rest.join(\":\");\n\n const providerDef = findProviderDef(providerId);\n if (!providerDef) {\n throw new ValueError(\"Model does not contain provider name!\");\n }\n return { providerId, modelId, providerDef };\n}\n\nexport async function loadModel<T>(\n name: ProviderName | FullModelName,\n type: \"embedding\" | \"chat\",\n): Promise<ClassConstructor<T>> {\n const { providerDef } = parseModel(name);\n const module = await import(`beeai-framework/adapters/${providerDef.module}/backend/${type}`);\n return module[`${providerDef.name}${capitalize(type)}Model`];\n}\n\nexport async function generateToolUnionSchema(tools: AnyTool[]): Promise<ZodSchema> {\n if (isEmpty(tools)) {\n throw new ValueError(\"No tools provided!\");\n }\n\n const schemas = await Promise.all(\n tools.map(async (tool) =>\n z.object({\n name: z.literal(tool.name),\n parameters: (await tool.inputSchema()) as ZodSchema,\n }),\n ),\n );\n\n return hasMinLength(schemas, 2) ? z.discriminatedUnion(\"name\", schemas) : schemas[0];\n}\n\nexport function filterToolsByToolChoice(tools: AnyTool[], value?: ChatModelToolChoice): AnyTool[] {\n if (value === \"none\") {\n return [];\n }\n\n if (!value || value === \"required\" || value === \"auto\") {\n return tools;\n }\n\n if (value instanceof Tool) {\n const tool = tools.find((tool) => tool === value);\n if (!tool) {\n throw new ValueError(`Invalid tool choice provided! Tool was not found.`);\n }\n return [tool];\n }\n\n throw new ValueError(`Invalid tool choice provided (${value})!`);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/backend/utils.ts"],"names":["findProviderDef","value","Object","values","BackendProviders","find","p","name","module","aliases","includes","parseModel","ValueError","providerId","rest","split","modelId","join","providerDef","loadModel","type","capitalize","generateToolUnionSchema","tools","isEmpty","schemas","Promise","all","map","tool","z","object","literal","parameters","inputSchema","hasMinLength","discriminatedUnion","filterToolsByToolChoice","Tool"],"mappings":"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","file":"utils.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ValueError } from \"@/errors.js\";\nimport { ClassConstructor } from \"@/internals/types.js\";\nimport { BackendProviders, ProviderDef, ProviderName } from \"@/backend/constants.js\";\nimport { capitalize, isEmpty } from \"remeda\";\nimport { AnyTool, Tool } from \"@/tools/base.js\";\nimport { ChatModelToolChoice } from \"@/backend/chat.js\";\nimport { hasMinLength } from \"@/internals/helpers/array.js\";\nimport { z, ZodSchema } from \"zod\";\n\nexport type FullModelName = `${ProviderName}:${string}`;\n\nfunction findProviderDef(value: string): ProviderDef | null {\n return (\n Object.values(BackendProviders).find(\n (p) => p.name === value || p.module === value || p.aliases.includes(value),\n ) ?? null\n );\n}\n\nexport function parseModel(name: string) {\n if (!name) {\n throw new ValueError(\"Neither 'provider' nor 'provider:model' was specified.\");\n }\n const [providerId, ...rest] = name.split(\":\") as [ProviderName, ...string[]];\n const modelId = rest.join(\":\");\n\n const providerDef = findProviderDef(providerId);\n if (!providerDef) {\n throw new ValueError(\"Model does not contain provider name!\");\n }\n return { providerId, modelId, providerDef };\n}\n\nexport async function loadModel<T>(\n name: ProviderName | FullModelName,\n type: \"embedding\" | \"chat\",\n): Promise<ClassConstructor<T>> {\n const { providerDef } = parseModel(name);\n const module = await import(`beeai-framework/adapters/${providerDef.module}/backend/${type}`);\n return module[`${providerDef.name}${capitalize(type)}Model`];\n}\n\nexport async function generateToolUnionSchema(tools: AnyTool[]): Promise<ZodSchema> {\n if (isEmpty(tools)) {\n throw new ValueError(\"No tools provided!\");\n }\n\n const schemas = await Promise.all(\n tools.map(async (tool) =>\n z.object({\n name: z.literal(tool.name),\n parameters: (await tool.inputSchema()) as ZodSchema,\n }),\n ),\n );\n\n return hasMinLength(schemas, 2) ? z.discriminatedUnion(\"name\", schemas) : schemas[0];\n}\n\nexport function filterToolsByToolChoice(tools: AnyTool[], value?: ChatModelToolChoice): AnyTool[] {\n if (value === \"none\") {\n return [];\n }\n\n if (!value || value === \"required\" || value === \"auto\") {\n return tools;\n }\n\n if (value instanceof Tool) {\n const tool = tools.find((tool) => tool === value);\n if (!tool) {\n throw new ValueError(`Invalid tool choice provided! Tool was not found.`);\n }\n return [tool];\n }\n\n throw new ValueError(`Invalid tool choice provided (${value})!`);\n}\n"]}
|