From 036ad54ac6f0a1aa59c8add7b3f608f47ca11e54 Mon Sep 17 00:00:00 2001 From: Nate Barbettini Date: Thu, 24 Oct 2024 17:08:04 -0700 Subject: [PATCH] Remove arcade.core from all examples (#121) This PR ensures that `arcade.core` does not show up anywhere in "user space". This is crucial for helping developers understand what objects are safe to use, and helps maintain a good developer experience. Specific changes: - `ToolAuthorizationContext` and `ToolContext` are now visible via `arcade.sdk` - `ToolCatalog` is now visible via `arcade.sdk` - `Toolkit` is now visible via `arcade.sdk` - `config` is now visible via `arcade.sdk.config` --- arcade/arcade/cli/new.py | 4 ++-- arcade/arcade/cli/serve.py | 2 +- arcade/arcade/cli/utils.py | 3 +-- arcade/arcade/core/catalog.py | 3 +-- arcade/arcade/sdk/__init__.py | 8 ++++++++ arcade/arcade/sdk/{error.py => errors.py} | 10 ++++++++-- arcade/arcade/sdk/eval/critic.py | 2 +- arcade/arcade/sdk/eval/eval.py | 4 ++-- arcade/arcade/sdk/tool.py | 2 +- arcade/tests/core/test_executor.py | 2 +- arcade/tests/sdk/test_eval.py | 2 +- examples/fastapi/arcade_example_fastapi/main.py | 11 ++++------- examples/modal-deploy.py | 2 +- toolkits/github/arcade_github/tests/test_activity.py | 2 +- toolkits/github/arcade_github/tests/test_issues.py | 2 +- .../github/arcade_github/tests/test_pull_requests.py | 2 +- .../github/arcade_github/tests/test_repositories.py | 2 +- toolkits/github/arcade_github/tools/activity.py | 3 +-- toolkits/github/arcade_github/tools/issues.py | 3 +-- toolkits/github/arcade_github/tools/pull_requests.py | 5 ++--- toolkits/github/arcade_github/tools/repositories.py | 3 +-- toolkits/github/arcade_github/tools/utils.py | 2 +- toolkits/github/evals/eval_github_activity.py | 2 +- toolkits/github/evals/eval_github_issues.py | 2 +- toolkits/github/evals/eval_github_pull_requests.py | 2 +- toolkits/github/evals/eval_github_repositories.py | 2 +- toolkits/google/arcade_google/tools/calendar.py | 5 ++--- toolkits/google/arcade_google/tools/docs.py | 3 +-- toolkits/google/arcade_google/tools/drive.py | 3 +-- toolkits/google/arcade_google/tools/gmail.py | 5 ++--- toolkits/google/evals/eval_google_calendar.py | 2 +- toolkits/google/evals/eval_google_docs.py | 2 +- toolkits/google/evals/eval_google_drive.py | 2 +- toolkits/google/evals/eval_google_gmail.py | 2 +- toolkits/google/tests/test_calendar.py | 4 ++-- toolkits/google/tests/test_docs.py | 2 +- toolkits/google/tests/test_drive.py | 2 +- toolkits/google/tests/test_gmail.py | 4 ++-- toolkits/linkedin/arcade_linkedin/tools/share.py | 5 ++--- toolkits/math/evals/eval_math_tools.py | 2 +- toolkits/math/tests/test_arithmetic.py | 2 +- toolkits/search/evals/eval_google_search.py | 2 +- toolkits/slack/arcade_slack/tools/chat.py | 5 ++--- toolkits/slack/evals/eval_slack_messaging.py | 2 +- toolkits/spotify/arcade_spotify/tools/player.py | 5 ++--- toolkits/web/evals/eval_firecrawl.py | 2 +- toolkits/web/tests/test_firecrawl.py | 2 +- toolkits/x/arcade_x/tools/tweets.py | 5 ++--- toolkits/x/arcade_x/tools/users.py | 5 ++--- toolkits/x/evals/eval_x_tools.py | 2 +- toolkits/zoom/arcade_zoom/tools/meetings.py | 5 ++--- 51 files changed, 81 insertions(+), 86 deletions(-) rename arcade/arcade/sdk/{error.py => errors.py} (62%) diff --git a/arcade/arcade/cli/new.py b/arcade/arcade/cli/new.py index aecab58e..3c901964 100644 --- a/arcade/arcade/cli/new.py +++ b/arcade/arcade/cli/new.py @@ -169,7 +169,7 @@ def create_new_toolkit(directory: str) -> None: dedent( f""" import pytest - from arcade.sdk.error import ToolExecutionError + from arcade.sdk.errors import ToolExecutionError from {toolkit_name}.tools.hello import hello def test_hello(): @@ -195,7 +195,7 @@ def create_new_toolkit(directory: str) -> None: import {toolkit_name} from {toolkit_name}.tools.hello import hello - from arcade.core.catalog import ToolCatalog + from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( EvalRubric, EvalSuite, diff --git a/arcade/arcade/cli/serve.py b/arcade/arcade/cli/serve.py index 5ac66b73..57ffbd33 100644 --- a/arcade/arcade/cli/serve.py +++ b/arcade/arcade/cli/serve.py @@ -24,7 +24,7 @@ except ImportError: ) from arcade.actor.fastapi.actor import FastAPIActor -from arcade.core.toolkit import Toolkit +from arcade.sdk import Toolkit class InterceptHandler(logging.Handler): diff --git a/arcade/arcade/cli/utils.py b/arcade/arcade/cli/utils.py index b4786dfe..e01f04fd 100644 --- a/arcade/arcade/cli/utils.py +++ b/arcade/arcade/cli/utils.py @@ -22,11 +22,10 @@ from rich.text import Text from typer.core import TyperGroup from typer.models import Context -from arcade.core.catalog import ToolCatalog from arcade.core.config_model import Config from arcade.core.errors import ToolkitLoadError from arcade.core.schema import ToolDefinition -from arcade.core.toolkit import Toolkit +from arcade.sdk import ToolCatalog, Toolkit console = Console() diff --git a/arcade/arcade/core/catalog.py b/arcade/arcade/core/catalog.py index 496e8284..69afc236 100644 --- a/arcade/arcade/core/catalog.py +++ b/arcade/arcade/core/catalog.py @@ -219,8 +219,7 @@ class ToolCatalog(BaseModel): def get_tool_by_name( self, name: str, version: Optional[str] = None, separator: str = TOOL_NAME_SEPARATOR ) -> MaterializedTool: - """ - Get a tool from the catalog by name, optionally including the toolkit name. + """Get a tool from the catalog by name. Args: name: The name of the tool, potentially including the toolkit name separated by the `separator`. diff --git a/arcade/arcade/sdk/__init__.py b/arcade/arcade/sdk/__init__.py index 26c0fc27..be6ecbcc 100644 --- a/arcade/arcade/sdk/__init__.py +++ b/arcade/arcade/sdk/__init__.py @@ -1,5 +1,13 @@ +from arcade.core.catalog import ToolCatalog +from arcade.core.schema import ToolAuthorizationContext, ToolContext +from arcade.core.toolkit import Toolkit + from .tool import tool __all__ = [ "tool", + "ToolAuthorizationContext", + "ToolContext", + "ToolCatalog", + "Toolkit", ] diff --git a/arcade/arcade/sdk/error.py b/arcade/arcade/sdk/errors.py similarity index 62% rename from arcade/arcade/sdk/error.py rename to arcade/arcade/sdk/errors.py index dc123b18..58700acd 100644 --- a/arcade/arcade/sdk/error.py +++ b/arcade/arcade/sdk/errors.py @@ -1,6 +1,12 @@ -from arcade.core.errors import RetryableToolError, ToolExecutionError +from arcade.core.errors import RetryableToolError, ToolExecutionError, ToolRuntimeError -__all__ = ["SDKError", "WeightError", "ToolExecutionError", "RetryableToolError"] +__all__ = [ + "SDKError", + "WeightError", + "ToolRuntimeError", + "ToolExecutionError", + "RetryableToolError", +] class SDKError(Exception): diff --git a/arcade/arcade/sdk/eval/critic.py b/arcade/arcade/sdk/eval/critic.py index dcb66e36..367c4a4c 100644 --- a/arcade/arcade/sdk/eval/critic.py +++ b/arcade/arcade/sdk/eval/critic.py @@ -6,7 +6,7 @@ from typing import Any, ClassVar import pytz from dateutil import parser -from arcade.sdk.error import WeightError +from arcade.sdk.errors import WeightError @dataclass diff --git a/arcade/arcade/sdk/eval/eval.py b/arcade/arcade/sdk/eval/eval.py index 91996676..33ea20f5 100644 --- a/arcade/arcade/sdk/eval/eval.py +++ b/arcade/arcade/sdk/eval/eval.py @@ -18,10 +18,10 @@ except ImportError: from openai import AsyncOpenAI -from arcade.sdk.error import WeightError +from arcade.sdk.errors import WeightError if TYPE_CHECKING: - from arcade.core.catalog import ToolCatalog + from arcade.sdk import ToolCatalog from arcade.sdk.eval.critic import Critic diff --git a/arcade/arcade/sdk/tool.py b/arcade/arcade/sdk/tool.py index f3e6fe48..641095ae 100644 --- a/arcade/arcade/sdk/tool.py +++ b/arcade/arcade/sdk/tool.py @@ -4,7 +4,7 @@ from typing import Any, Callable, TypeVar, Union from arcade.core.utils import snake_to_pascal_case from arcade.sdk.auth import ToolAuthorization -from arcade.sdk.error import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError T = TypeVar("T") diff --git a/arcade/tests/core/test_executor.py b/arcade/tests/core/test_executor.py index c58894d4..30f0a04a 100644 --- a/arcade/tests/core/test_executor.py +++ b/arcade/tests/core/test_executor.py @@ -6,7 +6,7 @@ from arcade.core.catalog import ToolCatalog from arcade.core.executor import ToolExecutor from arcade.core.schema import ToolCallError, ToolCallOutput, ToolContext from arcade.sdk import tool -from arcade.sdk.error import RetryableToolError, ToolExecutionError +from arcade.sdk.errors import RetryableToolError, ToolExecutionError @tool diff --git a/arcade/tests/sdk/test_eval.py b/arcade/tests/sdk/test_eval.py index bc9c8113..62c6bf2d 100644 --- a/arcade/tests/sdk/test_eval.py +++ b/arcade/tests/sdk/test_eval.py @@ -4,7 +4,7 @@ import pytest import pytz from dateutil import parser -from arcade.sdk.error import WeightError +from arcade.sdk.errors import WeightError from arcade.sdk.eval import ( BinaryCritic, DatetimeCritic, diff --git a/examples/fastapi/arcade_example_fastapi/main.py b/examples/fastapi/arcade_example_fastapi/main.py index 085203f7..c4d239d0 100644 --- a/examples/fastapi/arcade_example_fastapi/main.py +++ b/examples/fastapi/arcade_example_fastapi/main.py @@ -6,13 +6,9 @@ from openai import AsyncOpenAI from pydantic import BaseModel from arcade.actor.fastapi.actor import FastAPIActor -from arcade.core.config import config -from arcade.core.toolkit import Toolkit +from arcade.sdk import Toolkit -if not config.api or not config.api.key: - raise ValueError("Arcade API key not set. Please run `arcade login`.") - -client = AsyncOpenAI(api_key=config.api.key, base_url="http://localhost:9099/v1") +client = AsyncOpenAI(api_key=os.environ["ARCADE_API_KEY"], base_url="http://localhost:9099/v1") app = FastAPI() @@ -23,6 +19,7 @@ actor.register_toolkit(Toolkit.from_module(arcade_math)) class ChatRequest(BaseModel): message: str + user_id: str @app.post("/chat") @@ -46,7 +43,7 @@ async def postChat(request: ChatRequest, tool_choice: str = "execute"): # "Slack.SendMessageToChannel", ], tool_choice=tool_choice, - user=config.user.email if config.user else None, + user=request.user_id, ) except Exception as e: diff --git a/examples/modal-deploy.py b/examples/modal-deploy.py index ba8e014c..3af8fb4c 100644 --- a/examples/modal-deploy.py +++ b/examples/modal-deploy.py @@ -29,7 +29,7 @@ def fastapi_app(): from fastapi import FastAPI from arcade.actor.fastapi.actor import FastAPIActor - from arcade.core.toolkit import Toolkit + from arcade.sdk import Toolkit web_app = FastAPI() diff --git a/toolkits/github/arcade_github/tests/test_activity.py b/toolkits/github/arcade_github/tests/test_activity.py index c958a0f8..82971aed 100644 --- a/toolkits/github/arcade_github/tests/test_activity.py +++ b/toolkits/github/arcade_github/tests/test_activity.py @@ -4,7 +4,7 @@ import pytest from arcade_github.tools.activity import set_starred from httpx import Response -from arcade.core.errors import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/github/arcade_github/tests/test_issues.py b/toolkits/github/arcade_github/tests/test_issues.py index 5f9b250e..864b0d84 100644 --- a/toolkits/github/arcade_github/tests/test_issues.py +++ b/toolkits/github/arcade_github/tests/test_issues.py @@ -4,7 +4,7 @@ import pytest from arcade_github.tools.issues import create_issue, create_issue_comment from httpx import Response -from arcade.core.errors import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/github/arcade_github/tests/test_pull_requests.py b/toolkits/github/arcade_github/tests/test_pull_requests.py index 3886241c..cc0a99cf 100644 --- a/toolkits/github/arcade_github/tests/test_pull_requests.py +++ b/toolkits/github/arcade_github/tests/test_pull_requests.py @@ -16,7 +16,7 @@ from arcade_github.tools.pull_requests import ( ) from httpx import Response -from arcade.core.errors import RetryableToolError, ToolExecutionError +from arcade.sdk.errors import RetryableToolError, ToolExecutionError @pytest.fixture diff --git a/toolkits/github/arcade_github/tests/test_repositories.py b/toolkits/github/arcade_github/tests/test_repositories.py index 154023d7..5a78a620 100644 --- a/toolkits/github/arcade_github/tests/test_repositories.py +++ b/toolkits/github/arcade_github/tests/test_repositories.py @@ -11,7 +11,7 @@ from arcade_github.tools.repositories import ( ) from httpx import Response -from arcade.core.errors import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/github/arcade_github/tools/activity.py b/toolkits/github/arcade_github/tools/activity.py index c13511a0..f05e0b6e 100644 --- a/toolkits/github/arcade_github/tools/activity.py +++ b/toolkits/github/arcade_github/tools/activity.py @@ -2,8 +2,7 @@ from typing import Annotated import httpx -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import GitHub from arcade_github.tools.utils import get_github_json_headers, get_url, handle_github_response diff --git a/toolkits/github/arcade_github/tools/issues.py b/toolkits/github/arcade_github/tools/issues.py index 8e887a92..0b954f82 100644 --- a/toolkits/github/arcade_github/tools/issues.py +++ b/toolkits/github/arcade_github/tools/issues.py @@ -3,8 +3,7 @@ from typing import Annotated, Optional import httpx -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import GitHub from arcade_github.tools.utils import ( get_github_json_headers, diff --git a/toolkits/github/arcade_github/tools/pull_requests.py b/toolkits/github/arcade_github/tools/pull_requests.py index 54a63e3b..5629d8bf 100644 --- a/toolkits/github/arcade_github/tools/pull_requests.py +++ b/toolkits/github/arcade_github/tools/pull_requests.py @@ -3,10 +3,9 @@ from typing import Annotated, Optional import httpx -from arcade.core.errors import RetryableToolError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import GitHub +from arcade.sdk.errors import RetryableToolError from arcade_github.tools.models import ( DiffSide, PRSortProperty, diff --git a/toolkits/github/arcade_github/tools/repositories.py b/toolkits/github/arcade_github/tools/repositories.py index 31352633..11af8587 100644 --- a/toolkits/github/arcade_github/tools/repositories.py +++ b/toolkits/github/arcade_github/tools/repositories.py @@ -3,8 +3,7 @@ from typing import Annotated, Optional import httpx -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import GitHub from arcade_github.tools.models import ( ActivityType, diff --git a/toolkits/github/arcade_github/tools/utils.py b/toolkits/github/arcade_github/tools/utils.py index 80b3622e..b93e6d66 100644 --- a/toolkits/github/arcade_github/tools/utils.py +++ b/toolkits/github/arcade_github/tools/utils.py @@ -1,4 +1,4 @@ -from arcade.core.errors import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError from arcade_github.tools.constants import ENDPOINTS, GITHUB_API_BASE_URL diff --git a/toolkits/github/evals/eval_github_activity.py b/toolkits/github/evals/eval_github_activity.py index 2f0e3d5b..05cbc75e 100644 --- a/toolkits/github/evals/eval_github_activity.py +++ b/toolkits/github/evals/eval_github_activity.py @@ -1,7 +1,7 @@ import arcade_github from arcade_github.tools.activity import set_starred -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/github/evals/eval_github_issues.py b/toolkits/github/evals/eval_github_issues.py index e8d27112..d9f9b507 100644 --- a/toolkits/github/evals/eval_github_issues.py +++ b/toolkits/github/evals/eval_github_issues.py @@ -4,7 +4,7 @@ from arcade_github.tools.issues import ( create_issue_comment, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/github/evals/eval_github_pull_requests.py b/toolkits/github/evals/eval_github_pull_requests.py index 25fe6579..16d920bc 100644 --- a/toolkits/github/evals/eval_github_pull_requests.py +++ b/toolkits/github/evals/eval_github_pull_requests.py @@ -14,7 +14,7 @@ from arcade_github.tools.pull_requests import ( update_pull_request, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/github/evals/eval_github_repositories.py b/toolkits/github/evals/eval_github_repositories.py index 193fba73..a852941b 100644 --- a/toolkits/github/evals/eval_github_repositories.py +++ b/toolkits/github/evals/eval_github_repositories.py @@ -8,7 +8,7 @@ from arcade_github.tools.repositories import ( list_review_comments_in_a_repository, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/google/arcade_google/tools/calendar.py b/toolkits/google/arcade_google/tools/calendar.py index b0f37994..296c954e 100644 --- a/toolkits/google/arcade_google/tools/calendar.py +++ b/toolkits/google/arcade_google/tools/calendar.py @@ -5,10 +5,9 @@ from google.oauth2.credentials import Credentials from googleapiclient.discovery import build from googleapiclient.errors import HttpError -from arcade.core.errors import RetryableToolError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Google +from arcade.sdk.errors import RetryableToolError from arcade_google.tools.models import EventVisibility, SendUpdatesOptions from arcade_google.tools.utils import parse_datetime diff --git a/toolkits/google/arcade_google/tools/docs.py b/toolkits/google/arcade_google/tools/docs.py index f2f16973..af298b0c 100644 --- a/toolkits/google/arcade_google/tools/docs.py +++ b/toolkits/google/arcade_google/tools/docs.py @@ -1,7 +1,6 @@ from typing import Annotated -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Google from arcade_google.tools.utils import build_docs_service diff --git a/toolkits/google/arcade_google/tools/drive.py b/toolkits/google/arcade_google/tools/drive.py index 3a775686..41ff89a0 100644 --- a/toolkits/google/arcade_google/tools/drive.py +++ b/toolkits/google/arcade_google/tools/drive.py @@ -1,7 +1,6 @@ from typing import Annotated, Optional -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Google from arcade_google.tools.utils import build_drive_service, remove_none_values diff --git a/toolkits/google/arcade_google/tools/gmail.py b/toolkits/google/arcade_google/tools/gmail.py index 1df5cff0..3dbe5fff 100644 --- a/toolkits/google/arcade_google/tools/gmail.py +++ b/toolkits/google/arcade_google/tools/gmail.py @@ -8,10 +8,9 @@ from google.oauth2.credentials import Credentials from googleapiclient.discovery import build from googleapiclient.errors import HttpError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Google -from arcade.sdk.error import RetryableToolError +from arcade.sdk.errors import RetryableToolError from arcade_google.tools.utils import ( DateRange, build_query_string, diff --git a/toolkits/google/evals/eval_google_calendar.py b/toolkits/google/evals/eval_google_calendar.py index 105eef69..7d8ed4fc 100644 --- a/toolkits/google/evals/eval_google_calendar.py +++ b/toolkits/google/evals/eval_google_calendar.py @@ -10,7 +10,7 @@ from arcade_google.tools.calendar import ( update_event, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, DatetimeCritic, diff --git a/toolkits/google/evals/eval_google_docs.py b/toolkits/google/evals/eval_google_docs.py index 1a262bf8..8327a57d 100644 --- a/toolkits/google/evals/eval_google_docs.py +++ b/toolkits/google/evals/eval_google_docs.py @@ -6,7 +6,7 @@ from arcade_google.tools.docs import ( insert_text_at_end_of_document, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/google/evals/eval_google_drive.py b/toolkits/google/evals/eval_google_drive.py index a5d592b5..3bffae9c 100644 --- a/toolkits/google/evals/eval_google_drive.py +++ b/toolkits/google/evals/eval_google_drive.py @@ -2,7 +2,7 @@ import arcade_google from arcade_google.tools.drive import list_documents from arcade_google.tools.models import Corpora, OrderBy -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/google/evals/eval_google_gmail.py b/toolkits/google/evals/eval_google_gmail.py index 15220197..420701f2 100644 --- a/toolkits/google/evals/eval_google_gmail.py +++ b/toolkits/google/evals/eval_google_gmail.py @@ -3,7 +3,7 @@ from arcade_google.tools.gmail import ( send_email, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/google/tests/test_calendar.py b/toolkits/google/tests/test_calendar.py index 7a2f7020..bdceb65d 100644 --- a/toolkits/google/tests/test_calendar.py +++ b/toolkits/google/tests/test_calendar.py @@ -5,8 +5,8 @@ from arcade_google.tools.calendar import create_event, delete_event, list_events from arcade_google.tools.models import EventVisibility, SendUpdatesOptions from googleapiclient.errors import HttpError -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolAuthorizationContext, ToolContext +from arcade.sdk import ToolAuthorizationContext, ToolContext +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/google/tests/test_docs.py b/toolkits/google/tests/test_docs.py index 4fdfc27a..80801942 100644 --- a/toolkits/google/tests/test_docs.py +++ b/toolkits/google/tests/test_docs.py @@ -10,7 +10,7 @@ from arcade_google.tools.docs import ( from arcade_google.tools.utils import build_docs_service from googleapiclient.errors import HttpError -from arcade.core.errors import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/google/tests/test_drive.py b/toolkits/google/tests/test_drive.py index c536b7ae..7199802f 100644 --- a/toolkits/google/tests/test_drive.py +++ b/toolkits/google/tests/test_drive.py @@ -6,7 +6,7 @@ from arcade_google.tools.models import Corpora, OrderBy from arcade_google.tools.utils import build_drive_service from googleapiclient.errors import HttpError -from arcade.core.errors import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/google/tests/test_gmail.py b/toolkits/google/tests/test_gmail.py index cc98c71d..2835b999 100644 --- a/toolkits/google/tests/test_gmail.py +++ b/toolkits/google/tests/test_gmail.py @@ -16,8 +16,8 @@ from arcade_google.tools.gmail import ( from arcade_google.tools.utils import parse_draft_email, parse_email from googleapiclient.errors import HttpError -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolAuthorizationContext, ToolContext +from arcade.sdk import ToolAuthorizationContext, ToolContext +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/linkedin/arcade_linkedin/tools/share.py b/toolkits/linkedin/arcade_linkedin/tools/share.py index 17a03c61..babe3c01 100644 --- a/toolkits/linkedin/arcade_linkedin/tools/share.py +++ b/toolkits/linkedin/arcade_linkedin/tools/share.py @@ -2,10 +2,9 @@ from typing import Annotated import httpx -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import LinkedIn +from arcade.sdk.errors import ToolExecutionError LINKEDIN_BASE_URL = "https://api.linkedin.com/v2" diff --git a/toolkits/math/evals/eval_math_tools.py b/toolkits/math/evals/eval_math_tools.py index 830d742b..4c9e4ab1 100644 --- a/toolkits/math/evals/eval_math_tools.py +++ b/toolkits/math/evals/eval_math_tools.py @@ -1,7 +1,7 @@ import arcade_math from arcade_math.tools.arithmetic import add, sqrt -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/math/tests/test_arithmetic.py b/toolkits/math/tests/test_arithmetic.py index 67d307e9..5ec57d29 100644 --- a/toolkits/math/tests/test_arithmetic.py +++ b/toolkits/math/tests/test_arithmetic.py @@ -9,7 +9,7 @@ from arcade_math.tools.arithmetic import ( sum_range, ) -from arcade.sdk.error import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError def test_add(): diff --git a/toolkits/search/evals/eval_google_search.py b/toolkits/search/evals/eval_google_search.py index a776e98b..3c2aae19 100644 --- a/toolkits/search/evals/eval_google_search.py +++ b/toolkits/search/evals/eval_google_search.py @@ -1,7 +1,7 @@ import arcade_search from arcade_search.tools.google import search_google -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( EvalRubric, EvalSuite, diff --git a/toolkits/slack/arcade_slack/tools/chat.py b/toolkits/slack/arcade_slack/tools/chat.py index a388588f..86a3d133 100644 --- a/toolkits/slack/arcade_slack/tools/chat.py +++ b/toolkits/slack/arcade_slack/tools/chat.py @@ -3,10 +3,9 @@ from typing import Annotated from slack_sdk import WebClient from slack_sdk.errors import SlackApiError -from arcade.core.errors import RetryableToolError, ToolExecutionError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Slack +from arcade.sdk.errors import RetryableToolError, ToolExecutionError @tool( diff --git a/toolkits/slack/evals/eval_slack_messaging.py b/toolkits/slack/evals/eval_slack_messaging.py index 64713fa7..79bb6e65 100644 --- a/toolkits/slack/evals/eval_slack_messaging.py +++ b/toolkits/slack/evals/eval_slack_messaging.py @@ -1,7 +1,7 @@ import arcade_slack from arcade_slack.tools.chat import send_dm_to_user, send_message_to_channel -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/spotify/arcade_spotify/tools/player.py b/toolkits/spotify/arcade_spotify/tools/player.py index 4fedfbda..427c9859 100644 --- a/toolkits/spotify/arcade_spotify/tools/player.py +++ b/toolkits/spotify/arcade_spotify/tools/player.py @@ -2,10 +2,9 @@ from typing import Annotated, Optional import httpx -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Spotify +from arcade.sdk.errors import ToolExecutionError SPOTIFY_BASE_URL = "https://api.spotify.com/v1" diff --git a/toolkits/web/evals/eval_firecrawl.py b/toolkits/web/evals/eval_firecrawl.py index 6927d1cd..956b89e9 100644 --- a/toolkits/web/evals/eval_firecrawl.py +++ b/toolkits/web/evals/eval_firecrawl.py @@ -8,7 +8,7 @@ from arcade_web.tools.firecrawl import ( scrape_url, ) -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( BinaryCritic, EvalRubric, diff --git a/toolkits/web/tests/test_firecrawl.py b/toolkits/web/tests/test_firecrawl.py index 98120153..1eefe462 100644 --- a/toolkits/web/tests/test_firecrawl.py +++ b/toolkits/web/tests/test_firecrawl.py @@ -10,7 +10,7 @@ from arcade_web.tools.firecrawl import ( scrape_url, ) -from arcade.sdk.error import ToolExecutionError +from arcade.sdk.errors import ToolExecutionError @pytest.fixture diff --git a/toolkits/x/arcade_x/tools/tweets.py b/toolkits/x/arcade_x/tools/tweets.py index be314312..93d8e149 100644 --- a/toolkits/x/arcade_x/tools/tweets.py +++ b/toolkits/x/arcade_x/tools/tweets.py @@ -2,10 +2,9 @@ from typing import Annotated import httpx -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import X +from arcade.sdk.errors import ToolExecutionError from arcade_x.tools.utils import ( expand_urls_in_tweets, get_tweet_url, diff --git a/toolkits/x/arcade_x/tools/users.py b/toolkits/x/arcade_x/tools/users.py index e94f6ef4..b235f046 100644 --- a/toolkits/x/arcade_x/tools/users.py +++ b/toolkits/x/arcade_x/tools/users.py @@ -2,10 +2,9 @@ from typing import Annotated import httpx -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import X +from arcade.sdk.errors import ToolExecutionError from arcade_x.tools.utils import expand_urls_in_user_description, expand_urls_in_user_url diff --git a/toolkits/x/evals/eval_x_tools.py b/toolkits/x/evals/eval_x_tools.py index fe86ea40..31a03f28 100644 --- a/toolkits/x/evals/eval_x_tools.py +++ b/toolkits/x/evals/eval_x_tools.py @@ -6,7 +6,7 @@ from arcade_x.tools.tweets import post_tweet # search_recent_tweets_by_keywords, # search_recent_tweets_by_username, # from arcade_x.tools.users import lookup_single_user_by_username -from arcade.core.catalog import ToolCatalog +from arcade.sdk import ToolCatalog from arcade.sdk.eval import ( EvalRubric, EvalSuite, diff --git a/toolkits/zoom/arcade_zoom/tools/meetings.py b/toolkits/zoom/arcade_zoom/tools/meetings.py index 4e138145..76290c95 100644 --- a/toolkits/zoom/arcade_zoom/tools/meetings.py +++ b/toolkits/zoom/arcade_zoom/tools/meetings.py @@ -2,10 +2,9 @@ from typing import Annotated, Optional import httpx -from arcade.core.errors import ToolExecutionError -from arcade.core.schema import ToolContext -from arcade.sdk import tool +from arcade.sdk import ToolContext, tool from arcade.sdk.auth import Zoom +from arcade.sdk.errors import ToolExecutionError ZOOM_BASE_URL = "https://api.zoom.us/v2"