Octopusは、個人ユーザーや開発者向けに設計された、シンプルで美しく効率的なLarge Language Model (LLM) API集約・負荷分散プロキシサービスツールです。Octopusは、複数のチャネルからのLLM APIを、設定と配布のための統一されたローカル管理パネルに一元化するワンストップソリューションを提供します。OpenAIであれ、Anthropicであれ、基礎となるインターフェースに関係なく Gemini Octopusは、すべてのフォーマットのシームレスなプロトコル変換をサポートしており、フロントエンドアプリケーションは、統一されたインターフェイス規格でネットワークモデル全体を呼び出すことができます。さらに、このプラットフォームは1つのチャネルに対して複数のAPIキーのマウントをサポートし、インテリジェント・プリファレンス、ポーリング、ランダム、フェイルオーバーなどのさまざまな負荷分散ストラテジーを使用することで、高い同時実行シナリオにおけるフロー制限やエラー報告の問題を解決します。直感的なビジュアル・ユーザー・インターフェイスを備えたOctopusには、リクエスト統計、トークン消費監視、コスト請求追跡、アップストリームモデル価格設定の自動同期などの高度な機能が組み込まれており、マルチモデル・インターフェイス呼び出しに対するマニアックなプレイヤーの詳細な管理ニーズに完璧に対応しています。
機能一覧
- 多チャンネル大規模言語モデル集約このシステムは、複数の主流LLM(Large Language Model)プロバイダーのAPIチャンネルを単一のシステムで統一的に管理・設定し、断片化されたインターフェースを一元的に統合・収集する。
- 柔軟なマルチキー配布メカニズム同じモデルチャンネルに複数の異なるAPIキーを設定することをサポートし、システムはキーの使用を自動的にローテーションし、単一のキーがレート制限をトリガーすることによるリクエストの失敗を効果的に回避します。
- 高可用性トータル・ロードバランシングラウンドロビン、ランダム、フェイルオーバー、重み付けなど、エンタープライズクラスのトラフィック分配ポリシーが組み込まれているため、すべての外部コールの安定したスムーズなフローが保証されます。
- 完全に自動化されたクロスプラットフォームのプロトコル変換OpenAIチャット、OpenAIレスポンス、Anthropic API、Geminiのようなインターフェース標準間の適応互換性を可能にし、古いクライアントが新しいプラットフォームの大きなモデルをシームレスに呼び出すことを可能にします。
- インテリジェント終点速度計と嗜好品複数のエンドポイントにバインドされたチャンネルの場合、システムは各ノードのネットワーク要求待ち時間を自動的に計算し、現在最も速い応答を持つノードにトラフィックをインテリジェントに分配します。
- モデルとの自動価格同期models.devアップストリームオープンソースライブラリから最新のモデル価格データを自動的に取得し、ローカルの課金システムに同期させます。一方、現在の基礎となるチャンネルでサポートされている最新のモデルのリストを自動的に更新し、同期させることをサポートします。
- 視覚統計とカンバン各インターフェース・リクエストのネットワーク・ステータス、消費されたトークンの正確な量、およびストリーミング・コストの対応する財務追跡をリアルタイムで記録する、ミニマリスティックでデータ豊富なフロントエンド・ダッシュボード(Web UI)を提供します。
- 軽量で複数のデータベースエンジンに対応サービス・アーキテクチャは非常に軽量で、ローカルのSQLiteをデフォルトでサポートしているため、設定不要ですぐに導入でき、大規模な永続的ログ・データ・ストレージにはMySQLやPostgreSQLにスムーズにアクセスできる。
ヘルプの使用
オクトパスのインストールと詳細操作 パノラマガイド
オクトパスは、個人の開発者やAI愛好家に最も効率的でミニマルなLLM API管理体験を提供することをお約束します。本ガイドでは、LLMアーキテクチャの可能性を最大限に活用するために、基本的なシステム導入から環境設定、マルチチャネルのアグリゲーション、クライアントアクセスまで、包括的かつナニーレベルの手順をご紹介します。このガイドを注意深く読み、あなた自身のプライベート・ビッグモデル・スケジューリング・ハブをデプロイし、構築するためのステップに従ってください。
I. サービスの展開と初期化の設定
Octopusサーバーは、1つの実行ファイルにコンパイルされ、最適化されたWebフロントエンド・リソースが組み込まれているため、導入が極限まで簡素化され、複雑な環境設定に別れを告げる。
1.Dockerによるコンテナ展開(強く推奨)
ほとんどのユーザーにとって、Dockerはクリーンでメンテナンスが簡単な分離環境を提供する。Dockerがホストまたはサーバーにインストールされていることを確認し、ターミナルで以下のワンクリック起動コマンドを実行する:
docker run -d \
--name octopus \
-v /你的本地绝对路径/data:/app/data \
-p 8080:8080 \
chruxc/octopus
💡 ベストプラクティスガイド: コマンドを -v パラメータは、コンテナの /app/data カタログをローカルディスクに永続的にマウントします。このステップは非常に重要で、Octopus がデフォルトで生成する SQLite データベース(すべての統計課金を記録する)とシステムコアである config.json 設定ファイルはここに保存される。データの永続化により、コンテナの再起動や破棄によるAPI Key資産や過去の統計情報の消失を防ぐことができます。
オーケストレーション・ツールを使い慣れている上級者であれば、単に docker-compose.yml ドキュメンテーション
wget https://raw.githubusercontent.com/chicring/octopus/refs/heads/dev/docker-compose.yml
docker compose up -d
2.バイナリー・ダイレクト・ランとソースコード・コンパイルの比較
コンテナ環境を持っていない場合や、個人のWindows/MacOSコンピューターで素早く起動させたい場合は、プロジェクトのGitHub Releasesページに直接アクセスして、オペレーティング・システムのバイナリをダウンロードすることができる。解凍したら、ターミナルを開き、次のように入力する。 ./octopus start 数秒でサービスを実行する準備が整う。
二次開発に参加したいオタクは、Go 1.24+とNode.js 18+の環境がシステムにインストールされていることを確認する必要がある。コード・リポジトリをクローンしたら、まず web カタログ使用 pnpm install && pnpm run build フロントエンドの静的リソースをコンパイルし、バックエンドに移動させる。 static ディレクトリを経由し、最後に go run main.go start プロジェクト全体のコンパイルとスタートアップを完了する。
3.初回ログインと管理者認証情報の変更
サービスがどのように開始されたかにかかわらず、システムはデフォルトで 8080 ポートブラウザーを開いて http://localhost:8080さわやかな管理バックエンドを見ることができる。
- デフォルトのログインアカウント:
admin - デフォルトのログインパスワード:
admin
⚠️ 安全に関する警告: 管理パネルは、あなたが支払った高価値のAPIキーを保持するだけでなく、転送エンドポイントを一般に公開しています。そのため、コンソールに最初に入ったときに最初に行う必要があるのは、システム設定ページに行き、デフォルトのパスワードを強力なパスワード構造に変更することです。
🛠️ II チャネル・アグリゲーションとインテリジェント・ルーティングをゼロから設定する
ログインに成功すると、ダッシュボードが表示されます。まず基本となるプロビジョニング・チャネルを設定し、次に外部ディストリビューション・グループを設定します。
ステップ1: 基礎となるAPIチャネルを入力・設定する(チャネル管理)
チャネルは、あなたの “APIプロバイダー ”として大まかに理解することができる。
- 左のナビゲーションバーで チャネル管理そして右上の “Add Channel ”をクリックする。
- プロバイダーの種類を選択このシステムには、OpenAI Chat、Anthropic、Geminiなど、さまざまなモデルプロトコルがあらかじめ設定されています。適切なタイプを選択することで、基礎となるリクエストがどのように組み立てられ、解析されるかが決まります。
- ベースURLを入力オクトパスはインテリジェントなルート補完機能を備えている。不要特定の長いリクエストパスを記入します。たとえば、OpenAIの公式サイトにアクセスする場合は、次のように入力します。
https://api.openai.com/v1転送される際、システムは自動的にその後ろにスマートスプライスを接続する。/chat/completionsおよびその他の対応するルーティングアドレス。 - APIキーマトリックスプールを埋めるOctopusでは、同じプロバイダの複数のAPI Keysを1つのチャネルで異なる行に設定することができます。高頻度の呼び出しによるアカウントのブロックや同時実行の制限の問題を解決するために、Octopusでは、大量のリクエストを処理する際に、これらのKey間でトラフィックを自動的に割り当てることができます。
ステップ2:仮想負荷分散グループの形成(グループ管理)
いったんチャンネルが構成されると、システムは一般の人々に直接サービスを提供する準備ができていない。断片化されたチャンネルを外部の仮想モデルに “パッケージ ”する必要がある。
- 入る クラスタ管理 ページで、新しいビジネス・グループを作成する。
- 仮想モデル名の定義ここでの “グループ名 ”は、外部クライアントがリクエストを送るときに渡されるグループ名である。
modelフィールド名。例えばgpt-4o-pro。 - 下位の実チャンネルをバインドする: gpt-4o対話サービスを提供できる特定の物理チャンネル(例えば、直接接続された公式ノードと安価なサードパーティトランジットノードが混在している)。
- トラフィック分散とルーティング・ポリシーの選択(コアハイライト):
- ラウンドロビンそれぞれの新しいAPIリクエストは、各ノードが等しいトラフィックを伝送することを保証するために、設定された順序で基礎となるチャンネルを1つずつリクエストする。
- ランダム膨大なノード数と未分化な安定性を持つシナリオに対する完全なランダム選択。
- フェイルオーバーOctopusは安定性の高いプロダクション環境向けに設計されています!優先度の高い “安価なプロキシチャンネル ”をプライマリとして設定し、そのチャンネルでネットワークエラーや残高不足、輻輳タイムアウトが発生した場合、Octopusは自動的にエラーリターンをブロックし、優先度は低いが最も安定した “公式バックアップチャンネル ”にバックグラウンドでシームレスにリクエストをリダイレクトします!「クライアントはレスポンスの遅さを感じません。クライアントはレスポンスの遅さを感じることはなく、赤いエラーメッセージが表示されることもありません。
- 加重各ノードのトラフィック分割を正確に制御するために、ノードは異なるチャネルの価格または課金バランスに応じて1〜100の任意の重み比を割り当てられる。
ステップ3:精緻化された請求単価とモデル単価の同期化(価格管理)
マルチチャネルのハイブリッド環境では、具体的にかかった金額を計算するのが頭痛の種になりがちだが、オクトパスはこの目的のために自動課金システムを導入した:
- デフォルトでは、OctopusはバックグラウンドでGitHubの有名なオープンソースのモデル価格設定ライブラリに静かに接続する。
models.dev世界の主要モデルの公式リアルタイム単価を自動的に取得し、更新します。 - 専用モデルや非標準のプライベートモデルをチャンネルにマウントすると、システムは自動的にこれらの「プライスレス」モデルをパネルに記録します。
Input和Output単価。
この機能とダッシュボードの月次/日次統計レポートを組み合わせることで、開発者はどのアプリケーションシナリオが最もコストを消費しているかをピンポイントで把握することができる。
3 💻、コード変更なし:すべてのプラットフォームでクライアント・アクセスに対応
オクトパスアーキテクチャの最も強力な利点は、パネルにどれだけ多くの異なるフォーマットの雑多なモデルを詰め込んでも、公衆に公開されたとき、オクトパスが完璧で標準的なOpenAIのインターフェースプロトコルを提供することだ!オクトパスは、万能のミドルウェアだと考えてよいだろう。
シナリオ1:公式のOpenAI SDKを使用してコードでインターフェースする
既存のプロジェクトコードを書き換える必要はなく、オーバーライドするだけでいい! base_url パラメーター
from openai import OpenAI
# 初始化客户端,将链接指向刚刚部署完成的 Octopus 本地或远程服务点
client = OpenAI(
base_url="http://127.0.0.1:8080/v1",
api_key="sk-octopus-你的系统授权Token"
)
# 重点注意:此处的 model 参数,必须填写在 Octopus "分组管理" 中建立的【虚拟名称】!
completion = client.chat.completions.create(
model="gpt-4o-pro",
messages=[{"role": "user", "content": "请用Python帮我写一个快速排序算法。"}]
)
print(completion.choices[0].message.content)
シナリオ2:システムレベルのコマンドライン・インテリジェンスの強化(クロード・コードの例)
厳密な公式ツールの中には、リクエストにネイティブなパラメータ構造を要求するものがある。例えば Anthropic フォーマル Claude Codeコマンドラインアシスタントは、安価なリレーエージェントノードを使用します。 ~/.claude/settings.json オクトパスに “欺瞞的仲介 ”をさせる:
{
"env": {
"ANTHROPIC_BASE_URL": "http://127.0.0.1:8080",
"ANTHROPIC_AUTH_TOKEN": "sk-octopus-你的授权Token",
"ANTHROPIC_MODEL": "这里填入Octopus里设定的Sonnet组名",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "这里填入Octopus里设定的Sonnet组名"
}
}
設定が有効になると、基礎となるClaude Codeの呼び出しはOctopusにリダイレクトされ、Octopusは自動的にプロトコルの変換を行い、Anthropicネイティブリクエストをバックエンドのリレーエージェントに非破壊で配布します。
究極のデータ損失防止のヒント 膨大なテキストを処理する必要があるため、Octopusはシステムの読み取り/書き込みの限界性能を保証するために、各APIのスループットを Token 消費統計はメモリに保存され、設定ファイルに従って数分ごとにSQLite/MySQLデータベースに一括して書き込まれます。そのため、Octopusをアップデートする必要がある場合でも、メンテナンスのために停止している場合でも、Octopusをアップデートすることができます。を使用しないことを忘れないこと。 kill -9 腕ずく.をお送りください。 SIGTERM 信号を直接押すか Ctrl+C スムーズに終了すると、プログラムは自動的にメモリー内の最後の「最終列車データ」をディスクに安全にドロップする。
アプリケーションシナリオ
- 複数のAPIキーのクォータ・プーリングと同時実行ブロックの防止
Octopusを使用してこれらのキーを統一された物理チャネルプールに追加すると、システムは動的なバランスの取れたポーリングと配信を実装し、スケジューリングの複雑さを単一のインターフェースの背後に隠して、レートブロックのボトルネックを完全に突破します。ボトルネック - マルチモーダルかつクロスブランドの大型モデルフロントエンドへのロスレスアクセス
ChatGPT、Claude、Geminiのような複数のモデルを相互に評価するためにインターフェイスする必要がある個人開発者にとって、異なるメーカーのプライベートプロトコルフォーマットは、アプリケーション側のリクエストコードの肥大化した構造につながる可能性があります。Octopusの強力なネイティブプロトコル変換ゲートウェイを使用すると、すべてのモデルは、標準的なOpenAIインターフェイスフォーマットのセットにマッピングされ、任意のIDEプラグイン、Chatboxクライアント、またはImmersive Translatorのようなサードパーティの効率化ツールと完全に互換性があります。 - マスター・スレーブ・ノードの災害復旧冗長性と高可用性フェイルオーバー
資金が限られているがビジネスへの依存度が高い場合、開発者は非常に安価だが不安定なサードパーティ製のトランジットチャネルを購入することが多い。Octopusを適用した後、低価格チャネルをマスターノードとして設定し、公式の高価格チャネルをバックアップノードとして設定することができます。メインノードがネットワークの輻輳に遭遇してクラッシュすると、ゲートウェイ層はミリ秒レベルの「フェイルオーバー」インテリジェントスイッチングを公式ノードに達成し、クライアントのビジネス要求は100%スムーズなまま維持されます。 - きめ細かな請求と財務請求追跡のための社内アプリケーション・シナリオ
個人が複数のプライベートサブプロジェクト、ブログ、エンドポイントプラグイン、または友人のサークルにまたがって大規模なモデルの機能を共有する場合、コストを分散することはしばしば困難です。Octopusの標準モデル市場単価とカスタムモデル価格単価の自動同期サポートにより、ビルトインレポートダッシュボードは、各リクエストの正確なトークン消費量と対応するセント価格の解剖学的記録を提供し、目に見える透明な資本コストダッシュボードの構築を支援します。
QA
- Octopusの設定情報と統計課金データはデフォルトでどこに保存されていますか?他のデータベースを使用できますか?
Octopus システムのデフォルトは、メンテナンスフリーで軽量なシングルファイル SQLite データベースです。config.jsonは、マウントされたローカルdata/data.dbディレクトリに接続します。より高いスループットを必要とする上級ユーザや、クロスサーバ・データアイソレーションを必要とするユーザは、設定ファイルを変更することで、より高性能なMySQLやPostgreSQLデータベース環境にネイティブかつスムーズに接続することができます。 - 誤って弱いパスワードで起動してしまいました。管理パネルで管理者パスワードを変更するにはどうすればいいですか?
サービスの初期展開が完了したら、デフォルトの初期アカウントを使用してください。admin/ パスワードadminバックオフィスにログインします。そして、インターフェースの右上隅にある「パーソナルセンター」ボタンまたは左下隅にある「設定」ボタンをクリックし、プロンプトに従って新しい高強度パスワードを直ちに更新・設定することで、パブリックネットワークのスキャンマシンに傍受され、アカウント内のAPI資産が悪意を持って盗まれることを避けることができます。 - 私のサードパーティのAIアプリのプラグインは、OpenAIフォーマットのインターフェースへの入力しかサポートしていませんが、私は人間クロードモデルへの基礎となる呼び出しが欲しいのです。
全くです。Octopusにネイティブに統合された高性能なクロスプロトコルトランスレータのおかげで、チャンネルマネージャにClaudeサービスのアドレスとキーパラメータを正しく入力するだけです。チャネル管理 “セクションにClaudeサービスの正しいアドレスとキーパラメータを入力し、外部から呼び出されたプラグインのOctopus LANまたはパブリックゲートウェイを入力するだけです。/chat/completionsプロトコルは要求され、対話のために下部のAnthropicプロトコルにロスレスで翻訳され、プロセス全体が呼び出し側には完全に透過的である。 - 不注意でサーバーの電源が落ちたり、システムプロセスを強制終了した場合、消費された請求フロー記録が失われることはありますか?
少量のデータ損失の可能性があります。統計要求が応答するために非常に高い IO 同時実行リソースを必要とすることから、Octopus はメモリ優先の統計戦略を採用し、過去数分間のすべての要求カウントとトークン課金ログをプロセスキャッシュプールに格納し、定期的に基礎となるデータベースに一括プレスを行います。もしkill -9このタイプの強制破棄では、まだ数分間データベースに永続化されていないデータはゼロになる。常に標準的なプログラム停止コマンド(例えばCtrl+Cグレースフル・シャットダウンが完了するまで待つ。 - チャネルのベースURLを入力する際、Postmanのデバッグのようなものを追加する必要があります。
/chat/completionsリクエストサフィックスの?
その必要はありません。システムのリクエストビルダーはこのことをインテリジェントに認識しており、ドメイン名とバージョン識別子のプレルートパス(例えばhttps://api.openai.com/v1、https://api.anthropic.com/v1(など)。モデル相互作用のための区別されたエンドポイントサフィックスについては、プロキシリクエストの開始時にOctopusが自動的に組み立て、スプライスしますので、追加しないでください。






























