跳转到主要内容

DatabricksQueryTool

描述

使用 CLI 配置文件或直接主机/令牌身份验证对 Databricks 工作区表运行 SQL。

安装

uv add crewai-tools[databricks-sdk]

环境变量

  • DATABRICKS_CONFIG_PROFILE 或 (DATABRICKS_HOST + DATABRICKS_TOKEN)
在 Databricks 工作区中的“用户设置”→“开发者”下创建个人访问令牌并查找主机详细信息。文档:https://docs.databricks.com/en/dev-tools/auth/pat.html

示例

代码
from crewai import Agent, Task, Crew
from crewai_tools import DatabricksQueryTool

tool = DatabricksQueryTool(
    default_catalog="main", 
    default_schema="default",
)

agent = Agent(
    role="Data Analyst",
    goal="Query Databricks",
    tools=[tool],
    verbose=True,
)

task = Task(
    description="SELECT * FROM my_table LIMIT 10",
    expected_output="10 rows", 
    agent=agent,
)

crew = Crew(
    agents=[agent], 
    tasks=[task],
    verbose=True,
)
result = crew.kickoff()

print(result)

参数

  • query(必填):要执行的 SQL 查询
  • catalog(可选):覆盖默认目录
  • db_schema(可选):覆盖默认架构
  • warehouse_id(可选):覆盖默认 SQL 仓库
  • row_limit(可选):要返回的最大行数(默认值:1000)

初始化时的默认值

  • default_catalog
  • default_schema
  • default_warehouse_id

错误处理和提示

  • 身份验证错误:验证 DATABRICKS_HOST 是否以 https:// 开头且令牌有效。
  • 权限:确保您的 SQL 仓库和架构可由您的令牌访问。
  • 限制:应避免在代理循环中运行长时间查询;添加过滤器/限制。