Трябва да използвате предикат на индекс, за да използвате частичен уникален индекс. Прочетете в документацията:
индекс_предикат
Използва се за разрешаване на извод за частични уникални индекси. Могат да бъдат изведени всякакви индекси, които удовлетворяват предиката (които всъщност не трябва да са частични индекси). Следва формат CREATE INDEX.
В този случай:
INSERT INTO key_value_pair (key, value, is_active) VALUES ('temperature','20', false)
ON CONFLICT (key) WHERE is_active
DO UPDATE
SET value = '33', is_active = true;