diff --git a/.cache/plugin/social/0b649b356e60b558dfaafe8bb095862e.png b/.cache/plugin/social/0b649b356e60b558dfaafe8bb095862e.png new file mode 100644 index 000000000..c1d254009 Binary files /dev/null and b/.cache/plugin/social/0b649b356e60b558dfaafe8bb095862e.png differ diff --git a/.cache/plugin/social/0f18d6e26b8551d3f42ef92b0f786024.png b/.cache/plugin/social/0f18d6e26b8551d3f42ef92b0f786024.png new file mode 100644 index 000000000..0cf50da55 Binary files /dev/null and b/.cache/plugin/social/0f18d6e26b8551d3f42ef92b0f786024.png differ diff --git a/.cache/plugin/social/14c48b40955d6021b47ae973d9aef723.png b/.cache/plugin/social/14c48b40955d6021b47ae973d9aef723.png new file mode 100644 index 000000000..f78996fc8 Binary files /dev/null and b/.cache/plugin/social/14c48b40955d6021b47ae973d9aef723.png differ diff --git a/.cache/plugin/social/17484ad7f45b09a1db146ba3ad3df79a.png b/.cache/plugin/social/17484ad7f45b09a1db146ba3ad3df79a.png new file mode 100644 index 000000000..5e74e3e99 Binary files /dev/null and b/.cache/plugin/social/17484ad7f45b09a1db146ba3ad3df79a.png differ diff --git a/.cache/plugin/social/216220c022e734cc7999210b48c9fb59.png b/.cache/plugin/social/216220c022e734cc7999210b48c9fb59.png new file mode 100644 index 000000000..1045e0ba6 Binary files /dev/null and b/.cache/plugin/social/216220c022e734cc7999210b48c9fb59.png differ diff --git a/.cache/plugin/social/246dcba6c47283feac354f5871842fe8.png b/.cache/plugin/social/246dcba6c47283feac354f5871842fe8.png new file mode 100644 index 000000000..61033cb58 Binary files /dev/null and b/.cache/plugin/social/246dcba6c47283feac354f5871842fe8.png differ diff --git a/.cache/plugin/social/259ba94ac7e93bd9f968c57ec4a15fe5.png b/.cache/plugin/social/259ba94ac7e93bd9f968c57ec4a15fe5.png new file mode 100644 index 000000000..e6a3f7f11 Binary files /dev/null and b/.cache/plugin/social/259ba94ac7e93bd9f968c57ec4a15fe5.png differ diff --git a/.cache/plugin/social/288fd82ce2209be4864d19bd50b21474.png b/.cache/plugin/social/288fd82ce2209be4864d19bd50b21474.png new file mode 100644 index 000000000..4ecd32959 Binary files /dev/null and b/.cache/plugin/social/288fd82ce2209be4864d19bd50b21474.png differ diff --git a/.cache/plugin/social/28a844df4871a1cdfcba05fdc87bb3e8.png b/.cache/plugin/social/28a844df4871a1cdfcba05fdc87bb3e8.png new file mode 100644 index 000000000..e60adf6b0 Binary files /dev/null and b/.cache/plugin/social/28a844df4871a1cdfcba05fdc87bb3e8.png differ diff --git a/.cache/plugin/social/40770a96ef2fb657a7aa16a9facf702f.png b/.cache/plugin/social/40770a96ef2fb657a7aa16a9facf702f.png new file mode 100644 index 000000000..a46f183b1 Binary files /dev/null and b/.cache/plugin/social/40770a96ef2fb657a7aa16a9facf702f.png differ diff --git a/.cache/plugin/social/4747e68a5e5c0f0994cdc5b37682a37c.png b/.cache/plugin/social/4747e68a5e5c0f0994cdc5b37682a37c.png new file mode 100644 index 000000000..26c1a2c3c Binary files /dev/null and b/.cache/plugin/social/4747e68a5e5c0f0994cdc5b37682a37c.png differ diff --git a/.cache/plugin/social/4809f4ae19b6e78539b900da82d8a1f6.png b/.cache/plugin/social/4809f4ae19b6e78539b900da82d8a1f6.png new file mode 100644 index 000000000..526694d5f Binary files /dev/null and b/.cache/plugin/social/4809f4ae19b6e78539b900da82d8a1f6.png differ diff --git a/.cache/plugin/social/481b171eb3fe3dec67ca86d2d923f598.png b/.cache/plugin/social/481b171eb3fe3dec67ca86d2d923f598.png new file mode 100644 index 000000000..028482453 Binary files /dev/null and b/.cache/plugin/social/481b171eb3fe3dec67ca86d2d923f598.png differ diff --git a/.cache/plugin/social/4c1fb3bfd02d6b1317779fe5101058a7.png b/.cache/plugin/social/4c1fb3bfd02d6b1317779fe5101058a7.png new file mode 100644 index 000000000..a69a79f64 Binary files /dev/null and b/.cache/plugin/social/4c1fb3bfd02d6b1317779fe5101058a7.png differ diff --git a/.cache/plugin/social/5d2431971fcde0af2c84e4680a4227a7.png b/.cache/plugin/social/5d2431971fcde0af2c84e4680a4227a7.png new file mode 100644 index 000000000..3b7e60175 Binary files /dev/null and b/.cache/plugin/social/5d2431971fcde0af2c84e4680a4227a7.png differ diff --git a/.cache/plugin/social/69bcd9a2304ea69e1244a7ac510dd98d.png b/.cache/plugin/social/69bcd9a2304ea69e1244a7ac510dd98d.png new file mode 100644 index 000000000..ceebde089 Binary files /dev/null and b/.cache/plugin/social/69bcd9a2304ea69e1244a7ac510dd98d.png differ diff --git a/.cache/plugin/social/6b49f5ef597c15cabc3df9bac4fbcf44.png b/.cache/plugin/social/6b49f5ef597c15cabc3df9bac4fbcf44.png new file mode 100644 index 000000000..c6e491d30 Binary files /dev/null and b/.cache/plugin/social/6b49f5ef597c15cabc3df9bac4fbcf44.png differ diff --git a/.cache/plugin/social/7296e2d6c7b2c713ed7b2e4546e3acdb.png b/.cache/plugin/social/7296e2d6c7b2c713ed7b2e4546e3acdb.png new file mode 100644 index 000000000..4ad35ac5e Binary files /dev/null and b/.cache/plugin/social/7296e2d6c7b2c713ed7b2e4546e3acdb.png differ diff --git a/.cache/plugin/social/805d7c5662a45ca18b52554eecbc34af.png b/.cache/plugin/social/805d7c5662a45ca18b52554eecbc34af.png new file mode 100644 index 000000000..65265fec3 Binary files /dev/null and b/.cache/plugin/social/805d7c5662a45ca18b52554eecbc34af.png differ diff --git a/.cache/plugin/social/80f1492950494de7a34a1f20f6dd4368.png b/.cache/plugin/social/80f1492950494de7a34a1f20f6dd4368.png new file mode 100644 index 000000000..05b5e1ee4 Binary files /dev/null and b/.cache/plugin/social/80f1492950494de7a34a1f20f6dd4368.png differ diff --git a/.cache/plugin/social/834ad7f8096fa4c92637b815777bf2bd.png b/.cache/plugin/social/834ad7f8096fa4c92637b815777bf2bd.png new file mode 100644 index 000000000..823a36752 Binary files /dev/null and b/.cache/plugin/social/834ad7f8096fa4c92637b815777bf2bd.png differ diff --git a/.cache/plugin/social/8b089bdf12d22c016f481d654be39eb1.png b/.cache/plugin/social/8b089bdf12d22c016f481d654be39eb1.png new file mode 100644 index 000000000..de21e44ad Binary files /dev/null and b/.cache/plugin/social/8b089bdf12d22c016f481d654be39eb1.png differ diff --git a/.cache/plugin/social/96f1c198bf51f822eb04a25adf7ca20c.png b/.cache/plugin/social/96f1c198bf51f822eb04a25adf7ca20c.png new file mode 100644 index 000000000..a8b62538c Binary files /dev/null and b/.cache/plugin/social/96f1c198bf51f822eb04a25adf7ca20c.png differ diff --git a/.cache/plugin/social/Roboto-Black.ttf b/.cache/plugin/social/Roboto-Black.ttf new file mode 100644 index 000000000..0112e7da6 Binary files /dev/null and b/.cache/plugin/social/Roboto-Black.ttf differ diff --git a/.cache/plugin/social/Roboto-BlackItalic.ttf b/.cache/plugin/social/Roboto-BlackItalic.ttf new file mode 100644 index 000000000..b2c6aca57 Binary files /dev/null and b/.cache/plugin/social/Roboto-BlackItalic.ttf differ diff --git a/.cache/plugin/social/Roboto-Bold.ttf b/.cache/plugin/social/Roboto-Bold.ttf new file mode 100644 index 000000000..43da14d84 Binary files /dev/null and b/.cache/plugin/social/Roboto-Bold.ttf differ diff --git a/.cache/plugin/social/Roboto-BoldItalic.ttf b/.cache/plugin/social/Roboto-BoldItalic.ttf new file mode 100644 index 000000000..bcfdab431 Binary files /dev/null and b/.cache/plugin/social/Roboto-BoldItalic.ttf differ diff --git a/.cache/plugin/social/Roboto-Italic.ttf b/.cache/plugin/social/Roboto-Italic.ttf new file mode 100644 index 000000000..1b5eaa361 Binary files /dev/null and b/.cache/plugin/social/Roboto-Italic.ttf differ diff --git a/.cache/plugin/social/Roboto-Light.ttf b/.cache/plugin/social/Roboto-Light.ttf new file mode 100644 index 000000000..e7307e72c Binary files /dev/null and b/.cache/plugin/social/Roboto-Light.ttf differ diff --git a/.cache/plugin/social/Roboto-LightItalic.ttf b/.cache/plugin/social/Roboto-LightItalic.ttf new file mode 100644 index 000000000..2d277afb2 Binary files /dev/null and b/.cache/plugin/social/Roboto-LightItalic.ttf differ diff --git a/.cache/plugin/social/Roboto-Medium.ttf b/.cache/plugin/social/Roboto-Medium.ttf new file mode 100644 index 000000000..ac0f908b9 Binary files /dev/null and b/.cache/plugin/social/Roboto-Medium.ttf differ diff --git a/.cache/plugin/social/Roboto-MediumItalic.ttf b/.cache/plugin/social/Roboto-MediumItalic.ttf new file mode 100644 index 000000000..fc36a4785 Binary files /dev/null and b/.cache/plugin/social/Roboto-MediumItalic.ttf differ diff --git a/.cache/plugin/social/Roboto-Regular.ttf b/.cache/plugin/social/Roboto-Regular.ttf new file mode 100644 index 000000000..ddf4bfacb Binary files /dev/null and b/.cache/plugin/social/Roboto-Regular.ttf differ diff --git a/.cache/plugin/social/Roboto-Thin.ttf b/.cache/plugin/social/Roboto-Thin.ttf new file mode 100644 index 000000000..2e0dee6a8 Binary files /dev/null and b/.cache/plugin/social/Roboto-Thin.ttf differ diff --git a/.cache/plugin/social/Roboto-ThinItalic.ttf b/.cache/plugin/social/Roboto-ThinItalic.ttf new file mode 100644 index 000000000..084f9c0f5 Binary files /dev/null and b/.cache/plugin/social/Roboto-ThinItalic.ttf differ diff --git a/.cache/plugin/social/a0c21e9a7250afebc533da92c7050bed.png b/.cache/plugin/social/a0c21e9a7250afebc533da92c7050bed.png new file mode 100644 index 000000000..56015e425 Binary files /dev/null and b/.cache/plugin/social/a0c21e9a7250afebc533da92c7050bed.png differ diff --git a/.cache/plugin/social/a3d8476a7b5c6630a5f91aed8c210173.png b/.cache/plugin/social/a3d8476a7b5c6630a5f91aed8c210173.png new file mode 100644 index 000000000..cc9e10d03 Binary files /dev/null and b/.cache/plugin/social/a3d8476a7b5c6630a5f91aed8c210173.png differ diff --git a/.cache/plugin/social/ac9c4b6558565d4c349355101e95c74a.png b/.cache/plugin/social/ac9c4b6558565d4c349355101e95c74a.png new file mode 100644 index 000000000..3d8c6837d Binary files /dev/null and b/.cache/plugin/social/ac9c4b6558565d4c349355101e95c74a.png differ diff --git a/.cache/plugin/social/b417e4353162a563e70f1350a2777e2c.png b/.cache/plugin/social/b417e4353162a563e70f1350a2777e2c.png new file mode 100644 index 000000000..96cb33552 Binary files /dev/null and b/.cache/plugin/social/b417e4353162a563e70f1350a2777e2c.png differ diff --git a/.cache/plugin/social/b84a1e5d0534be3c31f04a7d4a98b515.png b/.cache/plugin/social/b84a1e5d0534be3c31f04a7d4a98b515.png new file mode 100644 index 000000000..116bbdc8d Binary files /dev/null and b/.cache/plugin/social/b84a1e5d0534be3c31f04a7d4a98b515.png differ diff --git a/.cache/plugin/social/bca675d7c3c82f52ebd329487fb9ade1.png b/.cache/plugin/social/bca675d7c3c82f52ebd329487fb9ade1.png new file mode 100644 index 000000000..92d49a363 Binary files /dev/null and b/.cache/plugin/social/bca675d7c3c82f52ebd329487fb9ade1.png differ diff --git a/.cache/plugin/social/bdf46ef3b5230ebb45ef648933f54fa2.png b/.cache/plugin/social/bdf46ef3b5230ebb45ef648933f54fa2.png new file mode 100644 index 000000000..5245080f5 Binary files /dev/null and b/.cache/plugin/social/bdf46ef3b5230ebb45ef648933f54fa2.png differ diff --git a/.cache/plugin/social/beacb748aad822c66a972b39186dbef1.png b/.cache/plugin/social/beacb748aad822c66a972b39186dbef1.png new file mode 100644 index 000000000..de826249f Binary files /dev/null and b/.cache/plugin/social/beacb748aad822c66a972b39186dbef1.png differ diff --git a/.cache/plugin/social/caa7abb72303dbe5a02ec11e6f1eba6b.png b/.cache/plugin/social/caa7abb72303dbe5a02ec11e6f1eba6b.png new file mode 100644 index 000000000..c5f2ec5df Binary files /dev/null and b/.cache/plugin/social/caa7abb72303dbe5a02ec11e6f1eba6b.png differ diff --git a/.cache/plugin/social/cff5eb5aae0959e143c12945428558bc.png b/.cache/plugin/social/cff5eb5aae0959e143c12945428558bc.png new file mode 100644 index 000000000..8da425ed2 Binary files /dev/null and b/.cache/plugin/social/cff5eb5aae0959e143c12945428558bc.png differ diff --git a/.cache/plugin/social/d7db21df76b132d3ca3ae4313e23f77d.png b/.cache/plugin/social/d7db21df76b132d3ca3ae4313e23f77d.png new file mode 100644 index 000000000..c0e03647e Binary files /dev/null and b/.cache/plugin/social/d7db21df76b132d3ca3ae4313e23f77d.png differ diff --git a/.cache/plugin/social/d87db72302152f8c0953d7105c28a206.png b/.cache/plugin/social/d87db72302152f8c0953d7105c28a206.png new file mode 100644 index 000000000..d612ef476 Binary files /dev/null and b/.cache/plugin/social/d87db72302152f8c0953d7105c28a206.png differ diff --git a/.cache/plugin/social/e9111c93e01f7c1dfec7bbab69843076.png b/.cache/plugin/social/e9111c93e01f7c1dfec7bbab69843076.png new file mode 100644 index 000000000..b3f6a0680 Binary files /dev/null and b/.cache/plugin/social/e9111c93e01f7c1dfec7bbab69843076.png differ diff --git a/.cache/plugin/social/ebf70df39c2bfd2c4a89d70846a516ff.png b/.cache/plugin/social/ebf70df39c2bfd2c4a89d70846a516ff.png new file mode 100644 index 000000000..eb9ed717b Binary files /dev/null and b/.cache/plugin/social/ebf70df39c2bfd2c4a89d70846a516ff.png differ diff --git a/.cache/plugin/social/ed5690e7952bdee0372c8d3f1f5d98d7.png b/.cache/plugin/social/ed5690e7952bdee0372c8d3f1f5d98d7.png new file mode 100644 index 000000000..a376929bf Binary files /dev/null and b/.cache/plugin/social/ed5690e7952bdee0372c8d3f1f5d98d7.png differ diff --git a/.cache/plugin/social/f6d08b81ae945faa6c4a436de48d2da6.png b/.cache/plugin/social/f6d08b81ae945faa6c4a436de48d2da6.png new file mode 100644 index 000000000..9609b5f32 Binary files /dev/null and b/.cache/plugin/social/f6d08b81ae945faa6c4a436de48d2da6.png differ diff --git a/.cache/plugin/social/f875c8d6b0cd71d9ae38300c82361d77.png b/.cache/plugin/social/f875c8d6b0cd71d9ae38300c82361d77.png new file mode 100644 index 000000000..0eca3c8df Binary files /dev/null and b/.cache/plugin/social/f875c8d6b0cd71d9ae38300c82361d77.png differ diff --git a/.cache/plugin/social/fc9a9f44881519178d4000f24000ef9d.png b/.cache/plugin/social/fc9a9f44881519178d4000f24000ef9d.png new file mode 100644 index 000000000..a1e00b74b Binary files /dev/null and b/.cache/plugin/social/fc9a9f44881519178d4000f24000ef9d.png differ diff --git a/.github/workflows/mkdocs.yml b/.github/workflows/mkdocs.yml index 7160dafb7..570e8bb0d 100644 --- a/.github/workflows/mkdocs.yml +++ b/.github/workflows/mkdocs.yml @@ -1,7 +1,7 @@ name: Deploy MkDocs on: - workflow_dispatch: + workflow_dispatch: push: branches: - main @@ -22,6 +22,18 @@ jobs: with: python-version: '3.10' + - name: Calculate requirements hash + id: req-hash + run: echo "::set-output name=hash::$(sha256sum requirements-doc.txt | awk '{print $1}')" + + - name: Setup cache + uses: actions/cache@v3 + with: + key: mkdocs-material-${{ steps.req-hash.outputs.hash }} + path: .cache + restore-keys: | + mkdocs-material- + - name: Install Requirements run: | sudo apt-get update && diff --git a/docs/core-concepts/Agent-Tools.md b/docs/core-concepts/Agent-Tools.md deleted file mode 100644 index 4b7f8d0d4..000000000 --- a/docs/core-concepts/Agent-Tools.md +++ /dev/null @@ -1,90 +0,0 @@ -# What is a Tool? - -A tool in CrewAI is a function or capability that an agent can utilize to perform actions, gather information, or interact with external systems, behind the scenes tools are [LangChain Tools](https://python.langchain.com/docs/modules/agents/tools/). -These tools can be as straightforward as a search function or as sophisticated as integrations with other chains or APIs. - -## Key Characteristics of Tools - -- **Utility**: Tools are designed to serve specific purposes, such as searching the web, analyzing data, or generating content. -- **Integration**: Tools can be integrated into agents to extend their capabilities beyond their basic functions. -- **Customizability**: Developers can create custom tools tailored to the specific needs of their agents or use pre-built LangChain ones available in the ecosystem. - -# Creating your own Tools - -You can easily create your own tool using [LangChain Tool Custom Tool Creation](https://python.langchain.com/docs/modules/agents/tools/custom_tools). - -Example: -```python -import json -import requests - -from crewai import Agent -from langchain.tools import tool -from unstructured.partition.html import partition_html - -class BrowserTools(): - @tool("Scrape website content") - def scrape_website(website): - """Useful to scrape a website content""" - url = f"https://chrome.browserless.io/content?token={config('BROWSERLESS_API_KEY')}" - payload = json.dumps({"url": website}) - headers = { - 'cache-control': 'no-cache', - 'content-type': 'application/json' - } - response = requests.request("POST", url, headers=headers, data=payload) - elements = partition_html(text=response.text) - content = "\n\n".join([str(el) for el in elements]) - - # Return only the first 5k characters - return content[:5000] - - -# Create an agent and assign the scrapping tool -agent = Agent( - role='Research Analyst', - goal='Provide up-to-date market analysis', - backstory='An expert analyst with a keen eye for market trends.', - tools=[BrowserTools().scrape_website] -) -``` - -# Using Existing Tools - -Check [LangChain Integration](https://python.langchain.com/docs/integrations/tools/) for a set of useful existing tools. -To assign a tool to an agent, you'd provide it as part of the agent's properties during initialization. - -```python -from crewai import Agent -from langchain.agents import Tool -from langchain.utilities import GoogleSerperAPIWrapper - -# Initialize SerpAPI tool with your API key -os.environ["OPENAI_API_KEY"] = "Your Key" -os.environ["SERPER_API_KEY"] = "Your Key" - -search = GoogleSerperAPIWrapper() - -# Create tool to be used by agent -serper_tool = Tool( - name="Intermediate Answer", - func=search.run, - description="useful for when you need to ask with search", -) - -# Create an agent and assign the search tool -agent = Agent( - role='Research Analyst', - goal='Provide up-to-date market analysis', - backstory='An expert analyst with a keen eye for market trends.', - tools=[serper_tool] -) -``` - -# Tool Interaction - -Tools enhance an agent's ability to perform tasks autonomously or in collaboration with other agents. For instance, an agent might use a search tool to gather information, then pass that data to another agent specialized in analysis. - -# Conclusion - -Tools are vital components that expand the functionality of agents within the CrewAI framework. They enable agents to perform a wide range of actions and collaborate effectively with one another. As you build with CrewAI, consider the array of tools you can leverage to empower your agents and how they can be interwoven to create a robust AI ecosystem. diff --git a/docs/core-concepts/Agents.md b/docs/core-concepts/Agents.md new file mode 100644 index 000000000..1f16f13d3 --- /dev/null +++ b/docs/core-concepts/Agents.md @@ -0,0 +1,51 @@ +--- +title: crewAI Agents +description: What are crewAI Agents and how to use them. +--- + +## What is an Agent? +!!! note "What is an Agent?" + An agent is an **autonomous unit** programmed to: +