Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Questa funzionalità è in versione beta. Gli amministratori dell'account possono controllare l'accesso a questa funzionalità dalla pagina Anteprime .
Con l'integrazione dell'agente di codifica di Azure Databricks, è possibile gestire l'accesso e l'utilizzo per agenti di codifica come Cursor, interfaccia della riga di comando gemini, interfaccia della riga di comando codex e Claude Code. Basato su Gateway di intelligenza artificiale, fornisce tabelle di limitazione della velocità, rilevamento dell'utilizzo e inferenza per gli strumenti di codifica.
Funzionalità
- Accesso: accesso diretto a vari strumenti e modelli di codifica, tutti sotto una fattura.
- Osservabilità: un singolo dashboard unificato per tenere traccia dell'utilizzo, della spesa e delle metriche in tutti gli strumenti di codifica.
- Governance unificata: gli amministratori possono gestire le autorizzazioni del modello e i limiti di frequenza direttamente tramite il gateway di intelligenza artificiale.
Requisiti
- Anteprima del gateway di intelligenza artificiale (beta) abilitata per l'account.
- Un'area di lavoro di Azure Databricks in un'area supportata dal gateway di intelligenza artificiale (beta).
- Catalogo Unity abilitato per l'area di lavoro. Vedere Abilitare un'area di lavoro per il Catalogo Unity.
Agenti supportati
Sono supportati gli agenti di codifica seguenti:
- Cursor
- Codex CLI - Interfaccia della riga di comando
- Interfaccia della riga di comando gemini
- Claude Code
Configurazione
Cursor
Per configurare Cursor per l'uso degli endpoint del gateway di intelligenza artificiale:
Passaggio 1: Configurare l'URL di base e la chiave API
Aprire Cursore e passare a Impostazioni>Impostazioni Cursore>Modelli>Chiavi API.
Abilitare Override OpenAI Base URL (Esegui override dell'URL di base OpenAI) e immettere l'URL:
https://<ai-gateway-url>/cursor/v1Sostituire
<ai-gateway-url>con l'URL dell'endpoint del gateway di intelligenza artificiale.Incollare il token di accesso personale di Azure Databricks nel campo Chiave API OpenAI .
Passaggio 2: Aggiungere modelli personalizzati
- Fare clic su + Aggiungi modello personalizzato in Impostazioni cursore.
- Aggiungere il nome dell'endpoint del gateway di intelligenza artificiale e attivare l'opzione.
Annotazioni
Attualmente sono supportati solo gli endpoint del modello di base creati da Azure Databricks.
Passaggio 3: Testare l'integrazione
- Aprire la modalità Ask con
Cmd+L(macOS) oCtrl+L(Windows/Linux) e selezionare il modello. - Inviare un messaggio. Tutte le richieste ora instradano attraverso Azure Databricks.
Codex CLI
Passaggio 1: Impostare la variabile di ambiente DATABRICKS_TOKEN
export DATABRICKS_TOKEN=<databricks_pat_token>
Passaggio 2: Configurare il client Codex
Creare o modificare il file di configurazione Codex in ~/.codex/config.toml:
profile = "default"
[profiles.default]
model_provider = "proxy"
model = "databricks-gpt-5-2"
[model_providers.proxy]
name = "Databricks Proxy"
base_url = "https://<ai-gateway-url>/openai/v1"
env_key = "DATABRICKS_TOKEN"
wire_api = "responses"
Sostituire <ai-gateway-url> con l'URL dell'endpoint del gateway di intelligenza artificiale.
Interfaccia della riga di comando gemini
Passaggio 1: Installare la versione più recente dell'interfaccia della riga di comando di Gemini
npm install -g @google/gemini-cli@nightly
Passaggio 2: Configurare le variabili di ambiente
Creare un file ~/.gemini/.env e aggiungere la configurazione seguente. Per altri dettagli, vedere la documentazione sull'autenticazione del CLI Gemini.
GEMINI_MODEL=databricks-gemini-2-5-flash
GOOGLE_GEMINI_BASE_URL=https://<ai-gateway-url>/gemini
GEMINI_API_KEY_AUTH_MECHANISM="bearer"
GEMINI_API_KEY=<databricks_pat_token>
Sostituire <ai-gateway-url> con l'URL dell'endpoint del gateway di intelligenza artificiale e <databricks_pat_token> con il token di accesso personale.
Claude Code
Passaggio 1: Configurare il client Claude Code
Aggiungere la configurazione seguente a ~/.claude/settings.json. Per altri dettagli, vedere la documentazione sulle impostazioni di Claude Code .
{
"env": {
"ANTHROPIC_MODEL": "databricks-claude-opus-4-6",
"ANTHROPIC_BASE_URL": "https://<ai-gateway-url>/anthropic",
"ANTHROPIC_AUTH_TOKEN": "<databricks_pat_token>",
"ANTHROPIC_CUSTOM_HEADERS": "x-databricks-use-coding-agent-mode: true",
"CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1"
}
}
Sostituire <ai-gateway-url> con l'URL dell'endpoint del gateway di intelligenza artificiale e <databricks_pat_token> con il token di accesso personale.
Passaggio 2 (facoltativo): Configurare la raccolta di metriche OpenTelemetry
Vedere Configurare la raccolta di dati OpenTelemetry per informazioni dettagliate sull'esportazione di metriche e log da Claude Code alle tabelle Delta gestite dal catalogo Unity.
Dashboard
Dopo aver rilevato l'utilizzo dell'agente di codifica tramite il gateway di intelligenza artificiale, è possibile visualizzare e monitorare le metriche nel dashboard esistente.
Per accedere al dashboard, selezionare Visualizza dashboard nella pagina Gateway di intelligenza artificiale. Verrà creato un dashboard preconfigurato con grafici per l'utilizzo dello strumento di codifica.
Configurare la raccolta dati OpenTelemetry
Azure Databricks supporta l'esportazione di metriche e log OpenTelemetry da Claude Code alle tabelle Delta gestite dal catalogo Unity. Tutte le metriche sono dati delle serie temporali esportati usando il protocollo di metrica standard OpenTelemetry e i log vengono esportati usando il protocollo di log OpenTelemetry. Per le metriche e gli eventi disponibili, vedere Claude Code monitoring usage.
Requisiti
- OpenTelemetry nell'anteprima di Azure Databricks abilitata. Vedere Gestire le anteprime di Azure Databricks.
Passaggio 1: Creare tabelle OpenTelemetry nel catalogo unity
Creare tabelle gestite da Unity Catalog preconfigurate con gli schemi per metriche e log di OpenTelemetry.
Tabella delle metriche
CREATE TABLE <catalog>.<schema>.<table_prefix>_otel_metrics (
name STRING,
description STRING,
unit STRING,
metric_type STRING,
gauge STRUCT<
start_time_unix_nano: LONG,
time_unix_nano: LONG,
value: DOUBLE,
exemplars: ARRAY<STRUCT<
time_unix_nano: LONG,
value: DOUBLE,
span_id: STRING,
trace_id: STRING,
filtered_attributes: MAP<STRING, STRING>
>>,
attributes: MAP<STRING, STRING>,
flags: INT
>,
sum STRUCT<
start_time_unix_nano: LONG,
time_unix_nano: LONG,
value: DOUBLE,
exemplars: ARRAY<STRUCT<
time_unix_nano: LONG,
value: DOUBLE,
span_id: STRING,
trace_id: STRING,
filtered_attributes: MAP<STRING, STRING>
>>,
attributes: MAP<STRING, STRING>,
flags: INT,
aggregation_temporality: STRING,
is_monotonic: BOOLEAN
>,
histogram STRUCT<
start_time_unix_nano: LONG,
time_unix_nano: LONG,
count: LONG,
sum: DOUBLE,
bucket_counts: ARRAY<LONG>,
explicit_bounds: ARRAY<DOUBLE>,
exemplars: ARRAY<STRUCT<
time_unix_nano: LONG,
value: DOUBLE,
span_id: STRING,
trace_id: STRING,
filtered_attributes: MAP<STRING, STRING>
>>,
attributes: MAP<STRING, STRING>,
flags: INT,
min: DOUBLE,
max: DOUBLE,
aggregation_temporality: STRING
>,
exponential_histogram STRUCT<
attributes: MAP<STRING, STRING>,
start_time_unix_nano: LONG,
time_unix_nano: LONG,
count: LONG,
sum: DOUBLE,
scale: INT,
zero_count: LONG,
positive_bucket: STRUCT<
offset: INT,
bucket_counts: ARRAY<LONG>
>,
negative_bucket: STRUCT<
offset: INT,
bucket_counts: ARRAY<LONG>
>,
flags: INT,
exemplars: ARRAY<STRUCT<
time_unix_nano: LONG,
value: DOUBLE,
span_id: STRING,
trace_id: STRING,
filtered_attributes: MAP<STRING, STRING>
>>,
min: DOUBLE,
max: DOUBLE,
zero_threshold: DOUBLE,
aggregation_temporality: STRING
>,
summary STRUCT<
start_time_unix_nano: LONG,
time_unix_nano: LONG,
count: LONG,
sum: DOUBLE,
quantile_values: ARRAY<STRUCT<
quantile: DOUBLE,
value: DOUBLE
>>,
attributes: MAP<STRING, STRING>,
flags: INT
>,
metadata MAP<STRING, STRING>,
resource STRUCT<
attributes: MAP<STRING, STRING>,
dropped_attributes_count: INT
>,
resource_schema_url STRING,
instrumentation_scope STRUCT<
name: STRING,
version: STRING,
attributes: MAP<STRING, STRING>,
dropped_attributes_count: INT
>,
metric_schema_url STRING
) USING DELTA
TBLPROPERTIES (
'otel.schemaVersion' = 'v1'
)
Tabella Registri
CREATE TABLE <catalog>.<schema>.<table_prefix>_otel_logs (
event_name STRING,
trace_id STRING,
span_id STRING,
time_unix_nano LONG,
observed_time_unix_nano LONG,
severity_number STRING,
severity_text STRING,
body STRING,
attributes MAP<STRING, STRING>,
dropped_attributes_count INT,
flags INT,
resource STRUCT<
attributes: MAP<STRING, STRING>,
dropped_attributes_count: INT
>,
resource_schema_url STRING,
instrumentation_scope STRUCT<
name: STRING,
version: STRING,
attributes: MAP<STRING, STRING>,
dropped_attributes_count: INT
>,
log_schema_url STRING
) USING DELTA
TBLPROPERTIES (
'otel.schemaVersion' = 'v1'
)
Passaggio 2: Aggiornare il file delle impostazioni di Claude Code
Aggiungere le seguenti variabili di ambiente al blocco env nel file ~/.claude/settings.json per abilitare l'esportazione delle metriche e dei log:
{
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1",
"OTEL_METRICS_EXPORTER": "otlp",
"OTEL_EXPORTER_OTLP_METRICS_PROTOCOL": "http/protobuf",
"OTEL_EXPORTER_OTLP_METRICS_ENDPOINT": "https://<workspace-url>/api/2.0/otel/v1/metrics",
"OTEL_EXPORTER_OTLP_METRICS_HEADERS": "content-type=application/x-protobuf,Authorization=Bearer <databricks_pat_token>,X-Databricks-UC-Table-Name=<catalog>.<schema>.<table_prefix>_otel_metrics",
"OTEL_METRIC_EXPORT_INTERVAL": "10000",
"OTEL_LOGS_EXPORTER": "otlp",
"OTEL_EXPORTER_OTLP_LOGS_PROTOCOL": "http/protobuf",
"OTEL_EXPORTER_OTLP_LOGS_ENDPOINT": "https://<workspace-url>/api/2.0/otel/v1/logs",
"OTEL_EXPORTER_OTLP_LOGS_HEADERS": "content-type=application/x-protobuf,Authorization=Bearer <databricks_pat_token>,X-Databricks-UC-Table-Name=<catalog>.<schema>.<table_prefix>_otel_logs",
"OTEL_LOGS_EXPORT_INTERVAL": "5000"
}
}
Sostituire quanto segue:
-
<workspace-url>con l'URL del tuo spazio di lavoro di Azure Databricks. -
<databricks_pat_token>con il token di accesso personale. -
<catalog>.<schema>.<table_prefix>con i prefissi di catalogo, schema e tabella usati durante la creazione delle tabelle OpenTelemetry.
Annotazioni
Il OTEL_METRIC_EXPORT_INTERVAL valore predefinito è 60000 ms (60 secondi). Nell'esempio precedente viene impostato su 10000 ms (10 secondi). Il OTEL_LOGS_EXPORT_INTERVAL valore predefinito è 5000 ms (5 secondi).
Passaggio 3: Eseguire il codice Claude
claude
I dati devono essere propagati alle tabelle di Unity Catalog entro 5 minuti.
Passaggi successivi
- Gateway di intelligenza artificiale (beta)
- Configurare gli endpoint del gateway di intelligenza artificiale
- Eseguire query sugli endpoint del gateway di intelligenza artificiale
- Monitorare l'utilizzo per gli endpoint del gateway di intelligenza artificiale
- Monitorare i modelli usando le tabelle di inferenza