Fordelingen af ansvar i komplekse systemer afhænger af, om fejlen ligger i selve produktets design eller i måden, det anvendes på. Når et system fungerer som tilsigtet, men stadig skaber uforudsete konsekvenser, opererer vi ofte i et grænseland mellem produktansvar og brugeransvar.
Udvikleren har det primære ansvar for at sikre, at systemet er sikkert, dokumenteret og lever op til gældende lovgivning og standarder for ansvarlig AI eller softwareudvikling. Dette indebærer at minimere kendte risici og informere brugeren om systemets begrænsninger gennem klare brugsanvisninger og advarsler. Hvis udvikleren har handlet uagtsomt eller ignoreret kendte risici, kan ansvaret påhvile virksomheden.
Brugeren bærer til gengæld ansvaret for den kontekst, systemet implementeres i. Det indebærer korrekt opsætning og overvågning af systemets output. Hvis brugeren anvender teknologien til formål, den ikke er designet til, eller ignorerer advarsler, skifter det etiske og juridiske ansvar mod brugeren. I professionelle sammenhænge forsøges dette ofte reguleret gennem klare kontrakter og serviceaftaler (SLA), der definerer ansvarsgrænserne for begge parter.