(raw_response: str)
| 119 | |
| 120 | |
| 121 | def get_json_from_response(raw_response: str): |
| 122 | response = raw_response.strip() |
| 123 | l, r = response.rfind("```json"), response.rfind("```") |
| 124 | try: |
| 125 | if l == -1 or r == -1: |
| 126 | response = json_repair.loads(response) |
| 127 | else: |
| 128 | response = json_repair.loads(response[l + 7 : r].strip()) |
| 129 | return response |
| 130 | except Exception as e: |
| 131 | raise RuntimeError("Failed to parse JSON from response", e) |
| 132 | |
| 133 | |
| 134 | tenacity = retry( |
no outgoing calls
no test coverage detected