I wanted to check about the Decision making algorithm of Algorithm. Does CrewAI uses the Rule based system of Backward Chaining for decision making by the Agents or does they used any other ML algorithm?
Can someone please provide with more insights on this?
I understand the codebase is present on Github and I have been digging deep into the source code but couldn’t point to the ML algorithm or decision making function of the agent.
Could you Please point to the pointers in the code base where the agent decision making function is implemented.
I think it depends on what decision you are referring to. CrewAI agents use the LLM as their engine, so most of the decisions come from there. Obviously the input a user provides to the agent (such as the task or the tools) is considered as well. I’m not sure if this answers your question but as the other person replied above, dig into the source code in the repository and follow the flow of logic.
Yes, I dig deep in the agent execution and thought process, but it looks like the LLM call is being made by the agent with the max_iterations or until the conclusion is being made.
But here, I define the decision making as being once the output is received from the LLM call, how the agent determines whether the response received from the LLM call is the desired output or not.
Crewai is a rule-based system designed to facilitate knowledge representation and reasoning. Its scalability makes it suitable for large-scale applications, such as expert systems, decision support systems, and intelligent agents. Advantages of using Crewai include its ability to represent complex knowledge structures and scalability. However, Crewai requires manual rule development and may not be suitable for complex scenarios.
The other query I have is around the delegation the manager agent makes in case of Hierarchical process for the completion of task.
Given a task, how does the manager agent makes decision on the delegation of tasks to the other agents. I understand it happens via the specific roles that are being assigned to the agents. But does the Manager agent passes the task description to the LLM and then after processing the output, delegates the task? Here I want to better understand the decision making process being made by the Manager agent.