| 118 | |
| 119 | |
| 120 | def rich_print(before_summary, after_summary, bfgreedy, afgreedy): |
| 121 | from rich.console import Console |
| 122 | from rich.table import Table |
| 123 | |
| 124 | console = Console() |
| 125 | table = Table(show_header=True, header_style="bold magenta", title="pass@k results") |
| 126 | |
| 127 | before_row = [] |
| 128 | after_row = [] |
| 129 | |
| 130 | table.add_column(" ", style="dim", no_wrap=True) |
| 131 | |
| 132 | if bfgreedy is not None: |
| 133 | assert afgreedy is not None |
| 134 | table.add_column("Greedy pass@1", justify="right", style="bold green") |
| 135 | before_row.append(f"{bfgreedy:.1f}") |
| 136 | after_row.append(f"{afgreedy:.1f}") |
| 137 | |
| 138 | for k in before_summary: |
| 139 | table.add_column(k, justify="right", style="bold magenta") |
| 140 | table.add_column("Tbest.", justify="right") |
| 141 | amax_before = np.argmax(before_summary[k]) |
| 142 | amax_after = np.argmax(after_summary[k]) |
| 143 | before_row.append(f"{before_summary[k][amax_before]:.1f}") |
| 144 | before_row.append(f"{TEMPS[amax_before]}") |
| 145 | after_row.append(f"{after_summary[k][amax_after]:.1f}") |
| 146 | after_row.append(f"{TEMPS[amax_after]}") |
| 147 | |
| 148 | table.add_row("Before", *before_row) |
| 149 | table.add_row("After", *after_row) |
| 150 | |
| 151 | console.print(table) |
| 152 | |
| 153 | |
| 154 | if __name__ == "__main__": |