Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Mosaic AI stöder både enkla och komplexa AI-program, från RAG-chattrobotar (Retrieval Augmented Generation) till verktygssamtalsagenter. Lär dig de viktigaste begreppen bakom gen AI-appar och agentsystem, utforska vanliga designmönster och få praktiska självstudier för att skapa, utvärdera och skala gen-AI-appar.
Lär dig om begrepp för genetisk AI-appar
Bekanta dig med grundläggande koncept för generativ AI-appar.
Lär dig hur Mosaic AI hanterar viktiga utmaningar under utvecklingen av generativ AI.
Prova att skapa gen-AI-appar med Mosaic AI
Kom igång med följande notebook-guider:
- Skapa och distribuera din första AI-agent med Agent Framework
- Utvärdera en AI-agent med agentutvärdering
När du är redo för mer komplexitet kan du läsa de avancerade guiderna och självstudierna:
- Rag-guide från slutpunkt till slutpunkt
- Agentsystemdesignmönster
- Generative AI-apputvecklararbetsflöde
Vad är generativa AI-appar?
En gen AI-app är ett program som använder generativa AI-modeller (till exempel LLM:er, bildgenereringsmodeller och text-till-tal-modeller) för att skapa nya utdata, automatisera komplexa uppgifter eller delta i intelligenta interaktioner baserat på användarindata. Även om gen AI-appar kan använda olika modeller fokuserar den här guiden på LLM-baserade program.
Även om LLM-baserade gen AI-appar kan byggas på olika sätt, faller de vanligtvis under något av två arkitekturmönster:
| Typ 1: Monolitisk LLM + prompt | Typ 2 (rekommenderas): Agentsystem | |
|---|---|---|
| Vad är det? | En enda LLM med noggrant utformade uppmaningar. | Flera interagerande komponenter (LLM-anrop, hämtningar, API-anrop) samordnas tillsammans – allt från enkla kedjor till avancerade system med flera agenter. |
| Exempel på användningsfall | Innehållsklassificering: Använda en LLM för att kategorisera kundsupportärenden i fördefinierade ämnen. | Intelligent Assistant: Kombinera dokumenthämtning, flera LLM-anrop och externa API:er för att undersöka, analysera och generera omfattande rapporter. |
| bäst för | Enkla, fokuserade uppgifter, snabba prototyper och tydliga, väldefinierade frågor. | Komplexa arbetsflöden, uppgifter som kräver flera funktioner och uppgifter som kräver reflektion över tidigare steg. |
| Viktiga fördelar | Enklare implementering, snabbare utveckling och lägre driftskomplexitet. | Mer tillförlitlig och underhållsbar, bättre kontroll och flexibilitet, enklare att testa och verifiera samt optimering på komponentnivå. |
| begränsningar | Mindre flexibla, svårare att optimera och begränsade funktioner. | Mer komplex implementering, mer inledande installation och behov av komponentsamordning. |
För de flesta företagsanvändningsfall rekommenderar Databricks ett agentsystem. Genom att dela upp system i mindre, väldefinierade komponenter kan utvecklare hantera komplexiteten på ett bättre sätt samtidigt som hög kontroll och efterlevnad krävs för företagsprogram.
Mosaic AI har verktyg och funktioner som fungerar för både monolitiska system och agentsystem, och resten av den här dokumentationen omfattar att skapa båda typerna av gen-AI-appar.
Om du vill läsa mer om teorin bakom agentsystem jämfört med monolitiska modeller se blogginlägg från Databricks-grundarna:
- AI-agentssystem: Modulär teknik för tillförlitliga AI-applikationer för företag
- Övergången från modeller till sammansatta AI-system
Vad är ett agentsystem?
Ett agentsystem är ett AI-drivet system som självständigt kan uppfatta, bestämma och agera i en miljö för att uppnå mål. Till skillnad från en fristående LLM som bara genererar utgång när det uppmanas till det, har ett agentsystem en viss självbestämmande. Moderna LLM-baserade agentsystem använder en LLM som "hjärna" för att tolka kontext, orsak till vad som ska göras härnäst och utfärda åtgärder som API-anrop, hämtningsmekanismer och verktygsanrop för att utföra uppgifter.
Ett agentsystem är ett system med en LLM i grunden. Det systemet:
- Tar emot användarförfrågningar eller meddelanden från en annan agent.
- Orsaker till hur du fortsätter: vilka data som ska hämtas, vilken logik som ska tillämpas, vilka verktyg som ska anropas eller om du vill begära mer indata från användaren.
- Utför en plan och anropar eventuellt flera verktyg eller delegerar till underagenter.
- Returnerar ett svar eller uppmanar användaren att göra ytterligare förtydliganden.
Genom att överbrygga allmän intelligens (LLM:s förträngda funktioner) och dataintelligens (de specialiserade kunskaper och API:er som är specifika för ditt företag) möjliggör agentsystem högpresterande användningsfall för företag, till exempel avancerade kundtjänstflöden, datarika analysrobotar och orkestrering med flera agenter för komplexa operativa uppgifter.
Vad kan ett agentsystem göra?
Ett agentsystem kan:
- Planera åtgärder dynamiskt
- Bär status från ett steg till nästa
- Justera strategin baserat på ny information utan kontinuerlig mänsklig inblandning
Om en fristående LLM kan skicka ut en resväg när den tillfrågas kan ett agentsystem hämta kundinformation och boka flygningarna autonomt genom att utnyttja verktyg och API:er. Genom att kombinera "allmän intelligens" från LLM med "dataintelligens" (domänspecifika data eller API:er) kan agentsystem hantera avancerade företagsanvändningsfall som en enda statisk modell skulle ha svårt att lösa.
Handlingsförmåga är ett kontinuum; ju mer frihet som modellerna får för att styra systemets beteende, desto mer självständig blir applikationen. I praktiken begränsar de flesta produktionssystem noggrant agentens autonomi för att säkerställa efterlevnad och förutsägbarhet, till exempel genom att kräva mänskligt godkännande för riskfyllda åtgärder.
Allmän intelligens jämfört med dataintelligens
- Allmän intelligens: Refererar till vad LLM till sin natur vet från bred förträning på olika text. Detta är användbart för flyt i språket och allmänna resonemang.
- Dataintelligens: Refererar till organisationens domänspecifika data och API:er. Detta kan omfatta kundposter, produktinformation, kunskapsbaser eller dokument som återspeglar din unika affärsmiljö.
Agentsystem blandar dessa två perspektiv: De börjar med en LLM:s breda, allmänna kunskap och tar sedan in realtids- eller domänspecifika data för att besvara detaljerade frågor eller utföra specialiserade åtgärder.
Exempel på agentsystem
Överväg ett call center-scenario mellan en kund och en gen AI-agent:
Kunden skickar en begäran: "Kan du hjälpa mig att returnera min senaste beställning?"
- Orsak och plan: Med tanke på frågans avsikt planerar agenten: "Leta upp användarens senaste beställning och kontrollera vår returprincip".
- Hitta information (datainhämtning): Agenten frågar orderdatabasen efter att hämta relevant order och refererar till ett policydokument.
-
Orsak: Agenten kontrollerar om beställningen passar inom returfönstret.
- Valfritt human-in-the-loop: Agenten kontrollerar ytterligare en regel: Om objektet hamnar i en viss kategori eller ligger utanför det normala returfönstret eskalerar du till en människa.
- Åtgärd: Agenten utlöser returprocessen och genererar en fraktetikett.
- Orsak: Agenten genererar ett svar till kunden.
AI-agenten svarar kunden: "Klar! Här är din fraktsedel..."
De här stegen är naturliga inom ett mänskligt callcenter-sammanhang. I ett agentsystem kontext "resonerar" LLM medan systemet anropar specialiserade verktyg eller datakällor för att fylla i information.
Komplexitetsnivåer: Från LLM:er till agentsystem
Du kan stöta på flera nivåer av komplexitet när du skapar AI-system.
LLM (LLM + Prompt)
- En fristående LLM svarar på textuppmaningar baserat på kunskap från en omfattande träningsdatauppsättning.
- Bra för enkla eller allmänna frågor men ofta frånkopplad från dina verkliga affärsdata.
hårdkodade agentsystem ("Chain")
- Utvecklare samordnar deterministiska, fördefinierade steg. Till exempel kan ett RAG-program alltid hämta från ett vektorlager och kombinera resultat med användarprompten.
- Logiken är fast och LLM bestämmer inte vilket verktyg som ska anropas härnäst.
Verktygsinkallningsagentsystem
- LLM bestämmer vilket verktyg som ska användas och när det ska användas vid körning.
- Den här metoden stöder dynamiska, sammanhangsmedvetna beslut om vilka verktyg som ska anropas, till exempel en CRM-databas eller ett Slack-post-API.
system med flera agenter
- Flera specialiserade agenter, var och en med sin egen funktion eller domän.
- En koordinator (ibland en AI-övervakare, ibland regelbaserad) bestämmer vilken agent som ska anropas i varje steg.
- Agenter kan lämna uppgifter till varandra samtidigt som det övergripande konversationsflödet bevaras.
När du skapar ett LLM-baserat program börjar du enkelt. Introducera mer komplexa agentiska beteenden när du verkligen behöver dem för bättre flexibilitet eller modelldrivna beslut. Deterministiska kedjor erbjuder förutsägbara, regelbaserade flöden för väldefinierade uppgifter, medan fler agentiska metoder kostar extra komplexitet och potentiell svarstid.
Mosaic AI Agent Framework är agnostisk för dessa mönster, vilket gör det enkelt att börja enkelt och utvecklas mot högre nivåer av automatisering och autonomi när dina programkrav växer.
Verktyg i ett agentsystem
När det gäller ett agentsystem är verktyg funktioner för enkel interaktion som en LLM kan anropa för att utföra en väldefinierad uppgift. AI-modellen genererar vanligtvis parametrar för varje verktygsanrop, och verktyget ger en enkel interaktion med indatautdata. Det finns inget minne för flera turer på verktygssidan.
Några vanliga verktygskategorier är:
-
verktyg som hämtar eller analyserar data
- Vektorhämtningsverktyg: Fråga ett vektorindex för att hitta de mest relevanta textsegmenten.
- Strukturerade hämtningsverktyg: Query Delta-tabeller eller använd API:er för att hämta strukturerad information.
- webbsökningsverktyg: Sök på internet eller en intern webbkorpus.
- Klassiska ML-modeller: Verktyg som anropar ML-modeller för att utföra klassificerings- eller regressionsförutsägelser, till exempel en scikit-learn- eller XGBoost-modell.
- Gen AI-modeller: Verktyg som utför specialiserad generering, till exempel kod eller bildgenerering, och returnerar resultatet.
-
verktyg som ändrar tillståndet för ett externt system
- API-anropsverktyg: CRM-slutpunkter, interna tjänster eller andra tredjepartsintegreringar för uppgifter som "uppdatera leveransstatus".
- Kodkörningsverktyg: Kör kod som tillhandahålls av användaren (eller i vissa fall LLM-genererad) i en sandbox-miljö.
- Slack eller e-postintegrering: Publicerar ett meddelande eller skickar ett meddelande.
-
Verktyg som kör logik eller utför en specifik uppgift
- Kodexekutorverktyg: Kör användarangiven eller LLM-genererad kod i en sandbox-miljö, till exempel Python-skript.
Mer information om Mosaik AI-agentverktyg finns i AI-agentverktyg.
Viktiga egenskaper för verktyg
Verktyg i ett agentsystem:
- Utför en enda, väldefinierad åtgärd.
- Bevara inte pågående kontext utöver det anropet.
- Tillåt agentsystemet att nå externa data eller tjänster som LLM inte kan komma åt direkt.
Verktygsfelhantering och säkerhet
Eftersom varje verktygsanrop är en extern åtgärd, till exempel att anropa ett API, bör systemet hantera fel på ett korrekt sätt, till exempel timeouter, felhantering av felaktiga svar eller ogiltiga indata. I produktion begränsar du antalet tillåtna verktygsanrop, har ett återställningssvar om alla verktygsanrop misslyckas och tillämpar skyddsräcken för att säkerställa att agentsystemet inte upprepade gånger försöker utföra samma misslyckade åtgärd.