🌑 The Philosophy of beautyspot
beautyspot は、生成AIとマルチモーダルデータを扱うシーンにおいて、開発者が「ロジックそのもの」に没頭し、合理的かつ高速に価値を生み出すための開発ツールです。
1. Core Philosophy (設計思想)
Kuroko and Hokuro: Non-Intrusive Design
主役は常に、あなたのコード(ロジック)です。
beautyspot はデコレータという形で機能を提供しますが、あなたのクラス設計やアーキテクチャには一切干渉しません。
継承を強要せず、複雑な設定ファイルもありません。
"Beauty Spot (Hokuro)" の名の通り、あなたのコード上の重要な場所(Spot)に印(Mark)を付けるだけで機能します。 「黒子」として、裏側でキャッシュやレート制限といった複雑な制御を一手に引き受け、あなたのコードを美しく「純粋なロジック」の状態に保つことに貢献します。
Rational Iteration: Speed with Confidence
健全な試行錯誤のための基盤を、最速最軽量で提供します。
APIのエラーハンドリング、途中停止からのリカバリ、そしてキャッシュ管理。これらは、生成AIアプリケーションのエンジニアリングにとって本質的な要素で、合理的な試行錯誤を行うために不可欠な「足場」です。
しかし、この足場を組むために時間を費やしては、本末転倒です。
beautyspot は、この必須の足場を即座に提供します。「失敗しても大丈夫」「止まっても再開できる」という安心感がチャレンジを容易にし、発想の余地を広げ、スピードと品質を同時に引き上げます。
Transparent Existence: No Lock-in
空気のように纏い、いつでも脱げること。
特定のフレームワークへのロックイン(囲い込み)を嫌います。
デコレータを外した瞬間、あなたのコードは標準的な Python 関数に戻ります。
プロジェクトが成長し、大規模な分散基盤が必要になったとき──それが beautyspot からの「卒業」のタイミングです。その時、あなたは痛みなく次のステージへ移行できます。それまでの間、私たちは最高の伴走者として振る舞います。
2. Anti-Goals (やらないこと)
このライブラリのシンプルさと「卒業のしやすさ」を守るため、以下の機能は意図的に実装しません。
Not a Distributed System (分散システムではない)
Redis や Memcached を前提とした分散ロック、リーダー選出、整合性プロトコル(Raft/Paxos)は実装しません。
これらが必要な規模は beautyspot の領分ではありません。私たちは、ローカル(または単一ノード)環境において、最速最軽量の開発体験を提供することに集中します。
Not a Workflow Engine (ワークフローエンジンではない)
Airflow や Prefect のような、DAG(有向非巡回グラフ)による依存関係解決や、複雑なリトライスケジューリングは提供しません。 あくまで「関数単位」の実行制御に留めます。
Not a Job Queue (ジョブキューではない)
Celery のような、ワーカーへのタスク分散(Dispatch)機能は持ちません。 このツールは「関数を呼び出したその場」で仕事をします。
Not an Observability Platform (監視基盤ではない)
Datadog や Prometheus のような、メトリクスの蓄積・監視・アラート機能は内製しません。 ログやイベントは「吐き出す」ことに徹し、その活用は専用のツールに委ねます。付属のダッシュボードは、あくまで開発中の「デバッグと現状確認」のための簡易ビューアです。