beeai-framework 0.1.19 → 0.1.21
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 +4 -4
- 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 +4 -4
- 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 +2 -2
- package/dist/adapters/a2a/agents/utils.cjs.map +1 -1
- package/dist/adapters/a2a/agents/utils.js +2 -2
- package/dist/adapters/a2a/agents/utils.js.map +1 -1
- package/dist/adapters/a2a/serve/agent_executor.cjs +1 -3
- package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -1
- package/dist/adapters/a2a/serve/agent_executor.d.cts +4 -3
- package/dist/adapters/a2a/serve/agent_executor.d.ts +4 -3
- package/dist/adapters/a2a/serve/agent_executor.js +1 -3
- package/dist/adapters/a2a/serve/agent_executor.js.map +1 -1
- package/dist/adapters/a2a/serve/server.cjs +15 -0
- package/dist/adapters/a2a/serve/server.cjs.map +1 -1
- package/dist/adapters/a2a/serve/server.d.cts +4 -2
- package/dist/adapters/a2a/serve/server.d.ts +4 -2
- package/dist/adapters/a2a/serve/server.js +15 -0
- package/dist/adapters/a2a/serve/server.js.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/events.d.cts +1 -1
- package/dist/adapters/acp/agents/events.d.ts +1 -1
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.cjs +4 -4
- package/dist/adapters/agentstack/agents/agent.cjs.map +1 -0
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.cts +12 -12
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.ts +12 -12
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.js +4 -4
- package/dist/adapters/agentstack/agents/agent.js.map +1 -0
- package/dist/adapters/agentstack/agents/events.d.cts +23 -0
- package/dist/adapters/agentstack/agents/events.d.ts +23 -0
- package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.cts +4 -4
- package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.ts +4 -4
- package/dist/adapters/amazon-bedrock/backend/chat.cjs +3 -2
- package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/chat.d.cts +5 -6
- package/dist/adapters/amazon-bedrock/backend/chat.d.ts +5 -6
- package/dist/adapters/amazon-bedrock/backend/chat.js +3 -2
- package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs +2 -2
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +4 -4
- package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +4 -4
- package/dist/adapters/amazon-bedrock/backend/embedding.js +2 -2
- package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
- package/dist/adapters/anthropic/backend/chat.cjs +3 -2
- package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/chat.d.cts +5 -6
- package/dist/adapters/anthropic/backend/chat.d.ts +5 -6
- package/dist/adapters/anthropic/backend/chat.js +3 -2
- package/dist/adapters/anthropic/backend/chat.js.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/azure-openai/backend/chat.cjs +3 -2
- package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/chat.d.cts +5 -6
- package/dist/adapters/azure-openai/backend/chat.d.ts +5 -6
- package/dist/adapters/azure-openai/backend/chat.js +3 -2
- package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.cjs +2 -2
- package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.d.cts +3 -3
- package/dist/adapters/azure-openai/backend/embedding.d.ts +3 -3
- package/dist/adapters/azure-openai/backend/embedding.js +2 -2
- package/dist/adapters/azure-openai/backend/embedding.js.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/embedding.d.cts +2 -2
- package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
- package/dist/adapters/google-vertex/backend/chat.cjs +3 -2
- package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/chat.d.cts +5 -6
- package/dist/adapters/google-vertex/backend/chat.d.ts +5 -6
- package/dist/adapters/google-vertex/backend/chat.js +3 -2
- package/dist/adapters/google-vertex/backend/chat.js.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/groq/backend/chat.cjs +3 -2
- package/dist/adapters/groq/backend/chat.cjs.map +1 -1
- package/dist/adapters/groq/backend/chat.d.cts +5 -6
- package/dist/adapters/groq/backend/chat.d.ts +5 -6
- package/dist/adapters/groq/backend/chat.js +3 -2
- package/dist/adapters/groq/backend/chat.js.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/langchain/backend/chat.cjs +6 -5
- package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
- package/dist/adapters/langchain/backend/chat.d.cts +2 -2
- package/dist/adapters/langchain/backend/chat.d.ts +2 -2
- package/dist/adapters/langchain/backend/chat.js +6 -5
- package/dist/adapters/langchain/backend/chat.js.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/tools.d.cts +1 -1
- package/dist/adapters/langchain/tools.d.ts +1 -1
- package/dist/adapters/mcp/serve/server.cjs +12 -4
- package/dist/adapters/mcp/serve/server.cjs.map +1 -1
- package/dist/adapters/mcp/serve/server.d.cts +1 -1
- package/dist/adapters/mcp/serve/server.d.ts +1 -1
- package/dist/adapters/mcp/serve/server.js +12 -4
- package/dist/adapters/mcp/serve/server.js.map +1 -1
- package/dist/adapters/ollama/backend/chat.cjs +1 -4
- package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
- package/dist/adapters/ollama/backend/chat.d.cts +4 -4
- package/dist/adapters/ollama/backend/chat.d.ts +4 -4
- package/dist/adapters/ollama/backend/chat.js +1 -4
- package/dist/adapters/ollama/backend/chat.js.map +1 -1
- package/dist/adapters/ollama/backend/client.cjs +2 -2
- package/dist/adapters/ollama/backend/client.cjs.map +1 -1
- package/dist/adapters/ollama/backend/client.d.cts +1 -1
- package/dist/adapters/ollama/backend/client.d.ts +1 -1
- package/dist/adapters/ollama/backend/client.js +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 +3 -3
- package/dist/adapters/ollama/backend/embedding.d.ts +3 -3
- package/dist/adapters/ollama/backend/embedding.js.map +1 -1
- package/dist/adapters/openai/backend/chat.cjs +3 -2
- package/dist/adapters/openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/openai/backend/chat.d.cts +5 -6
- package/dist/adapters/openai/backend/chat.d.ts +5 -6
- package/dist/adapters/openai/backend/chat.js +3 -2
- package/dist/adapters/openai/backend/chat.js.map +1 -1
- package/dist/adapters/openai/backend/client.cjs +2 -11
- package/dist/adapters/openai/backend/client.cjs.map +1 -1
- package/dist/adapters/openai/backend/client.js +3 -12
- package/dist/adapters/openai/backend/client.js.map +1 -1
- package/dist/adapters/openai/backend/embedding.cjs +2 -2
- package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/openai/backend/embedding.d.cts +4 -4
- package/dist/adapters/openai/backend/embedding.d.ts +4 -4
- package/dist/adapters/openai/backend/embedding.js +2 -2
- package/dist/adapters/openai/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/chat.cjs +26 -21
- package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
- package/dist/adapters/vercel/backend/chat.d.cts +6 -4
- package/dist/adapters/vercel/backend/chat.d.ts +6 -4
- package/dist/adapters/vercel/backend/chat.js +27 -22
- 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 +3 -3
- package/dist/adapters/vercel/backend/embedding.d.ts +3 -3
- package/dist/adapters/vercel/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/utils.cjs +11 -0
- package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
- package/dist/adapters/vercel/backend/utils.d.cts +19 -2
- package/dist/adapters/vercel/backend/utils.d.ts +19 -2
- package/dist/adapters/vercel/backend/utils.js +11 -1
- package/dist/adapters/vercel/backend/utils.js.map +1 -1
- package/dist/adapters/watsonx/backend/chat.cjs +10 -4
- 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 +10 -4
- package/dist/adapters/watsonx/backend/chat.js.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/xai/backend/chat.cjs +3 -2
- package/dist/adapters/xai/backend/chat.cjs.map +1 -1
- package/dist/adapters/xai/backend/chat.d.cts +5 -6
- package/dist/adapters/xai/backend/chat.d.ts +5 -6
- package/dist/adapters/xai/backend/chat.js +3 -2
- package/dist/adapters/xai/backend/chat.js.map +1 -1
- package/dist/{agent-7NzfPC6d.d.ts → agent-CHebzsQB.d.ts} +4 -4
- package/dist/{agent-B6pOfx0K.d.cts → agent-DvvVGvLr.d.cts} +4 -4
- package/dist/agents/base.d.cts +2 -2
- package/dist/agents/base.d.ts +2 -2
- 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/prompts.d.cts +1 -1
- package/dist/agents/experimental/replan/prompts.d.ts +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/react/agent.d.cts +5 -4
- package/dist/agents/react/agent.d.ts +5 -4
- package/dist/agents/react/prompts.d.cts +1 -1
- package/dist/agents/react/prompts.d.ts +1 -1
- package/dist/agents/react/runners/base.cjs.map +1 -1
- package/dist/agents/react/runners/base.d.cts +5 -4
- package/dist/agents/react/runners/base.d.ts +5 -4
- package/dist/agents/react/runners/base.js.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/runner.d.cts +6 -5
- package/dist/agents/react/runners/deep-think/runner.d.ts +6 -5
- package/dist/agents/react/runners/default/runner.cjs.map +1 -1
- package/dist/agents/react/runners/default/runner.d.cts +6 -5
- package/dist/agents/react/runners/default/runner.d.ts +6 -5
- package/dist/agents/react/runners/default/runner.js.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/runner.cjs +4 -2
- package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
- package/dist/agents/react/runners/granite/runner.d.cts +6 -5
- package/dist/agents/react/runners/granite/runner.d.ts +6 -5
- package/dist/agents/react/runners/granite/runner.js +4 -2
- package/dist/agents/react/runners/granite/runner.js.map +1 -1
- package/dist/agents/react/types.d.cts +3 -2
- package/dist/agents/react/types.d.ts +3 -2
- package/dist/agents/toolCalling/agent.cjs +9 -5
- package/dist/agents/toolCalling/agent.cjs.map +1 -1
- package/dist/agents/toolCalling/agent.d.cts +3 -3
- package/dist/agents/toolCalling/agent.d.ts +3 -3
- package/dist/agents/toolCalling/agent.js +9 -5
- package/dist/agents/toolCalling/agent.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.d.cts +2 -2
- package/dist/backend/backend.d.ts +2 -2
- package/dist/backend/chat.cjs +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 +1 -1
- package/dist/backend/chat.js.map +1 -1
- package/dist/backend/core.d.cts +2 -2
- package/dist/backend/core.d.ts +2 -2
- package/dist/backend/embedding.d.cts +2 -2
- package/dist/backend/embedding.d.ts +2 -2
- package/dist/backend/message.cjs +59 -3
- package/dist/backend/message.cjs.map +1 -1
- package/dist/backend/message.d.cts +3 -0
- package/dist/backend/message.d.ts +3 -0
- package/dist/backend/message.js +59 -3
- package/dist/backend/message.js.map +1 -1
- package/dist/backend/utils.d.cts +2 -2
- package/dist/backend/utils.d.ts +2 -2
- package/dist/{base-Bguef5Dg.d.ts → base-BQgDlcGa.d.ts} +1 -1
- package/dist/{base-C1hO5EJe.d.cts → base-CwcxwybB.d.cts} +1 -1
- package/dist/cache/fileCache.cjs.map +1 -1
- package/dist/cache/fileCache.js.map +1 -1
- package/dist/{chat-BBoOSvzm.d.ts → chat-C0s-o6ll.d.ts} +4 -2
- package/dist/{chat-BZ55YQab.d.cts → chat-CRb3vUVg.d.cts} +4 -2
- package/dist/context.d.cts +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/emitter/emitter.d.cts +1 -1
- package/dist/emitter/emitter.d.ts +1 -1
- package/dist/emitter/types.d.cts +1 -1
- package/dist/emitter/types.d.ts +1 -1
- package/dist/{emitter-BqpLJQVb.d.ts → emitter-CZFbzlUi.d.ts} +3 -3
- package/dist/{emitter-pJzHC_AM.d.cts → emitter-DpqUYjXH.d.cts} +3 -3
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/internals/fetcher.d.cts +1 -1
- package/dist/internals/fetcher.d.ts +1 -1
- package/dist/internals/helpers/array.cjs +35 -0
- package/dist/internals/helpers/array.cjs.map +1 -1
- package/dist/internals/helpers/array.d.cts +6 -1
- package/dist/internals/helpers/array.d.ts +6 -1
- package/dist/internals/helpers/array.js +35 -1
- package/dist/internals/helpers/array.js.map +1 -1
- package/dist/internals/helpers/object.cjs +30 -5
- package/dist/internals/helpers/object.cjs.map +1 -1
- package/dist/internals/helpers/object.d.cts +3 -2
- package/dist/internals/helpers/object.d.ts +3 -2
- package/dist/internals/helpers/object.js +29 -5
- package/dist/internals/helpers/object.js.map +1 -1
- package/dist/logger/logger.cjs +8 -4
- package/dist/logger/logger.cjs.map +1 -1
- package/dist/logger/logger.d.cts +21 -15
- package/dist/logger/logger.d.ts +21 -15
- package/dist/logger/logger.js +6 -3
- package/dist/logger/logger.js.map +1 -1
- package/dist/logger/pretty.cjs +2 -2
- package/dist/logger/pretty.cjs.map +1 -1
- package/dist/logger/pretty.js +2 -2
- package/dist/logger/pretty.js.map +1 -1
- package/dist/memory/summarizeMemory.d.cts +2 -2
- package/dist/memory/summarizeMemory.d.ts +2 -2
- package/dist/parsers/linePrefix.cjs.map +1 -1
- package/dist/parsers/linePrefix.d.cts +4 -8
- package/dist/parsers/linePrefix.d.ts +4 -8
- package/dist/parsers/linePrefix.js.map +1 -1
- package/dist/serializer/utils.cjs.map +1 -1
- package/dist/serializer/utils.js.map +1 -1
- package/dist/tools/arxiv.cjs.map +1 -1
- package/dist/tools/arxiv.d.cts +1 -1
- package/dist/tools/arxiv.d.ts +1 -1
- 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.d.cts +1 -1
- package/dist/tools/calculator.d.ts +1 -1
- package/dist/tools/custom.d.cts +2 -2
- package/dist/tools/custom.d.ts +2 -2
- package/dist/tools/database/elasticsearch.cjs.map +1 -1
- package/dist/tools/database/elasticsearch.d.cts +1 -1
- package/dist/tools/database/elasticsearch.d.ts +1 -1
- package/dist/tools/database/elasticsearch.js.map +1 -1
- package/dist/tools/database/milvus.cjs +3 -3
- package/dist/tools/database/milvus.cjs.map +1 -1
- package/dist/tools/database/milvus.d.cts +1 -1
- package/dist/tools/database/milvus.d.ts +1 -1
- package/dist/tools/database/milvus.js +3 -3
- package/dist/tools/database/milvus.js.map +1 -1
- package/dist/tools/database/qdrant.cjs +2 -2
- package/dist/tools/database/qdrant.cjs.map +1 -1
- package/dist/tools/database/qdrant.d.cts +1 -1
- package/dist/tools/database/qdrant.d.ts +1 -1
- package/dist/tools/database/qdrant.js +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 +1 -1
- package/dist/tools/database/sql.d.ts +1 -1
- package/dist/tools/database/sql.js.map +1 -1
- package/dist/tools/llm.d.cts +2 -2
- package/dist/tools/llm.d.ts +2 -2
- package/dist/tools/mcp.d.cts +1 -1
- package/dist/tools/mcp.d.ts +1 -1
- package/dist/tools/openapi.d.cts +1 -1
- package/dist/tools/openapi.d.ts +1 -1
- package/dist/tools/python/output.d.cts +1 -1
- package/dist/tools/python/output.d.ts +1 -1
- package/dist/tools/python/python.d.cts +2 -2
- package/dist/tools/python/python.d.ts +2 -2
- package/dist/tools/search/base.cjs.map +1 -1
- package/dist/tools/search/base.d.cts +1 -1
- package/dist/tools/search/base.d.ts +1 -1
- 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 +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
- 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 +1 -1
- package/dist/tools/search/googleSearch.d.ts +1 -1
- package/dist/tools/search/googleSearch.js.map +1 -1
- package/dist/tools/search/searXNGSearch.d.cts +1 -1
- package/dist/tools/search/searXNGSearch.d.ts +1 -1
- package/dist/tools/search/wikipedia.cjs +25 -0
- package/dist/tools/search/wikipedia.cjs.map +1 -1
- package/dist/tools/search/wikipedia.d.cts +2 -3
- package/dist/tools/search/wikipedia.d.ts +2 -3
- package/dist/tools/search/wikipedia.js +23 -0
- package/dist/tools/search/wikipedia.js.map +1 -1
- package/dist/tools/similarity.d.cts +1 -1
- package/dist/tools/similarity.d.ts +1 -1
- package/dist/tools/weather/openMeteo.cjs.map +1 -1
- package/dist/tools/weather/openMeteo.d.cts +1 -1
- package/dist/tools/weather/openMeteo.d.ts +1 -1
- 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 +1 -1
- package/dist/tools/web/webCrawler.d.ts +1 -1
- package/dist/tools/web/webCrawler.js.map +1 -1
- package/dist/version.cjs +1 -1
- package/dist/version.js +1 -1
- package/dist/workflows/agent.d.cts +3 -3
- package/dist/workflows/agent.d.ts +3 -3
- package/dist/workflows/workflow.d.cts +1 -1
- package/dist/workflows/workflow.d.ts +1 -1
- package/package.json +68 -67
- package/dist/adapters/beeai_platform/agents/agent.cjs.map +0 -1
- package/dist/adapters/beeai_platform/agents/agent.js.map +0 -1
- package/dist/adapters/beeai_platform/agents/events.d.cts +0 -23
- package/dist/adapters/beeai_platform/agents/events.d.ts +0 -23
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs.map +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js.map +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs.map +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PromptTemplate } from '../../../../template.cjs';
|
|
2
|
-
import { B as BaseRunner,
|
|
2
|
+
import { B as BaseRunner, R as ReActAgentRunnerLLMInput, a as ReActAgentRunnerToolInput } from '../../../../agent-DvvVGvLr.cjs';
|
|
3
3
|
import { ReActAgentRunIteration, ReActAgentRunInput, ReActAgentParserInput } from '../../types.cjs';
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.cjs';
|
|
5
5
|
import { LinePrefixParser } from '../../../../parsers/linePrefix.cjs';
|
|
@@ -12,10 +12,10 @@ import '../../../../internals/helpers/guards.cjs';
|
|
|
12
12
|
import '../../../../internals/serializable.cjs';
|
|
13
13
|
import 'ajv';
|
|
14
14
|
import '../../../../context.cjs';
|
|
15
|
-
import '../../../../emitter-
|
|
15
|
+
import '../../../../emitter-DpqUYjXH.cjs';
|
|
16
16
|
import '../../../../internals/helpers/promise.cjs';
|
|
17
|
-
import '../../../../base-
|
|
18
|
-
import '../../../../chat-
|
|
17
|
+
import '../../../../base-CwcxwybB.cjs';
|
|
18
|
+
import '../../../../chat-CRb3vUVg.cjs';
|
|
19
19
|
import 'ai';
|
|
20
20
|
import 'promise-based-task';
|
|
21
21
|
import '../../../../cache/base.cjs';
|
|
@@ -29,6 +29,7 @@ import '@streamparser/json';
|
|
|
29
29
|
import 'jsonrepair/stream';
|
|
30
30
|
import '../../../../internals/helpers/schema.cjs';
|
|
31
31
|
import 'zod-to-json-schema';
|
|
32
|
+
import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
|
|
32
33
|
import '../../../../parsers/errors.cjs';
|
|
33
34
|
|
|
34
35
|
declare class DefaultRunner extends BaseRunner {
|
|
@@ -51,12 +52,12 @@ declare class DefaultRunner extends BaseRunner {
|
|
|
51
52
|
}, z.ZodTypeAny, "passthrough">>, "many">;
|
|
52
53
|
createdAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
53
54
|
}, "strip", z.ZodTypeAny, {
|
|
55
|
+
instructions: string;
|
|
54
56
|
tools: z.objectOutputType<{
|
|
55
57
|
name: z.ZodString;
|
|
56
58
|
description: z.ZodString;
|
|
57
59
|
schema: z.ZodString;
|
|
58
60
|
}, z.ZodTypeAny, "passthrough">[];
|
|
59
|
-
instructions: string;
|
|
60
61
|
createdAt?: string | null | undefined;
|
|
61
62
|
}, {
|
|
62
63
|
tools: z.objectInputType<{
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PromptTemplate } from '../../../../template.js';
|
|
2
|
-
import { B as BaseRunner,
|
|
2
|
+
import { B as BaseRunner, R as ReActAgentRunnerLLMInput, a as ReActAgentRunnerToolInput } from '../../../../agent-CHebzsQB.js';
|
|
3
3
|
import { ReActAgentRunIteration, ReActAgentRunInput, ReActAgentParserInput } from '../../types.js';
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.js';
|
|
5
5
|
import { LinePrefixParser } from '../../../../parsers/linePrefix.js';
|
|
@@ -12,10 +12,10 @@ import '../../../../internals/helpers/guards.js';
|
|
|
12
12
|
import '../../../../internals/serializable.js';
|
|
13
13
|
import 'ajv';
|
|
14
14
|
import '../../../../context.js';
|
|
15
|
-
import '../../../../emitter-
|
|
15
|
+
import '../../../../emitter-CZFbzlUi.js';
|
|
16
16
|
import '../../../../internals/helpers/promise.js';
|
|
17
|
-
import '../../../../base-
|
|
18
|
-
import '../../../../chat-
|
|
17
|
+
import '../../../../base-BQgDlcGa.js';
|
|
18
|
+
import '../../../../chat-C0s-o6ll.js';
|
|
19
19
|
import 'ai';
|
|
20
20
|
import 'promise-based-task';
|
|
21
21
|
import '../../../../cache/base.js';
|
|
@@ -29,6 +29,7 @@ import '@streamparser/json';
|
|
|
29
29
|
import 'jsonrepair/stream';
|
|
30
30
|
import '../../../../internals/helpers/schema.js';
|
|
31
31
|
import 'zod-to-json-schema';
|
|
32
|
+
import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
|
|
32
33
|
import '../../../../parsers/errors.js';
|
|
33
34
|
|
|
34
35
|
declare class DefaultRunner extends BaseRunner {
|
|
@@ -51,12 +52,12 @@ declare class DefaultRunner extends BaseRunner {
|
|
|
51
52
|
}, z.ZodTypeAny, "passthrough">>, "many">;
|
|
52
53
|
createdAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
53
54
|
}, "strip", z.ZodTypeAny, {
|
|
55
|
+
instructions: string;
|
|
54
56
|
tools: z.objectOutputType<{
|
|
55
57
|
name: z.ZodString;
|
|
56
58
|
description: z.ZodString;
|
|
57
59
|
schema: z.ZodString;
|
|
58
60
|
}, z.ZodTypeAny, "passthrough">[];
|
|
59
|
-
instructions: string;
|
|
60
61
|
createdAt?: string | null | undefined;
|
|
61
62
|
}, {
|
|
62
63
|
tools: z.objectInputType<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
|
|
@@ -46,12 +46,12 @@ declare const GraniteReActAgentSystemPrompt: PromptTemplate<zod.ZodObject<{
|
|
|
46
46
|
}, zod.ZodTypeAny, "passthrough">>, "many">;
|
|
47
47
|
createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
|
|
48
48
|
}, "strip", zod.ZodTypeAny, {
|
|
49
|
+
instructions: string;
|
|
49
50
|
tools: zod.objectOutputType<{
|
|
50
51
|
name: zod.ZodString;
|
|
51
52
|
description: zod.ZodString;
|
|
52
53
|
schema: zod.ZodString;
|
|
53
54
|
}, zod.ZodTypeAny, "passthrough">[];
|
|
54
|
-
instructions: string;
|
|
55
55
|
createdAt?: string | null | undefined;
|
|
56
56
|
}, {
|
|
57
57
|
tools: zod.objectInputType<{
|
|
@@ -46,12 +46,12 @@ declare const GraniteReActAgentSystemPrompt: PromptTemplate<zod.ZodObject<{
|
|
|
46
46
|
}, zod.ZodTypeAny, "passthrough">>, "many">;
|
|
47
47
|
createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
|
|
48
48
|
}, "strip", zod.ZodTypeAny, {
|
|
49
|
+
instructions: string;
|
|
49
50
|
tools: zod.objectOutputType<{
|
|
50
51
|
name: zod.ZodString;
|
|
51
52
|
description: zod.ZodString;
|
|
52
53
|
schema: zod.ZodString;
|
|
53
54
|
}, zod.ZodTypeAny, "passthrough">[];
|
|
54
|
-
instructions: string;
|
|
55
55
|
createdAt?: string | null | undefined;
|
|
56
56
|
}, {
|
|
57
57
|
tools: zod.objectInputType<{
|
|
@@ -47,9 +47,11 @@ class GraniteRunner extends runner_cjs.DefaultRunner {
|
|
|
47
47
|
if (update.key === "tool_output") {
|
|
48
48
|
await memory.add(new message_cjs.ToolMessage({
|
|
49
49
|
type: "tool-result",
|
|
50
|
-
|
|
50
|
+
output: {
|
|
51
|
+
type: meta.success ? "text" : "error-text",
|
|
52
|
+
value: update.value
|
|
53
|
+
},
|
|
51
54
|
toolName: data.tool_name,
|
|
52
|
-
isError: !meta.success,
|
|
53
55
|
toolCallId: "DUMMY_ID"
|
|
54
56
|
}, {
|
|
55
57
|
success: meta.success
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","output","success","value","toolName","tool_name","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA0BO,MAAMA,sBAAsBC,wBAAAA,CAAAA;AAAAA,EAAAA;;;EACvBC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,2CAAAA;MACRC,SAAAA,EAAWC,8CAAAA;MACXC,IAAAA,EAAMC,yCAAAA;MACNC,WAAAA,EAAaC,gDAAAA;MACbC,iBAAAA,EAAmBC,iDAAAA;MACnBC,SAAAA,EAAWC,8CAAAA;MACXC,cAAAA,EAAgBC,mDAAAA;;MAEhBC,SAAAA,EAAWC,qCAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,uBAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;UACNC,MAAAA,EAAQ;YAAED,IAAAA,EAAMN,IAAAA,CAAKQ,UAAU,MAAA,GAAS,YAAA;AAAcC,YAAAA,KAAAA,EAAOV,MAAAA,CAAOU;AAAM,WAAA;AAC1EC,UAAAA,QAAAA,EAAUR,IAAAA,CAAKS,SAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAEJ,UAAAA,OAAAA,EAASR,IAAAA,CAAKQ;AAAQ,SAAA,CAAA,CAAA;AAG9B;KACF,EACA;MACEK,UAAAA,EAAY;KACd,CAAA;AAEJ;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOvB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAuB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDT,SAAAA,EAAW;AAAE,YAAA,GAAGO,KAAAA,CAAMP,SAAAA;YAAWS,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF;AACF;;;IAlEWK,UAAAA,EAAY","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n GraniteReActAgentAssistantPrompt,\n GraniteReActAgentSchemaErrorPrompt,\n GraniteReActAgentSystemPrompt,\n GraniteReActAgentToolErrorPrompt,\n GraniteReActAgentToolInputErrorPrompt,\n GraniteReActAgentToolNotFoundPrompt,\n GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n ReActAgentToolNoResultsPrompt,\n ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n protected useNativeToolCalling = true;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: GraniteReActAgentSystemPrompt,\n assistant: GraniteReActAgentAssistantPrompt,\n user: GraniteReActAgentUserPrompt,\n schemaError: GraniteReActAgentSchemaErrorPrompt,\n toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n toolError: GraniteReActAgentToolErrorPrompt,\n toolInputError: GraniteReActAgentToolInputErrorPrompt,\n // Note: These are from ReAct\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n constructor(\n input: ReActAgentInput,\n options: ReActAgentRunOptions,\n run: GetRunContext<ReActAgent>,\n ) {\n super(input, options, run);\n\n run.emitter.on(\n \"update\",\n async ({ update, meta, memory, data }) => {\n if (update.key === \"tool_output\") {\n await memory.add(\n new ToolMessage(\n {\n type: \"tool-result\",\n output: { type: meta.success ? \"text\" : \"error-text\", value: update.value },\n toolName: data.tool_name!,\n toolCallId: \"DUMMY_ID\",\n },\n { success: meta.success },\n ),\n );\n }\n },\n {\n isBlocking: true,\n },\n );\n }\n\n protected createParser(tools: AnyTool[]) {\n const { parser } = super.createParser(tools);\n\n return {\n parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n options,\n nodes: {\n ...nodes,\n thought: { ...nodes.thought, prefix: \"Thought:\" },\n tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n },\n })),\n };\n }\n}\n"]}
|
|
@@ -4,9 +4,10 @@ import * as zod from 'zod';
|
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.cjs';
|
|
5
5
|
import { DefaultRunner } from '../default/runner.cjs';
|
|
6
6
|
import { ReActAgentRunOptions, ReActAgentParserInput } from '../../types.cjs';
|
|
7
|
-
import {
|
|
7
|
+
import { b as ReActAgentInput, c as ReActAgent } from '../../../../agent-DvvVGvLr.cjs';
|
|
8
8
|
import { GetRunContext } from '../../../../context.cjs';
|
|
9
|
-
import '
|
|
9
|
+
import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
|
|
10
|
+
import '../../../../emitter-DpqUYjXH.cjs';
|
|
10
11
|
import '../../../../internals/types.cjs';
|
|
11
12
|
import '../../../../internals/helpers/guards.cjs';
|
|
12
13
|
import '../../../../internals/serializable.cjs';
|
|
@@ -24,8 +25,8 @@ import '../../../../internals/helpers/promise.cjs';
|
|
|
24
25
|
import '../../../../backend/message.cjs';
|
|
25
26
|
import 'ai';
|
|
26
27
|
import '../../../../memory/base.cjs';
|
|
27
|
-
import '../../../../base-
|
|
28
|
-
import '../../../../chat-
|
|
28
|
+
import '../../../../base-CwcxwybB.cjs';
|
|
29
|
+
import '../../../../chat-CRb3vUVg.cjs';
|
|
29
30
|
import '../../../../backend/constants.cjs';
|
|
30
31
|
import '../../../../logger/logger.cjs';
|
|
31
32
|
import 'pino';
|
|
@@ -52,12 +53,12 @@ declare class GraniteRunner extends DefaultRunner {
|
|
|
52
53
|
}, zod.ZodTypeAny, "passthrough">>, "many">;
|
|
53
54
|
createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
|
|
54
55
|
}, "strip", zod.ZodTypeAny, {
|
|
56
|
+
instructions: string;
|
|
55
57
|
tools: zod.objectOutputType<{
|
|
56
58
|
name: zod.ZodString;
|
|
57
59
|
description: zod.ZodString;
|
|
58
60
|
schema: zod.ZodString;
|
|
59
61
|
}, zod.ZodTypeAny, "passthrough">[];
|
|
60
|
-
instructions: string;
|
|
61
62
|
createdAt?: string | null | undefined;
|
|
62
63
|
}, {
|
|
63
64
|
tools: zod.objectInputType<{
|
|
@@ -4,9 +4,10 @@ import * as zod from 'zod';
|
|
|
4
4
|
import { AnyTool } from '../../../../tools/base.js';
|
|
5
5
|
import { DefaultRunner } from '../default/runner.js';
|
|
6
6
|
import { ReActAgentRunOptions, ReActAgentParserInput } from '../../types.js';
|
|
7
|
-
import {
|
|
7
|
+
import { b as ReActAgentInput, c as ReActAgent } from '../../../../agent-CHebzsQB.js';
|
|
8
8
|
import { GetRunContext } from '../../../../context.js';
|
|
9
|
-
import '
|
|
9
|
+
import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
|
|
10
|
+
import '../../../../emitter-CZFbzlUi.js';
|
|
10
11
|
import '../../../../internals/types.js';
|
|
11
12
|
import '../../../../internals/helpers/guards.js';
|
|
12
13
|
import '../../../../internals/serializable.js';
|
|
@@ -24,8 +25,8 @@ import '../../../../internals/helpers/promise.js';
|
|
|
24
25
|
import '../../../../backend/message.js';
|
|
25
26
|
import 'ai';
|
|
26
27
|
import '../../../../memory/base.js';
|
|
27
|
-
import '../../../../base-
|
|
28
|
-
import '../../../../chat-
|
|
28
|
+
import '../../../../base-BQgDlcGa.js';
|
|
29
|
+
import '../../../../chat-C0s-o6ll.js';
|
|
29
30
|
import '../../../../backend/constants.js';
|
|
30
31
|
import '../../../../logger/logger.js';
|
|
31
32
|
import 'pino';
|
|
@@ -52,12 +53,12 @@ declare class GraniteRunner extends DefaultRunner {
|
|
|
52
53
|
}, zod.ZodTypeAny, "passthrough">>, "many">;
|
|
53
54
|
createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
|
|
54
55
|
}, "strip", zod.ZodTypeAny, {
|
|
56
|
+
instructions: string;
|
|
55
57
|
tools: zod.objectOutputType<{
|
|
56
58
|
name: zod.ZodString;
|
|
57
59
|
description: zod.ZodString;
|
|
58
60
|
schema: zod.ZodString;
|
|
59
61
|
}, zod.ZodTypeAny, "passthrough">[];
|
|
60
|
-
instructions: string;
|
|
61
62
|
createdAt?: string | null | undefined;
|
|
62
63
|
}, {
|
|
63
64
|
tools: zod.objectInputType<{
|
|
@@ -45,9 +45,11 @@ class GraniteRunner extends DefaultRunner {
|
|
|
45
45
|
if (update.key === "tool_output") {
|
|
46
46
|
await memory.add(new ToolMessage({
|
|
47
47
|
type: "tool-result",
|
|
48
|
-
|
|
48
|
+
output: {
|
|
49
|
+
type: meta.success ? "text" : "error-text",
|
|
50
|
+
value: update.value
|
|
51
|
+
},
|
|
49
52
|
toolName: data.tool_name,
|
|
50
|
-
isError: !meta.success,
|
|
51
53
|
toolCallId: "DUMMY_ID"
|
|
52
54
|
}, {
|
|
53
55
|
success: meta.success
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","output","success","value","toolName","tool_name","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;;;;;;;;;;;;AA0BO,MAAMA,sBAAsBC,aAAAA,CAAAA;AAAAA,EAAAA;;;EACvBC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,6BAAAA;MACRC,SAAAA,EAAWC,gCAAAA;MACXC,IAAAA,EAAMC,2BAAAA;MACNC,WAAAA,EAAaC,kCAAAA;MACbC,iBAAAA,EAAmBC,mCAAAA;MACnBC,SAAAA,EAAWC,gCAAAA;MACXC,cAAAA,EAAgBC,qCAAAA;;MAEhBC,SAAAA,EAAWC,yBAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,WAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;UACNC,MAAAA,EAAQ;YAAED,IAAAA,EAAMN,IAAAA,CAAKQ,UAAU,MAAA,GAAS,YAAA;AAAcC,YAAAA,KAAAA,EAAOV,MAAAA,CAAOU;AAAM,WAAA;AAC1EC,UAAAA,QAAAA,EAAUR,IAAAA,CAAKS,SAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAEJ,UAAAA,OAAAA,EAASR,IAAAA,CAAKQ;AAAQ,SAAA,CAAA,CAAA;AAG9B;KACF,EACA;MACEK,UAAAA,EAAY;KACd,CAAA;AAEJ;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOvB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAuB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDT,SAAAA,EAAW;AAAE,YAAA,GAAGO,KAAAA,CAAMP,SAAAA;YAAWS,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF;AACF;;;IAlEWK,UAAAA,EAAY","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n GraniteReActAgentAssistantPrompt,\n GraniteReActAgentSchemaErrorPrompt,\n GraniteReActAgentSystemPrompt,\n GraniteReActAgentToolErrorPrompt,\n GraniteReActAgentToolInputErrorPrompt,\n GraniteReActAgentToolNotFoundPrompt,\n GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n ReActAgentToolNoResultsPrompt,\n ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n protected useNativeToolCalling = true;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: GraniteReActAgentSystemPrompt,\n assistant: GraniteReActAgentAssistantPrompt,\n user: GraniteReActAgentUserPrompt,\n schemaError: GraniteReActAgentSchemaErrorPrompt,\n toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n toolError: GraniteReActAgentToolErrorPrompt,\n toolInputError: GraniteReActAgentToolInputErrorPrompt,\n // Note: These are from ReAct\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n constructor(\n input: ReActAgentInput,\n options: ReActAgentRunOptions,\n run: GetRunContext<ReActAgent>,\n ) {\n super(input, options, run);\n\n run.emitter.on(\n \"update\",\n async ({ update, meta, memory, data }) => {\n if (update.key === \"tool_output\") {\n await memory.add(\n new ToolMessage(\n {\n type: \"tool-result\",\n output: { type: meta.success ? \"text\" : \"error-text\", value: update.value },\n toolName: data.tool_name!,\n toolCallId: \"DUMMY_ID\",\n },\n { success: meta.success },\n ),\n );\n }\n },\n {\n isBlocking: true,\n },\n );\n }\n\n protected createParser(tools: AnyTool[]) {\n const { parser } = super.createParser(tools);\n\n return {\n parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n options,\n nodes: {\n ...nodes,\n thought: { ...nodes.thought, prefix: \"Thought:\" },\n tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n },\n })),\n };\n }\n}\n"]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { BaseMemory } from '../../memory/base.cjs';
|
|
2
2
|
import { Message } from '../../backend/message.cjs';
|
|
3
|
-
import { C as Callback } from '../../emitter-
|
|
3
|
+
import { C as Callback } from '../../emitter-DpqUYjXH.cjs';
|
|
4
4
|
import { AnyTool, BaseToolRunOptions, ToolOutput, ToolError } from '../../tools/base.cjs';
|
|
5
5
|
import { ReActAgentSystemPrompt, ReActAgentAssistantPrompt, ReActAgentUserPrompt, ReActAgentUserEmptyPrompt, ReActAgentToolErrorPrompt, ReActAgentToolInputErrorPrompt, ReActAgentToolNoResultsPrompt, ReActAgentToolNotFoundPrompt, ReActAgentSchemaErrorPrompt } from './prompts.cjs';
|
|
6
6
|
import { LinePrefixParser } from '../../parsers/linePrefix.cjs';
|
|
7
7
|
import { ZodParserField, JSONParserField } from '../../parsers/field.cjs';
|
|
8
8
|
import { NonUndefined } from '../../internals/types.cjs';
|
|
9
|
-
import { n as ChatModelOutput } from '../../chat-
|
|
9
|
+
import { n as ChatModelOutput } from '../../chat-CRb3vUVg.cjs';
|
|
10
10
|
import '../../errors.cjs';
|
|
11
11
|
import '../../internals/helpers/guards.cjs';
|
|
12
12
|
import '../../internals/serializable.cjs';
|
|
@@ -20,6 +20,7 @@ import '../../internals/helpers/schema.cjs';
|
|
|
20
20
|
import 'zod';
|
|
21
21
|
import 'zod-to-json-schema';
|
|
22
22
|
import '../../template.cjs';
|
|
23
|
+
import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
|
|
23
24
|
import '../../parsers/errors.cjs';
|
|
24
25
|
import '@streamparser/json';
|
|
25
26
|
import 'jsonrepair/stream';
|