- Agent Bricks, AI Playground og MLflow dekker alt fra prototype til distribusjon med styring i Unity Catalog.
- ResponsesAgent tilbyr strømming, multiagent- og rike spor integrert med MLflow og AI Gateway.
- Implementering med deploy() oppretter sikre endepunkter, med sporing og gjennomgang i sanntid.
Å bygge AI-agenter i Databricks er ikke lenger bare for ultratekniske profiler: mellom visuelle miljøer som AI Playground , automatisering med Agent Bricks og MLflow-rammeverk, kan du nå gå fra idé til prototype og fra prototype til produksjon uten å gå deg vill i prosessen. I denne veiledningen kondenserer vi alt du trenger for å opprette, evaluere og distribuere agenter som kaller verktøy, spør etter data og integrerer med Unity Catalog- styring.
I tillegg til å utforske tilnærmingen uten kode og Python-utvikling, lærer du hvordan du pakker agenter med MLflow (ChatAgent og ResponsesAgent) , registrerer ressurser i katalogen, aktiverer sanntidsovervåking og skalerer ved hjelp av Model Serving. Vi inkluderer også en eksempelapp bygget med React og FastAPI for å sømløst integrere agenten din i et bedriftsnettgrensesnitt.
Alternativer for å opprette agenter i Databricks
Hvis du prioriterer hastighet og enkelhet, tilbyr Agent Bricks en automatisert arbeidsflyt for å bygge agentsystemer av høy kvalitet, som er tilpasset domene. Du spesifiserer brukstilfellet ditt og kobler til Unity Catalog- dataene dine . Plattformen genererer agentvarianter, optimaliserer med evaluering og lar deg forbedre, alt med innebygd styring og sikkerhet.
Når du trenger finjustert kontroll og ønsker å gjenbruke kjente biblioteker, kombinerer den kodebaserte tilnærmingen Mosaic AI Agent Framework og MLflow . Med Python kan du definere agentlogikk, aktivere verktøykall, utføre detaljert sporing og til slutt pakke og distribuere til produksjon med Databricks-økosystemet.
Hvis du allerede bruker tredjepartsrammeverk, finnes det innebygd støtte for LangGraph/ LangChain , LlamaIndex eller tilpassede Python-implementeringer. Takket være MLflows modellsignaturer og agentgrensesnitt kan du koble dem til evaluerings- og overvåkingsfunksjonene uten å måtte skrive om fra bunnen av.
Vil du lage prototyper i lynets fart? Med AI Playground velger du modell og virtuell maskin, legger til verktøy i LLM-en via et lavkodegrensesnitt og chatter for å validere. Deretter eksporterer du agenten til produksjonsklar kode og fortsetter med standard utviklingslivssyklus.
Modellsignaturer og kompatibilitet med plattformfunksjoner
Azure Databricks bruker MLflow-modellsignaturer for å beskrive input- og output-skjemaet til agenter. Produktfunksjoner – som AI Playground eller vurdering – krever at agenten overholder en av de støttede signaturene for å sikre interoperabilitet.
Hvis du følger den anbefalte fremgangsmåten når du bygger agenten, utleder MLflow automatisk den kompatible signaturen uten ekstra trinn. Ellers må du bekrefte at implementeringen din samsvarer med en av signaturene i det eldre skjemaet for agentinndata og -utdata, slik at du unngår overraskelser når du integrerer med Databricks-verktøy.
Hurtigveiledning: Første agent med Mosaic AI Agent Framework
Målet er å skape en agent som resonnerer med en LLM hos Databricks og kunne kjøre verktøy, for eksempel den innebygde funksjonen system.ai.python_exec fra Unity Catalog for å kjøre Python-kode. I tillegg vil vi aktivere sporing med MLflow for inspeksjon av spor og diagnostikk.
Grunnleggende krav til arbeidsområde: aktiver agentfunksjoner og ha tilgang til modellserveringI kjøretidsmiljøet, installer pakker som mlflow, databricks-openai og agentpakkeren (databricks-agent o databricks-agents(avhengig av veiledningen du følger og versjonen), og start Python på nytt for å laste inn avhengigheter.
Definer tilkoblingen til modelltjenesten ved hjelp av OpenAI-klienten som den eksponerer Arbeidsområdeklient, aktiv mlflow.openai.autolog() for automatisk instrumentering, og registrerer tilgjengelige verktøy. Blant dem, system.ai.python_exec Den fungerer som en statsløs Python-tolk og lar LLM-en løse beregninger eller manipulere data under dialogen.
Med en funksjon som run_agent(), sender du brukerens forespørsel til chat-endepunktet (For eksempel en modell som «databricks-claude-3-7-sonnett«og håndtere mulige anrop til verktøy returnerer assistentmeldingene og verktøysvarene i en sammenhengende liste.
For å teste, kjør en spørring som krever kode (f.eks. beregning av det 100. Fibonacci-tallet ) og se gjennom både veiviserutdataene og MLflow-sporene som er logget i den tilknyttede notatboken eller eksperimentet. Dette lar deg forbedre orkestreringen før pakking.
Pakket med MLflow og distribuert i Model Serving
En anbefalt måte å forberede agenten for produksjon på er ved å implementere grensesnittet MLflow ChatAgentDu trenger en metode predict() som aksepterer meldinger, kaller agentlogikken din og returnerer en ChatAgentResponse med meldingslisten (inkludert mellomliggende meldinger knyttet til verktøy, hvis aktuelt).
For å legge til rette for servitude, konsolider all koden til én Python-fil (for eksempel ved å bruke %%writefile quickstart_agent.py (hvis du jobber på en bærbar PC). I den siste delen, ring mlflow.models.set_model() overføre instansen av klassen din (f.eks. QuickstartAgent) for å etablere inngangspunkt slutning.
Registrer agenten i Enhetskatalog med mlflow.pyfunc.log_model, gjelder også ressurser som du trenger i produksjon: LLM-modellens sluttpunkt (f.eks. DatabricksServingEndpoint) og katalogfunksjonene som agenten vil påkalle (f.eks. DatabricksFunction med system.ai.python_execDermed kan Databricks Konfigurer autentisering for disse ressursene ved utrulling.
Til slutt bruker du Agent API-et til å å distribuere modellen til et tjenesteendepunkt: from databricks import agents y agents.deploy(model_name, model_version)Når endepunktet starter, vil du kunne Chat fra AI Playgrounddel det med interesserte parter og begynn å samle inn tilbakemeldinger.
Hvis du vil fortsette å forbedre deg, tilbyr Databricks veiledninger for måling av agentkvalitet , bygging av agenter med henting (RAG) på ustrukturerte data og kontroll av flerturnssamtaler, samt alternativer med LangGraph, ren Python eller OpenAI.
ResponsesAgent: Det moderne grensesnittet for produksjonsagenter
Selv ChatAgent Det fungerer bra, MLflow anbefaler det i dag. ResponsesAgent For seriøse agenter. Dette grensesnittet er kompatibelt med skjemaet Responses fra OpenAI og tillater integrering av agenter fra ethvert rammeverk med Databricks' muligheter (registrering, sporing, evaluering, distribusjon og observerbarhet) uten friksjon.
Viktige fordeler: innebygd støtte for systemer multi-agent, utgangsmodus streaming, fullstendig historikk over meldinger og verktøykall, bekreftelse av verktøykall og verktøy som varer lenge. I tillegg tilbyr det typede grensesnitt I Python, automatisk signaturslutning, automatisk sporing av predict y predict_stream og forbedrede inferansetabeller via AI Gateway.
Installasjonskrav for denne metoden: databricks-agents 1.2.0 +, mlflow 3.1.3 + y Python 3.10+ (ved bruk av Serverless eller Databricks Runtime 13.3 LTS+). Databricks anbefaler også følgende pakker: AI-bro for vanlige integrasjoner.
Nyttige integrasjoner: databricks-openai (OpenAI), databricks-langchain (LangChain/LangGraph), databricks-dspy (DSPy) og databricks-ai-bridge (Agenter i ren Python). Med disse delene kan du bygge alt fra enkle agenter til komplekse rørledninger med gjenoppretting og verktøyanrop.
Hvis du allerede har en innebygd agent, pakk den inn i en klasse som arver fra mlflow.pyfunc.ResponsesAgentImplementer predict å konvertere inngangene og utgangene til ResponsesAgent-skjemaFor strømming, stol på predict_stream, sender ut deltaer og en siste begivenhet response.output_item.done Vennligst legg til det fullstendige svaret.
Når det gjelder strømmefeil, sprer Mosaic AI feilen sammen med den siste tokenen innenfor databricks_output.errorKlienten din bør fange opp og vise det riktig, og dermed forbedre utrensingsopplevelse.
Gjenvinningssystemer, tilpassede inndata og sporbarhet
Mange agenter bruker resirkuleringsselskaper for RAG-er over vektorindekser. Hvis hentingsspennene dine eksponerer et annet skjema, kan du kartlegge det med mlflow.models.set_retriever_schemaerklære primary_key, text_column, doc_uri og andre kolonner. Dermed vil AI Playground vise Lenker til kilder gjenopprettet og evalueringen vil gjelde relevanspoenggivere automatisk.
I tilfeller der agenten din trenger ytterligere informasjon (for eksempel klienttype o øktnummer), bruker custom_inputs og returnerer metadata i custom_outputs som ikke skal forurense chatteloggen. Både AI Playground og anmeldelsesappen lar deg gå inn tilpassede_inndata fra brukergrensesnittet.
Implementering med deploy(), krav og automatiserte handlinger
For å publisere agenten din på Mosaic AI Model Serving, bruk funksjonen deploy() av Python API-et. I MLflow 3, installer mlflow >= 3.1.3 y databricks-agents >= 1.1.0 (hvis du distribuerer utenfor bærbare datamaskiner). I MLflow 2.x endres minimumsverdiene (for eksempel mlflow >= 2.13.1 y databricks-agents >= 0.12.0Sørg for Registrer agenten i Unity-katalogen før utplassering.
Ring til deploy() bygg et skalerbart endepunkt med automatisk balansering, konfigurere sikker autentisering for Databricks-ressurser (vektorindekser, katalogfunksjoner) – kontroll av eiertillatelser – og aktiverer gjennomgå søknad for samarbeid med interessenter.
Det muliggjør også sanntidsovervåking i MLflow (med spor i det aktive eksperimentet og i slutningstabeller). I MLflow 3 kan produksjonsovervåking med automatisk kvalitetsvurdering konfigureres; REST-forespørsler og kommentarer logges i slutningstabeller (ved hjelp av moderne tilbakemeldings-API-er).
For å tilpasse, send argumenter til deploy() som scale_to_zero_enabled=Trueredusere kostnader etter nedetid på bekostning av høyere ventetid på den første forespørselen. I tillegg har du verktøy for liste, hente og slette distribusjoner via Agent API-et.
Gode fremgangsmåter for tilstand, konfigurasjon og utførelsesmønstre
Modellvisning er distribuert: unngå lokale cacher og antar at ulike svar kan håndtere ulike vendinger i en samtale. Den rekonstruerer tilstanden fra ordbok av ResponsesAgentRequest i hver predict og utforme staten til å være trådsikker.
Initialiserer tilstanden innenfor predict og ikke i agentkonstruktøren, siden én enkelt replika kan håndtere samtaler fra forskjellige brukere. Dette forhindrer informasjonslekkasjer og samtidighetskonflikter i miljøer med høy gjennomstrømning.
Parameteriser agentens oppførsel med ModelConfig (ordbok eller YAML). Definer for eksempel model_serving_endpointLLM-parametere og ledetekstmaler; last inn konfigurasjonen i utvikling og forfrem den til produksjon uten å berøre koden.
Unngå å introdusere hendelsesløkker eller asynkrone rammer på agentserveren: Databricks håndterer samtidighet internt . Bruk synkron kode eller tilbakekall. Ellers kan du støte på feil som «Denne hendelsesløkken kjører allerede» og uregelmessig oppførsel.
Agent Bricks: automatisering uten kode for å akselerere verdiskaping
Agent Bricks, introdusert i 2025, tilbyr en sømløs arbeidsflyt for agentoppretting som ikke krever koding . Du legger inn oppgaven i naturlig språk, kobler til dataene dine, og plattformen velger modeller, genererer syntetiske data , evaluerer og forbedrer prosessen til den leverer en produksjonsklar agent med Unity Catalog- styring.
Blant fordelene er ende-til-ende-automatisering , skalerbarhet i Databricks – med endepunkter som kan skaleres til null etter 3 dagers inaktivitet –, bruks- og kostnadsanalyser på Lakehouse og ferdige agenttyper (informasjonsutvinning, tilpasset LLM , kunnskapsassistent og multiagentveileder for kompleks orkestrering).
Begrensninger inkluderer det faktum at den genererte koden ikke er nedlastbar for øyeblikket , noe som reduserer behovet for dyp tilpasning, og malkatalogen er rettet mot organisasjoner som allerede er integrert med Lakehouse og Unity Catalog. Noen brukere synes også at kostnadsmålingene mangler granularitet .
Eksempler, multiagent- og tilstandsfulle agenter
I den offisielle dokumentasjonen finner du notatbøker med OpenAI (enkel chat og verktøykall, for både Databricks og OpenAI-hostede modeller), LangGraph (verktøyanrop) og DSPy (verktøykall i én omgang). Disse er et utmerket grunnlag for å utvide funksjonaliteten med tilpassede verktøy og kvalitetsvurderinger.
For å orkestrere flere spesialister kan du sette opp samarbeidende systemer ved hjelp av verktøy som Genie. Og hvis du er interessert i samtaleminne, finnes det støtte for tilstandsfulle agenter som tillater kontrollpunkter og vedvarende chattråder.
I den offisielle dokumentasjonen finner du notatbøker med OpenAI (enkel chat og verktøykall, for både Databricks og OpenAI-hostede modeller), LangGraph (verktøyanrop) og DSPy (verktøykall i én omgang). Disse er et utmerket grunnlag for å utvide funksjonaliteten med tilpassede verktøy og kvalitetsvurderinger.
Apper på Databricks: Brukergrensesnitt med React og backend i FastAPI
Databricks -apper tilbyr en robust plattform for å levere rike grensesnitt uten å sette opp ekstern infrastruktur. De integreres naturlig med Databricks SQL, Unity Catalog , Model Serving og Jobs, og arver plattformens sikkerhets- og samsvarskontroller.
Et veldig praktisk mønster er å lage et frontend med React (som støtter strømming, meldingsgjengivelse og Markdown UX) og et backend med FastAPI som fungerer som en bro til agentens endepunkt. Backend ruter brukerens forespørsel til modelltjenesten og returnerer det strukturerte svaret til klienten.
I FastAPI er samlingsrekkefølgen til delapplikasjoner viktig: app.mount("/api", api_app) dirigerer API-ruter (for eksempel /api/chat) Og app.mount("/", ui_app) Den betjener de statiske filene fra React-bygget i rotkatalogen. Dette skjemaet vedlikeholder klarhet i rutene og skiller brukergrensesnittet fra endepunkter.
Konfigurer miljøvariabler (f.eks. SERVING_ENDPOINT_NAME eller FQN-en til agentmodellen i Unity Catalog) fra appdefinisjonen i Databricks. Kompiler frontend (npm run build), synkroniserer filer, deklarerer avhengigheter (requirements.txt) og starter med Gunicorn + Uvicorn arbeidere for ASGI.
Ekte tilfelle: chatbot for produksjonsoperasjoner
I MOM-scenarier (Manufacturing Operations Management) kan en Databricks-chatbot hjelpe produksjonsledere med flaskehalsanalyse , lagerstyring og rapportgenerering. Funksjoner eksponeres som verktøy i Unity-katalogen (via SQL eller Python), og agenten aktiverer dem basert på konteksten.
Eksempler: en funksjon identify_bottleneck_station Den kjører spørringer i Databricks SQL for å oppdage trinnet som forårsaker flest forsinkelser; en annen, check_inventory_levelsDen returnerer varer i sanntid. Agenten kan også send e-post, produsere rapporter og utføre sentimentanalyser, alt orkestrert med verktøykall.
Implementering av Model Serving-endepunktet fungerer som standard backend . React-appen bruker dette endepunktet, viser sanntidssvar med en polert brukeropplevelse og støtter token-strømming når det er aktivert i ResponsesAgent.
Migrering fra ChatCompletions og kompatibilitet
Hvis den eldre agenten din bruker OpenAIs ChatCompletions API , kan du migrere til ResponsesAgent med en container som oversetter innkommende/utgående meldinger og eventuelt tilordner strømmingsdeltaer til ResponsesAgentStreamEvent . Dette moderniserer telemetri og observerbarhet uten å omskrive kjernelogikken.
For å liste opp og administrere distribusjoner lar Agent API deg liste opp eksisterende distribusjoner, hente en bestemt distribusjon (etter navn og versjon) og fjerne endepunkter du ikke lenger trenger. Husk å administrere legitimasjonsinformasjon for eksterne ressurser ved hjelp av miljøvariabler og hemmeligheter.
Databricks tilbyr en komplett vei: fra idéutvikling med AI Playground eller automatisering med Agent Bricks, via kodeutvikling (Mosaic AI, MLflow, LangGraph, DSPy), til pakking, registrering i Unity Catalog , distribusjon med deploy() og produksjonsovervåking. Med beste praksis som riktige modellsignaturer , sikker tilstand i distribuerte miljøer og parameterisert konfigurasjon, kan du levere pålitelige, styrte agenter klare for integrering i webapplikasjoner på plattformen.

