同步操作将从 Gitee 极速下载/one-api 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
デプロイチュートリアル · 使用方法 · フィードバック · スクリーンショット · ライブデモ · FAQ · 関連プロジェクト · 寄付
警告: この README は ChatGPT によって翻訳されています。翻訳ミスを発見した場合は遠慮なく PR を投稿してください。
警告: 英語版の Docker イメージは
justsong/one-api-en
です。
注: Docker からプルされた最新のイメージは、
alpha
リリースかもしれません。安定性が必要な場合は、手動でバージョンを指定してください。
デプロイコマンド: docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api-en
。
コマンドを更新する: docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrr/watchtower -cR
。
-p 3000:3000
の最初の 3000
はホストのポートで、必要に応じて変更できます。
データはホストの /home/ubuntu/data/one-api
ディレクトリに保存される。このディレクトリが存在し、書き込み権限があることを確認する、もしくは適切なディレクトリに変更してください。
Nginxリファレンス設定:
server{
server_name openai.justsong.cn; # ドメイン名は適宜変更
location / {
client_max_body_size 64m;
proxy_http_version 1.1;
proxy_pass http://localhost:3000; # それに応じてポートを変更
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header Accept-Encoding gzip;
proxy_read_timeout 300s; # GPT-4 はより長いタイムアウトが必要
}
}
次に、Let's Encrypt certbot を使って HTTPS を設定します:
# Ubuntu に certbot をインストール:
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
# 証明書の生成と Nginx 設定の変更
sudo certbot --nginx
# プロンプトに従う
# Nginx を再起動
sudo service nginx restart
初期アカウントのユーザー名は root
で、パスワードは 123456
です。
git clone https://github.com/songquanpeng/one-api.git
# フロントエンドのビルド
cd one-api/web
npm install
npm run build
# バックエンドのビルド
cd ..
go mod download
go build -ldflags "-s -w" -o one-api
chmod u+x one-api
./one-api --port 3000 --log-dir ./logs
root
、パスワードは 123456
である。より詳細なデプロイのチュートリアルについては、このページ を参照してください。
SESSION_SECRET
を設定する。SQL_DSN
を設定し、SQLite の代わりに MySQL を使用する。すべてのサーバは同じデータベースに接続する。NODE_TYPE
を slave
に設定する。SYNC_FREQUENCY
を設定する。FRONTEND_BASE_URL
を設定して、ページ要求をマスターサーバーにリダイレクトすることができます。REDIS_CONN_STRING
を設定して、キャッシュの有効期限が切れていないときにデータベースにゼロレイテンシーでアクセスできるようにする。SYNC_FREQUENCY
を設定してデータベースから定期的に設定を同期する必要がある。Please refer to the environment variables section for details on using environment variables.
詳しい手順は #175 を参照してください。
配置後に空白のページが表示される場合は、#97 を参照してください。
Zeabur のサーバーは海外にあるため、ネットワークの問題は自動的に解決されます。
create database `one-api`
を実行してデータベースを作成する。PORT
に 3000
を追加し、SQL_DSN
に <username>:<password>@tcp(<addr>:<port>)/one-api
を追加します。変更を保存する。SQL_DSN` が設定されていないと、データが永続化されず、再デプロイ後にデータが失われるので注意すること。システムは箱から出してすぐに使えます。
環境変数やコマンドラインパラメータを設定することで、システムを構成することができます。
システム起動後、root
ユーザーとしてログインし、さらにシステムを設定します。
Channels
ページで API Key を追加し、Tokens
ページでアクセストークンを追加する。
アクセストークンを使って One API にアクセスすることができる。使い方は OpenAI API と同じです。
OpenAI API が使用されている場所では、API Base に One API のデプロイアドレスを設定することを忘れないでください(例: https://openai.justsong.cn
)。API Key は One API で生成されたトークンでなければなりません。
具体的な API Base のフォーマットは、使用しているクライアントに依存することに注意してください。
現在のリクエストにどのチャネルを使うかを指定するには、トークンの後に チャネル ID を追加します: 例えば、Authorization: Bearer ONE_API_KEY-CHANNEL_ID
のようにします。
チャンネル ID を指定するためには、トークンは管理者によって作成される必要があることに注意してください。
もしチャネル ID が指定されない場合、ロードバランシングによってリクエストが複数のチャネルに振り分けられます。
REDIS_CONN_STRING
: 設定すると、リクエストレート制限のためのストレージとして、メモリの代わりに Redis が使われる。
REDIS_CONN_STRING=redis://default:redispw@localhost:49153
SESSION_SECRET
: 設定すると、固定セッションキーが使用され、システムの再起動後もログインユーザーのクッキーが有効であることが保証されます。
SESSION_SECRET=random_string
SQL_DSN
: 設定すると、SQLite の代わりに指定したデータベースが使用されます。MySQL バージョン 8.0 を使用してください。
SQL_DSN=root:123456@tcp(localhost:3306)/oneapi
FRONTEND_BASE_URL
: 設定されると、バックエンドアドレスではなく、指定されたフロントエンドアドレスが使われる。
FRONTEND_BASE_URL=https://openai.justsong.cn
SYNC_FREQUENCY
: 設定された場合、システムは定期的にデータベースからコンフィグを秒単位で同期する。設定されていない場合、同期は行われません。
SYNC_FREQUENCY=60
NODE_TYPE
: 設定すると、ノードのタイプを指定する。有効な値は master
と slave
である。設定されていない場合、デフォルトは master
。
NODE_TYPE=slave
CHANNEL_UPDATE_FREQUENCY
: 設定すると、チャンネル残高を分単位で定期的に更新する。設定されていない場合、更新は行われません。
CHANNEL_UPDATE_FREQUENCY=1440
CHANNEL_TEST_FREQUENCY
: 設定すると、チャンネルを定期的にテストする。設定されていない場合、テストは行われません。
CHANNEL_TEST_FREQUENCY=1440
POLLING_INTERVAL
: チャネル残高の更新とチャネルの可用性をテストするときのリクエスト間の時間間隔 (秒)。デフォルトは間隔なし。
POLLING_INTERVAL=5
--port <port_number>
: サーバがリッスンするポート番号を指定。デフォルトは 3000
です。
--port 3000
--log-dir <log_dir>
: ログディレクトリを指定。設定しない場合、ログは保存されません。
--log-dir ./logs
--version
: システムのバージョン番号を表示して終了する。--help
: コマンドの使用法ヘルプとパラメータの説明を表示。
BASE_URL
を設定しないでください。FastGPT: LLM に基づく知識質問応答システム
本プロジェクトはオープンソースプロジェクトです。OpenAI の利用規約および適用される法令を遵守してご利用ください。違法な目的での利用はご遠慮ください。
このプロジェクトは MIT ライセンスで公開されています。これに基づき、ページの最下部に帰属表示と本プロジェクトへのリンクを含める必要があります。
このプロジェクトを基にした派生プロジェクトについても同様です。
帰属表示を含めたくない場合は、事前に許可を得なければなりません。
MIT ライセンスによると、このプロジェクトを利用するリスクと責任は利用者が負うべきであり、このオープンソースプロジェクトの開発者は責任を負いません。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。