exclude knowledge

This commit is contained in:
Lorenze Jay
2025-01-27 13:26:46 -08:00
parent f4b7cffb6b
commit 1de204eff8

View File

@@ -18,6 +18,7 @@ from pydantic_core import PydanticCustomError
from crewai.agents.agent_builder.utilities.base_token_process import TokenProcess from crewai.agents.agent_builder.utilities.base_token_process import TokenProcess
from crewai.agents.cache.cache_handler import CacheHandler from crewai.agents.cache.cache_handler import CacheHandler
from crewai.agents.tools_handler import ToolsHandler from crewai.agents.tools_handler import ToolsHandler
from crewai.knowledge.knowledge import Knowledge
from crewai.knowledge.source.base_knowledge_source import BaseKnowledgeSource from crewai.knowledge.source.base_knowledge_source import BaseKnowledgeSource
from crewai.tools import BaseTool from crewai.tools import BaseTool
from crewai.tools.base_tool import Tool from crewai.tools.base_tool import Tool
@@ -131,6 +132,9 @@ class BaseAgent(ABC, BaseModel):
max_tokens: Optional[int] = Field( max_tokens: Optional[int] = Field(
default=None, description="Maximum number of tokens for the agent's execution." default=None, description="Maximum number of tokens for the agent's execution."
) )
knowledge: Optional[Knowledge] = Field(
default=None, description="Knowledge for the agent."
)
knowledge_sources: Optional[List[BaseKnowledgeSource]] = Field( knowledge_sources: Optional[List[BaseKnowledgeSource]] = Field(
default=None, default=None,
description="Knowledge sources for the agent.", description="Knowledge sources for the agent.",
@@ -266,12 +270,14 @@ class BaseAgent(ABC, BaseModel):
"cache_handler", "cache_handler",
"llm", "llm",
"knowledge_sources", "knowledge_sources",
"_knowledge", "knowledge",
"formatting_errors", "formatting_errors",
} }
# Copy llm # Copy llm
existing_llm = shallow_copy(self.llm) existing_llm = shallow_copy(self.llm)
copied_knowledge = shallow_copy(self.knowledge)
print("existing_llm", existing_llm) print("existing_llm", existing_llm)
# Properly copy knowledge sources if they exist # Properly copy knowledge sources if they exist
existing_knowledge_sources = None existing_knowledge_sources = None
@@ -301,6 +307,7 @@ class BaseAgent(ABC, BaseModel):
llm=existing_llm, llm=existing_llm,
tools=self.tools, tools=self.tools,
knowledge_sources=existing_knowledge_sources, knowledge_sources=existing_knowledge_sources,
knowledge=copied_knowledge,
) )
return copied_agent return copied_agent