Commit Graph

101 Commits

Author SHA1 Message Date
Lorenze Jay
fae843a243 Lj/optional agent in task bug (#843)
* fixed bug for manager overriding task agent and then added pydanic valditors to sequential when no agent is added to task

* better test and fixed task.agent logic

* fixed tests and better validator message

* added validator for async_execution true in tasks whenever in hierarchical run
2024-07-03 18:45:53 -03:00
Brandon Hancock (bhancock_ai)
0b277e066d Bugfix/kickoff for each usage metrics (#844)
* WIP. Figuring out disconnect issue.

* Cleaned up logs now that I've isolated the issue to the LLM

* more wip.

* WIP. It looks like usage metrics has always been broken for async

* Update parent crew who is managing for_each loop

* Merge in main to bugfix/kickoff-for-each-usage-metrics

* Clean up code for review

* Add new tests

* Final cleanup. Ready for review.

* Moving copy functionality from Agent to BaseAgent

* Fix renaming issue

* Fix linting errors

* use BaseAgent instead of Agent where applicable
2024-07-03 15:30:53 -03:00
João Moura
dee7bd6258 small refractoring for new version 2024-07-01 05:32:22 -07:00
Lorenze Jay
9678d22724 Lorenzejay/byoa (#776)
* better spacing

* works with llama index

* works on langchain custom just need delegation to work

* cleanup for custom_agent class

* works with different argument expectations for agent_executor

* cleanup for hierarchial process, better agent_executor args handler and added to the crew agent doc page

* removed code examples for langchain + llama index, added to docs instead

* added key output if return is not a str for and added some tests

* added hinting for CustomAgent class

* removed pass as it was not needed

* closer just need to figuire ou agentTools

* running agents - llamaindex and langchain with base agent

* some cleanup on baseAgent

* minimum for agent to run for base class and ensure it works with hierarchical process

* cleanup for original agent to take on BaseAgent class

* Agent takes on langchainagent and cleanup across

* token handling working for usage_metrics to continue working

* installed llama-index, updated docs and added better name

* fixed some type errors

* base agent holds token_process

* heirarchail process uses proper tools and no longer relies on hasattr for token_processes

* removal of test_custom_agent_executions

* this fixes copying agents

* leveraging an executor class for trigger llamaindex agent

* llama index now has ask_human

* executor mixins added

* added output converter base class

* type listed

* cleanup for output conversions and tokenprocess eliminated redundancy

* properly handling tokens

* simplified token calc handling

* original agent with base agent builder structure setup

* better docs

* no more llama-index dep

* cleaner docs

* test fixes

* poetry reverts and better docs

* base_agent_tools set for third party agents

* updated task and test fix
2024-06-27 14:56:08 -03:00
Eduardo Chiarotti
a912ed33aa fix: fix tests (#814) 2024-06-27 05:45:23 -03:00
Eduardo Chiarotti
3573a61568 feat: Add Train feature for Crews (#686)
* feat: add training logic to agent and crew

* feat: add training logic to agent executor

* feat: add input parameter  to cli command

* feat: add utilities for the training logic

* feat: polish code, logic and add private variables

* feat: add docstring and type hinting to executor

* feat: add constant file, add constant to code

* feat: fix name of training handler function

* feat: remove unused var

* feat: change file handler file name

* feat: Add training handler file, class and change on the code

* feat: fix name error from file

* fix: change import to adapt to logic

* feat: add training handler test

* feat: add tests for file and training_handler

* feat: add test for task evaluator function

* feat: change text to fit in-screen

* feat: add test for train function

* feat: add test for agent training_handler function

* feat: add test for agent._use_trained_data
2024-06-27 02:22:34 -03:00
Brandon Hancock (bhancock_ai)
72e20a5dbb Resolved Merge Conflicts for PR #712: Remove Hyphen in co-workers (#786)
* removed hyphen in co-workers

* Fix issue with AgentTool agent selection. The LLM included double quotes in the agent name which messed up the string comparison. Added additional types. Cleaned up error messaging.

* Remove duplicate import

* Improve explanation

* Revert poetry.lock changes

* Fix missing line in poetry.lock

---------

Co-authored-by: madmag77 <goncharov.artemv@gmail.com>
2024-06-18 16:57:56 -03:00
Dan McKinley
2aae7600f4 updates instructor to the latest version. (#760)
* updates instructor to the latest version. adds jsonref, which instructor seems to depend on.

* updates embedchain reference, necessary for python 3.12
2024-06-14 01:57:40 -03:00
Lorenze Jay
14e7046980 added usage_metrics to full output (#756)
* added extra parameter for kickoff to return token usage count after result

* added output_token_usage to class and in full_output

* logger duplicated

* added more types

* added usage_metrics to full output instead

* added more to the description on full_output

* possible mispacing
2024-06-12 14:18:52 -03:00
Matt Thompson
4f093e2626 fix: correct default model (gpt-4o), correct token counts, and correct TaskOutput attributes (added agent) (#749)
* fix: 'from datetime import datetime for logging' to print the timestamp

* fix: correct default model (gpt-4o), correct token counts, and correct TaskOutput attributes (added agent)

* test: verify Task callback data is an instance of TaskOutput
2024-06-11 15:29:22 -03:00
Eduardo Chiarotti
b48beaaf9c feat: Add crew train cli (#624)
* fix: fix crewai-tools cli command

* feat: add crewai train CLI command

* feat: add the tests

* fix: fix typing hinting issue on code

* fix: test.yml

* fix: fix test

* fix: removed fix since it didnt changed the test
2024-05-23 18:46:45 -03:00
Jason Schrader
77f595e617 Add version command to CLI (#348)
* feat: add version command to cli with tools flag

* test: check output of version and tools flag

* fix: add version tool info to cli outputs
2024-05-15 19:50:49 -03:00
João Moura
fc510dbc3d New version, updating dependencies, fixing memory 2024-05-13 22:26:41 -03:00
João Moura
eaa8aa7d35 preparing new version 2024-05-13 12:59:55 -03:00
João Moura
f8949ba975 Adding new tests 2024-05-13 02:34:33 -03:00
João Moura
f175ac32d0 Small RC Fixes (#608)
* mentioning ollama on the docs as embedder

* lowering barrier to match tool with simialr name

* Fixing agent tools to support co_worker

* Adding new tests

* Fixing type"

* updating tests

* fixing conflict
2024-05-13 02:29:04 -03:00
Ítalo Vieira
c0a7e75f29 fix typo exectue -> execute (#607) 2024-05-13 02:19:06 -03:00
Eduardo Chiarotti
f0c9e80d33 Feat: Add Ruff to improve linting/formatting (#588)
* fix: fix test actually running

* fix: fix test to not send request to openai

* fix: fix linting to remove cli files

* fix: exclude only files that breaks black

* fix: Fix all Ruff checkings on the code and Fix Test with repeated name

* fix: Change linter name on yml file

* feat: update pre-commit

* feat: remove need for isort on the code

* feat: remove black linter

* feat: update tests yml to try to fix the tests gh action
2024-05-10 11:53:53 -03:00
Eduardo Chiarotti
1b73933be0 fix: fix test actually running (#587)
* fix: fix test actually running

* fix: fix test to not send request to openai

* fix: fix linting to remove cli files

* fix: exclude only files that breaks black
2024-05-09 21:33:48 -03:00
João Moura
9071f27d9f Fixing manager_agent_support 2024-05-05 00:51:18 -03:00
João Moura
b0e38c2a2d adding meomization to crewai project annotations 2024-05-03 00:49:37 -03:00
João Moura
68e1444ed8 updating manager llm pydantic error 2024-05-02 23:39:56 -03:00
João Moura
cbe53d9daf small improvements for i18n 2024-05-02 05:00:29 -03:00
João Moura
7ad0357eaa adding initial support for external prompt file 2024-05-02 05:00:29 -03:00
Dmitri Khokhlov
5daa40b498 fix: TypeError: LongTermMemory.search() missing 1 required positional argument: 'latest_n' (#488)
Signed-off-by: Dmitri Khokhlov <dkhokhlov@gmail.com>
2024-05-02 03:28:36 -03:00
Ikko Eltociear Ashimine
93dc0874b5 fix typo (#489)
* Update test_crew_function_calling_llm.yaml

ouput -> output

* Update tool_usage.py

ouput -> output
2024-05-02 03:27:40 -03:00
João Moura
2ae6fc4bd8 smal fixes and better guardrail for parsing small models tools usage 2024-05-02 02:21:59 -03:00
João Moura
84775373a6 Adding support for system, prompt and answe templates 2024-05-02 02:21:59 -03:00
João Moura
8360abd1c0 removing unnecessary test 2024-05-02 02:21:59 -03:00
João Moura
f3bfabb149 Adding manager llm 2024-04-16 16:50:44 -03:00
GabeKoga
289e12de5a Feature: Log files (#423)
* log_file

feature: added a new parameter for crew that creates a txt file to log agent execution

* unit tests and documentation

unit test if file is created but not what is inside the file
2024-04-05 19:44:50 -03:00
João Moura
4c274dbca7 updating tests 2024-04-05 08:33:31 -03:00
João Moura
fd12609330 Adding new test for crew memory 2024-04-04 15:29:45 -03:00
João Moura
80fd67cdea updating specs 2024-04-02 13:51:16 -03:00
João Moura
bbd4e58b65 Starting i18n language file support 2024-04-01 10:45:17 -03:00
João Moura
f85bf00409 Adding long term, short term, entity and contextual memory 2024-04-01 10:45:17 -03:00
João Moura
d73dd08ef4 Adding custom caching 2024-04-01 10:43:05 -03:00
João Moura
81d5fe6fc6 Ability to disable cache at agent and crew level 2024-04-01 10:43:05 -03:00
João Moura
45ba8d4bd2 fixing warnings 2024-04-01 10:43:05 -03:00
GabeKoga
eb98b8efad feature: human input per task (#395)
* feature: human input per task

* Update executor.py

* Update executor.py

* Update executor.py

* Update executor.py

* Update executor.py

* feat: change human input for unit testing
added documentation and unit test

* Create test_agent_human_input.yaml

add yaml for test

---------

Co-authored-by: João Moura <joaomdmoura@gmail.com>
2024-04-01 10:04:56 -03:00
Gui Vieira
27b3625cd1 Fix input interpolation bug (#369) 2024-03-22 03:08:54 -03:00
João Moura
5aa543f4d2 Preparing new version 2024-03-11 17:37:12 -03:00
João Moura
0a9404bb46 adding initial CLI support 2024-03-11 16:37:32 -03:00
João Moura
475dcdfdbe updating tests 2024-03-03 20:54:15 -03:00
João Moura
d2f8a30c96 cutting a new version addressin backward compatibility 2024-02-28 12:04:13 -03:00
João Moura
38ceb9d409 adding support for input interpolation for tasks and agents 2024-02-28 03:44:23 -03:00
João Moura
45ea5ccef0 fixing tests 2024-02-28 03:44:23 -03:00
João Moura
9435ff437a Adding ability to track tools_errors and delegations 2024-02-28 03:44:23 -03:00
João Moura
ed22fdd993 Adding overall usage_metrics to crew and not adding delegation tools if there no agents the allow delegation 2024-02-28 03:44:23 -03:00
João Moura
5d682a5d6c Adding initial formatting error counting and token counter 2024-02-28 03:44:23 -03:00