cjber commited on
Commit
4ce1bdc
·
1 Parent(s): bcfbee1

fix: catch errors with policy_chain

Browse files
Files changed (1) hide show
  1. planning_ai/nodes/reduce_node.py +12 -8
planning_ai/nodes/reduce_node.py CHANGED
@@ -103,14 +103,18 @@ def generate_policy_output(policy_groups):
103
  f"{bullet} Doc ID: {id}"
104
  for (bullet, id) in zip(policy["details"], policy["doc_id"], strict=True)
105
  ]
106
- reduced = policy_chain.invoke(
107
- {
108
- "theme": policy["themes"],
109
- "policy": policy["policies"],
110
- "details": zipped,
111
- }
112
- )
113
- out.extend(policy | p for p in reduced.dict()["policies"])
 
 
 
 
114
  return (
115
  pl.DataFrame(out)
116
  .group_by(["themes", "policies", "stance"])
 
103
  f"{bullet} Doc ID: {id}"
104
  for (bullet, id) in zip(policy["details"], policy["doc_id"], strict=True)
105
  ]
106
+ try:
107
+ reduced = policy_chain.invoke(
108
+ {
109
+ "theme": policy["themes"],
110
+ "policy": policy["policies"],
111
+ "details": zipped,
112
+ }
113
+ )
114
+ out.extend(policy | p for p in reduced.dict()["policies"])
115
+ except Exception as e:
116
+ logger.error(f"Failed to generate policies for {policy['policies']}: {e}")
117
+ continue
118
  return (
119
  pl.DataFrame(out)
120
  .group_by(["themes", "policies", "stance"])