#### Summary This PR introduces key updates to the Arcade AI codebase, focusing on improving the CLI tool, refining the Docker build process, and enhancing documentation within the Gmail toolkit. #### Key Changes: 1. **Docker Build**: - Added the `--no-cache` option to the `docker-build` target in the Makefile to ensure fresh builds, preventing issues related to cached layers. 2. **CLI Tool**: - Introduced a new optional `prompt` parameter in the `chat` command, allowing users to customize the system role's prompt. A default prompt is now provided if none is specified. 3. **Gmail Toolkit**: - Updated the `write_draft` function with improved docstrings for clearer guidance and maintainability. #### Impact: - **Developer Workflow**: Improved Docker reliability and enhanced CLI flexibility. - **User Experience**: More customizable interactions in the CLI and better documentation in the Gmail toolkit. Please review and provide feedback. |
||
|---|---|---|
| .github | ||
| arcade | ||
| docker | ||
| examples | ||
| schemas/preview | ||
| toolkits | ||
| .editorconfig | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .prettierrc.toml | ||
| CONTRIBUTING.md | ||
| cspell.config.yaml | ||
| LICENSE | ||
| README.md | ||
Arcade AI
Arcade AI is the developer platform for building tools designed to be used with language models. With Arcade, developers can create, deploy, and easily integrate new tools with language models to enhance their capabilities.
arcade-ai
The arcade-ai package contains:
arcadeCLIarcade.sdkTool SDKarcade.actorserving tools with FastAPI, Flask, or Django
Installation
To install the Arcade AI package, execute the following command:
pip install arcade-ai
or install from source:
git clone https://github.com/arcadeai/arcade-ai.git
cd arcade-ai
pip install poetry
poetry install
First steps
Follow these steps if you've cloned the repo and installed the package from source:
cd examples/websearch
poetry install
arcade show arcade_websearch
This will show an output that looks like
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━┓ ┃ Name ┃ Description ┃ Toolkit ┃ Version ┃ ┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━┩ │ SearchGoogle │ Search Google using SerpAPI and return organic search results. │ websearch │ 0.1.0 │ └──────────────┴────────────────────────────────────────────────────────────────┴───────────┴─────────┘
Predict the parameters with a model and run the tool with the predicted parameters. Arcade adds the execute choice to the tool, which allows you to run the tool with the predicted parameters in a single request.
> arcade run arcade_websearch "who is Sam Partee?" --choice "execute"
Running tool: SearchGoogle with params: {'query': 'Sam Partee'}
[{"position": 1, "title": "Sam Partee (@SamPartee) / X", "link": "https://twitter.com/sampartee", "redirect_link":
"https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://twitter.com/sampartee&ved=2ahUKEwjBwKiz3b6HAxV1VTABHXL8BZQQFnoECAYQAQ",
"displayed_link": "1.5K+ followers", "thumbnail":
.....
.. (truncated)
Arcade also adds the predict choice to the tool, which allows you to predict the parameters with a model.
> arcade run arcade_websearch "who is Sam Partee?" --choice "predict" # also the default
Running tool: SearchGoogle with params: {'query': 'Sam Partee'}
Sam Partee is a CTO, Co-founder of Arcade AI and former Machine Learning Engineer at companies like RedisInc and HPE_Cray. They have
expertise in AI/ML, vector search, Python, HPC, and are a sports fan.