cli
Interfejs wiersza poleceń dla solwera AlphaCube.
Ten moduł stanowi punkt wejścia dla narzędzia wiersza poleceń, umożliwiając użytkownikom rozwiązywanie Kostki Rubika bezpośrednio z terminala. Parsuje argumenty dotyczące wyboru modelu, danych wejściowych (scramble), parametrów wyszukiwania i szczegółowości (verbosity), a następnie wywołuje główny solwer i wyświetla wynik.
main
def main()
Narzędzie wiersza poleceń do rozwiązywania Kostki Rubika za pomocą AlphaCube.
Argumenty:
--model_id
/-m
(str): Wybierz konkretny model do rozwiązywania (domyślnie: 'small' na CPU, w przeciwnym razielarge
; innym wyborem jestbase
).--format
/-f
(str): Określ format wejściowy ('moves' lub 'stickers').--scramble
/-s
(str): Zdefiniuj początkowy stan kostki za pomocą sekwencji ruchów lub słownika JSON w postaci ciągu znaków.--beam_width
/-bw
(int): Ustaw szerokość wiązki (beam width) dla wyszukiwania (domyślnie: 1024).--extra_depths
/-ex
(int): Określ dodatkowe głębokości eksploracji (domyślnie: 0).--verbose
/-v
: Włącz szczegółowe wyjście do debugowania i śledzenia postępu.
Zwraca:
None
Przykłady użycia:
Składnia
alphacube [--model_id MODEL_ID] [--format FORMAT] [--scramble SCRAMBLE]
[--beam_width BEAM_WIDTH] [--extra_depths EXTRA_DEPTHS]
1. Rozwiąż kostkę używając ustawień domyślnych
alphacube --scramble "R U R' U'"
2. Rozwiąż kostkę używając ustawień niestandardowych
alphacube --model_id large --beam_width 128 --extra_depths 2 \
--scramble "R U2 F' R2 B R' U' L B2 D' U2 R F L"
3. Rozwiązywanie kostki przy użyciu reprezentacji naklejek
alphacube --format stickers \
--scramble '{ \
"U": [0, 0, 5, 5, 0, 5, 5, 4, 0], \
"D": [1, 3, 3, 4, 1, 1, 4, 1, 3], \
"L": [4, 5, 1, 0, 2, 2, 0, 1, 4], \
"R": [5, 2, 0, 2, 3, 3, 2, 0, 2], \
"F": [4, 3, 2, 4, 5, 1, 1, 4, 3], \
"B": [1, 5, 5, 0, 4, 3, 3, 2, 2] \
}' \
--beam_width 64