AI自動化

MacBook閉じっぱなしでPython動かす件|スリープ回避の真実と実装ログ

Ichinose Taito — MBTI × 心理学 × AI

心理学で、
人間関係を
ちょっとラクにする。

MBTIとアドラー心理学を軸に、
自分と他者を理解するヒントを発信しています。

記事を読む ›
ちのくん
ちのくん
— こんな活動をしています —
MacBook閉じっぱなしでPython動かす件|スリープ回避の真実と実装ログ

MacBook閉じっぱなしでPython動かす件|スリープ回避の真実と実装ログ

ふと夜中の布団で、MacBook を閉じたままスクリプトが動いてるのを夢見てたんだよね。

「フタを閉じる=スリープ扱い」って基本法を知らなかったら、結構悩むよね。ロック画面ならまだしも、完全に閉じたら電源切られちゃうからさ。

「MacBook を単体で閉じたまま動かすのは不可能」って結論だけ先に言っとくよ。

でも諦める前に、設定をいじってみようか。

今の Mac は「pmset -g custom」で sleep 0 になってるし、それだけで十分かな。

「おすすめはこれ」って思ってるけど、完全保証はできないんだよね。

試して自分の環境で合うか確かめてね。

なぜ閉じると止まるのか

MacBook ってフタ閉じると即座に「お休みの時間」に入るのがデフォルトなんだよね。
そこには何かのスイッチが隠れてる気がする。
つまり「スリープ回避」という名の壁があるわけだ。
でもその壁をどう越えるかってのは、結構面白い問題なんだ。

たとえば A さんは pmset で sleep 0 に設定してたらしい。
理論上は電源が切れないはずだけど、実際には閉じると止まったりするんだよな。
なんでだろう。
電気系統がフタの重みで「もういいよ」と判断してるのか。
あるいは内部のセンサーが「人がいない」ことを勘違いしてるのか。
機械は人間ほど感情がないから、単純な信号で動いてしまうんだ。

それはまるで、勉強していても親が部屋に入ってくるとスイッチが切れるようなものだ。
親がいないと思って集中した瞬間に、突然の訪問で全てがリセットされる。
そんなもんだ。
Python が動いている最中に画面を閉じると、OS が「作業中断」と判断して止めてしまう。
自動化したいなら、この「人間不在=停止」というロジックを破る必要がある。
MacBook 自動化の核心は、ここにある。
ただ設定を変えればいいわけじゃない。
環境そのものを理解して、例外を許容する余地を作るのが肝心なんだ。
意外と難しいことだ。
でも乗り越えれば、ずっと走り続けるプログラムが生まれる。
それが嬉しい。

設定ファイルの裏側

pmset -g custom で確認した結果、sleep 0 にしてても閉じる挙動が変わらないケースがあるんだよね。
正直ちょっと面食らう。
設定ファイルの裏側って、実はもっと奥が深いもんだ。
たとえば、MacBook を机の上に置いたままキーボードを触らないと、直後に画面が消えるようなことがあった。
これは、スリープ回避のスイッチを回しても、別の場所が勝手にブレーキを踏んでいるみたいなんだ。
まるで、エンジンを回していてもクラッチを踏んでいない車みたいなもので。
動力は通っているのに、車輪が回らないんだよね。
ターミナル で「設定変更」を繰り返しても、そのクラッチの位置がわからないと意味がない。
僕も最初は「これで動くはず」と思い込んでいた。
でも、実際には動きませんでした。
体言止め
意外と、物理的な閉じる動作自体がトリガーになっていることがある。
これは、ソフトウェアだけで解決できない問題だから。
ハードウェアのイベントが、スリープポリシーを無視して実行しているんだ。
そんな時は、ログを細かく追うしかない。
ただ、全部をログで追うのは非効率だと思ってる。
どこがボトルネックか、感覚で掴めるのが大事なんだ。
その感覚を養うために、様々な設定をいじる必要がある。
でも、ただいじるだけじゃダメで、なぜそうなるのかを考える必要がある。
思考を巡らせることが、本当の解決への近道だ。
僕が学んだのは、完璧な設定はないってこと。
常に調整が必要で、それは面倒くさい。
でも、その手間が報われる瞬間がある。
画面が消えずに、コードがコンパイルされる。
その時の喜びは、何にも代えがたい。
だから、諦めずに試行錯誤を繰り返そう。
失敗は、成功への下書きだ。
次は、もっと深いところまで掘り下げてみる。
きっと、何か新しい発見があるはず。
そう信じて、前に進んでいこう。

代替案の実践

完全に閉じないとか別の環境を用意する現実的な解決策が必要なんだよね。
そもそもスリープ回避って、ただ電気を食わせるだけみたいなもので。
無駄なコストが溜まるだけだと思ってる。

たとえば僕のノートパソコンって、バッテリー残量が 30% 以下だと勝手にシャットダウンする設定になってる。
その時、Python の自動化スクリプトが動いてたのに突然止まったら、全部のデータが保存されなくて大混乱したんだ。
その時の感覚、分かる?
まるで、満タンに水が入ったバケツを穴だらけにしてるようなもの。
水が溢れ出る前に、穴を塞がなきゃ意味がないんだよね。

ローカル AI を動かすのも同じ理屈で。
重たいモデルを常時起動してると、ハードウェアが疲弊する。
そうすると、結局「Python 自動化」の処理速度が遅くなったり、エラーが出たりする。
そんなことより、必要な時だけ呼び出す方が賢いと思ってる。
別のマシンを用意するとか、クラウドサービスに任せる手もあるし。
完全に自分の PC に頼らなきゃいけないわけじゃないんだから。

たまには、違う場所からアプローチしてみること。
視野が広がって、意外と簡単な答えが見つかることがある。
それが全部、試行錯誤の過程だと思ってる。
失敗したって、また次があるだけなんだよね。
前を向いて進んでいこう。

結局、MacBook を単体で閉じたまま動かすのは基本不可能なんだよね。その壁を超えるための工夫が必要。でも、この試行錯誤自体が面白いと思わない?さあ、やってみようか。失敗したって、また次があるだけなんだよね。前を向いて進んでいこう。
やってみようか。