(self, node: MCTSNode)
| 43 | self.max_tokens = request_config.get('max_tokens', self.max_tokens) |
| 44 | |
| 45 | def select(self, node: MCTSNode) -> MCTSNode: |
| 46 | logger.debug(f"Selecting node. Current node visits: {node.visits}, value: {node.value}") |
| 47 | if not node.children: |
| 48 | logger.debug("Node has no children. Returning current node.") |
| 49 | return node |
| 50 | selected_node = max(node.children, key=lambda c: c.value / (c.visits + 1e-8) + self.exploration_weight * np.sqrt(np.log(node.visits + 1) / (c.visits + 1e-8))) |
| 51 | logger.debug(f"Selected child node. Visits: {selected_node.visits}, Value: {selected_node.value}") |
| 52 | return selected_node |
| 53 | |
| 54 | def expand(self, node: MCTSNode) -> MCTSNode: |
| 55 | logger.debug(f"Expanding node. Current state: {node.state}") |
no outgoing calls
no test coverage detected