C'è una tensione fondamentale nel design degli agenti AI oggi! E diventa ovvio solo quando inizi a costruire per la produzione: Più rigorosamente imponi un'istruzione, più sacrifici la sfumatura contestuale. Pensala in questo modo. Quando stai costruendo un agente rivolto ai clienti, alcune istruzioni sono davvero non negoziabili. Quindi, vuoi che il tuo agente le imponga rigorosamente, anche se suona robotico nel farlo. Ad esempio, istruzioni come le divulgazioni di conformità in finanza o gli avvisi di sicurezza in sanità non possono tollerare errori. Ma altre istruzioni sono suggerimenti gentili, come abbinare il tono del cliente o mantenere le risposte concise. Queste dovrebbero influenzare la conversazione, non dominarla. Il problema è che la maggior parte delle architetture degli agenti non ti consente di esprimere questa distinzione così facilmente. Ogni istruzione di solito riceve lo stesso livello di enforcement, quindi sei costretto a essere rigoroso su tutto e suonare robotico, oppure a essere flessibile su tutto e rischiare di perdere regole critiche. E no, non puoi semplicemente enfatizzare certe istruzioni nel prompt stesso perché la mera presenza di un'istruzione nel prompt già pregiudica il comportamento del modello. L'enfasi aggiunge solo più pregiudizio su quello esistente. Ma trovo interessante il controllo "livelli di criticità" di Parlant (open-source con 18k stelle). Ti consente di dire al tuo agente quanto attenzione prestare a ciascuna istruzione. ``` agent.create_guideline( condition="Il cliente chiede informazioni sui medicinali", action="Indirizzare al fornitore di assistenza sanitaria",...