Outils de fonction Unity Catalog avec connexion HTTP
Pour connecter des agents à des services externes, Databricks recommande les services MCP ou le proxy de connexions Unity Catalog. Les outils de fonctions UC qui encapsulent http_request restent pris en charge, mais ne sont plus l'approche recommandée.
Vous pouvez créer une fonction Unity Catalog qui encapsule http_request() pour appeler des services externes. Cette approche est utile pour les définitions d’outils basées sur SQL.
Exigences
Une connexion HTTP Unity Catalog pour le service externe. Référencez-le par son nom dans le parameter conn de la fonction http_request().
Créer un outil de fonction avec http_request()
L'exemple suivant crée un outil de fonction Unity Catalog qui publie un message sur Slack :
CREATE OR REPLACE FUNCTION main.default.slack_post_message(
text STRING COMMENT 'message content'
)
RETURNS STRING
COMMENT 'Sends a Slack message by passing in the message and returns the response received from the external service.'
RETURN (http_request(
conn => 'test_sql_slack',
method => 'POST',
path => '/api/chat.postMessage',
json => to_json(named_struct(
'channel', "C032G2DAH3",
'text', text
))
)).text
Voir CREATE FUNCTION (SQL, Python, Scala et Java).
L'accès SQL avec http_request est bloqué pour les types de connexion Utilisateur-à-machine par utilisateur et Enregistrement dynamique des clients. Utilisez plutôt le SDK Python de Databricks.