在今天的AI代理設計中存在一種根本的緊張關係! 這只有在你開始為生產環境構建時才會變得明顯: 你越是嚴格執行指令,就越會犧牲上下文的細微差別。 這樣想吧。 當你在構建面向客戶的代理時,有些指令確實是不可協商的。 因此,你希望你的代理能夠嚴格執行這些指令,即使這樣做聽起來有些機械。 例如,金融中的合規披露或醫療保健中的安全警告等指令不能容忍任何錯誤。 但其他指令則是溫和的建議,比如匹配客戶的語氣或保持回應簡潔。這些應該影響對話,而不是主導對話。 問題是,大多數代理架構並不允許你輕易表達這種區別。 每個指令通常都獲得相同的執行級別,因此你要麼被迫對所有事情都嚴格,聽起來像機器人,要麼對所有事情都靈活,冒著錯過關鍵規則的風險。 而且,不,你不能僅僅在提示中強調某些指令,因為提示中指令的存在本身就已經偏見了模型的行為。強調只會在現有偏見的基礎上增加更多偏見。 但我覺得Parlant最新的“關鍵性級別”控制很有趣(開源,擁有18k顆星)。 它讓你告訴你的代理對每個指令應該多麼重視。 ``` agent.create_guideline( condition="客戶詢問藥物", action="引導至醫療提供者",...