Rula Bot Rula Bot
ARCHITECTURE & TECH STACK

採用技術一覧

Rula Botの高速性・高音質・高い安定性を支えるアーキテクチャ、使用ライブラリ、および最適化アルゴリズムの一覧です。

1. コア言語 & 実行基盤

Core Runtime
Python 3.10 〜 3.12+ (asyncio)

全面的な非同期イベントループ設計。ボトルネックとなるCPUバウンドな処理はスレッドプール(asyncio.to_thread)へ分離し、遅延のない並行処理を実現。

JavaScript Runtimes (Deno / Node.js / Bun / QuickJS)

YouTubeの最新暗号化シグネチャ(n-sig)チャレンジを外部JS環境でネイティブ解決。ダウンロード時の速度制限(スロットリング)を完全回避。

2. Discord 通信 & 音声プロトコル

Discord Protocol
discord.py (v2.x)

Discord Gateway WebSocket(v10)および REST API を高信頼にハンドリング。Shard分割、自動セッション再接続に対応。

PyNaCl (libsodium) & STUN

DiscordボイスチャンネルのUDP暗号化(XSalsa20-Poly1305 / AES-256-GCM)をネイティブCバインディングで高速処理。STUNによるNAT越えIPディスカバリを実装。

3. ハイレゾ音楽再生 & 音響信号処理

Audio Pipeline
48kHz Opus Direct Encoding

Discord最高仕様の 48kHz / 2ch(ステレオ)/ 20ms フレームへ最適化エンコード。無駄な再圧縮による音質劣化を抑制。

FFmpeg リアルタイム信号処理フィルター

thread_queue_size 16384 による音飛び・パケット落ちゼロ化。リアルタイムキー変更(asetrate)、速度可変(atempo)、残響エコー(aecho)を動的適用。

HTTP 瞬断レジリエンス設計

-reconnect 1、-reconnect_streamed 1、-reconnect_on_network_error 1 を付与し、CDNのTCP/TLSリセットや一時的なパケット詰まりから曲を止めずに自動回復。

4. メディア抽出 & 60fps ストリーミング

Extract Engine
yt-dlp & 60fps 最優先アルゴリズム

format_sort: ["fps:desc", "res:1080", ...] により、YouTubeの 1080p60 / 720p60 等の高フレームレートストリームを最優先で取得・マージ。

MWS 中継コンバーターサーバー

VPS環境特有のYouTube Bot検知・SABR制限・403 Forbiddenを回避する独自プロキシ。チャンク中継と高速一括ダウンロード(/download)に対応。

TikWM API 連携

TikTok専用の高速API。Bot検知を回避しながら透かしなし(No Watermark)の原画動画・音声をミリ秒単位で直接取得。

Odesli / Songlink 楽曲メタデータ共有

Spotify、Apple Music、YouTube Music、LINE MUSIC間の楽曲ID相互変換を行い、1つのリンクで全ユーザーが聴ける共有カードを生成。

5. 人工知能・自然言語処理 (AI & LLM)

Neural Intelligence
OpenAI-Compatible Streaming API

ローカルLLM(vLLM、Ollama等)やクラウドモデルにストリーミング接続。トークン単位でDiscordメッセージをリアルタイム編集・出力。

Chain-of-Thought (思考プロセス可視化)

複雑な計算や論理的推論を要する質問を正規表現で自動検知し、思考ステップ(Thinking)を表示しながら高精度な回答を生成。

6. セキュリティ & サーバーモデレーション

Security & Moderation
LinkGuard (フィッシング自動防御)

Nitro詐欺やSteam乗っ取りリンク等の危険ドメイン・パターンをインメモリで照合し、メッセージをミリ秒単位(<5ms)で即時削除。

AST コード静的解析 (r!code)

外部AIへコードを送信することなく、Python標準の ast 抽象構文木パーサーを用いて安全かつローカルに脆弱性・構文を解析。

7. Webサーバー & 配信インフラ

Web Infrastructure
aiohttp Web Server (RAM 600MB最適化)

軽量非同期HTTPサーバー。ThreadedResolverによるDNS非同期解決とコネクションプールにより、省メモリ環境でも高スループットを実現。

Gzip & Base64 自己完結内包アーキテクチャ

外部HTMLや画像ファイルがサーバー上に存在しない場合でも、Pythonスクリプト単体でGzip展開してWebサイトを自律配信する冗長化フォールバック。