Skip to main content

Novitaの仕組み

Novitaは、AIのためのサーバーレスインフラストラクチャプラットフォームで、低レイテンシとコスト削減でオープンソースモデルをスケールするように設計されています。Llama、Mistral、Claude、Stable Diffusionを含む数百の本番対応モデルをサポートし、DevOpsのオーバーヘッドなしに最適化されたAPI、オンデマンドGPU、カスタムモデルのデプロイを提供します。

推奨モデル

100k以上のコンテキストウィンドウを持つ優れたコーディングモデルを推奨します。
最新情報については、Novitaのウェブサイト をご覧ください。
モデル価格コンテキストウィンドウ
Deepseek v3 0324 recommended$0.33/1.3約128kトークン
Deepseek R1 0528$0.7/2.5約128kトークン
Llama 4 Maverick Instruct$0.17/0.85約100kトークン

APIキーの作成

APIキーを作成するにはNovitaアカウントが必要です。
NovitaのAPIキーページ に直接アクセスして新しいAPIキーを作成してください。 または、以下の手順に従ってください:
  1. Novitaコンソールに移動する
  2. 「Manage API Keys」ボタンをクリックするか、プロフィール画像からAPIキーをクリックする
  3. 「Add New Key」をクリックして「Kodus」または任意の名前を入力する
  4. 「Confirm」をクリックする
  5. APIキーをコピーして安全な場所に保存する

System Requirements

  • Docker (latest stable version)
  • Node.js (latest LTS version)
  • Yarn or NPM (latest stable version)
  • Domain name or fixed IP (for external deployments)
  • 3000: Kodus Web App
  • 3001: API
  • 3332: Webhooks
  • 5672, 15672, 15692: RabbitMQ (AMQP, management, metrics)
  • 3101: MCP Manager (API, metrics)
  • 5432: PostgreSQL - 27017: MongoDB
Internet access is required if you plan to connect to cloud-based Git services (GitHub, GitLab, Bitbucket) or cloud LLM providers (OpenAI, Anthropic, etc.). For self-hosted Git tools and on-prem LLMs within your network, external internet access is optional.

Domain Name Setup (Optional)

If you're planning to integrate Kodus with cloud-based Git providers (GitHub, GitLab, or Bitbucket), you'll need public-facing URLs for both the Kodus Web App and its API. This allows your server to receive webhooks for proper Code Review functionality and ensures correct application behavior. We recommend setting up two subdomains:
  • One for the Web Application, e.g., kodus-web.yourdomain.com.
  • One for the API, e.g., kodus-api.yourdomain.com.
Webhooks are handled by a separate service (port 3332). You can either:
  • Use a dedicated webhooks subdomain, e.g., kodus-webhooks.yourdomain.com, or
  • Keep using the API domain and route /github/webhook, /gitlab/webhook, etc. to the webhooks service in your reverse proxy.
Both subdomains should have DNS A records pointing to your server's IP address. Later in this guide, we will configure a reverse proxy (Nginx) to route requests to these subdomains to the correct internal services. This setup is essential for full functionality, including webhooks and authentication.
Note: If you're only connecting to self-hosted Git tools on your network and do not require public access or webhooks, you might be able to use a simpler setup, but this guide focuses on public-facing deployments.

Setup

1

Clone the installer repository

git clone https://github.com/kodustech/kodus-installer.git
cd kodus-installer
2

Copy the example environment file

cp .env.example .env
3

Generate secure keys for the required environment variables

./generate-keys.sh
4

Edit the environment file

Edit .env with your values using your preferred text editor.
nano .env
See Environment Variables Configuration for detailed instructions.
5

Run the installer

./scripts/install.sh
6

Success 🎉

When complete, Kodus Services should be running on your machine. You can verify your installation using the following script:
./scripts/doctor.sh
7

Access the web interface

Once you access the web interface for the first time, you'll need to:
  1. Create your admin account - This will be the first user with full system access
  2. Configure your Git provider - Connect GitHub, GitLab, or Bitbucket following the on-screen instructions
  3. Select repositories for analysis - Choose which code repositories Kody will review
For detailed steps on the initial configuration process, refer to our Getting Started Guide.

環境ファイルでNovitaを設定する

.env ファイルを編集してコア設定を行います。LLMインテグレーションには、固定モードでNovitaを使用します:
# コアシステム設定(ドメインを更新してください)
WEB_HOSTNAME_API="kodus-api.yourdomain.com"    
WEB_PORT_API=443                               
NEXTAUTH_URL="https://kodus-web.yourdomain.com"

# セキュリティキー(上記のopensslコマンドで生成)
WEB_NEXTAUTH_SECRET="your-generated-secret"
WEB_JWT_SECRET_KEY="your-generated-secret"
API_CRYPTO_KEY="your-generated-hex-key"
API_JWT_SECRET="your-generated-secret"
API_JWT_REFRESHSECRET="your-generated-secret"

# データベース設定
API_PG_DB_PASSWORD="your-secure-db-password"
API_MG_DB_PASSWORD="your-secure-db-password"

# Novita設定(固定モード) 
API_LLM_PROVIDER_MODEL="deepseek-v3-0324"                    # 希望するモデルを選択
API_OPENAI_FORCE_BASE_URL="https://api.novita.ai/v3/openai"  # Novita API URL
API_OPEN_AI_API_KEY="your-novita-api-key"                    # Your Novita API Key

# Gitプロバイダーのウェブフック(プロバイダーを選択)
API_GITHUB_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/github/webhook"
# または API_GITLAB_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/gitlab/webhook"
# または GLOBAL_BITBUCKET_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/bitbucket/webhook"
ウェブフックURLはWebhooksサービス(ポート3332)に到達する必要があります。専用のウェブフックドメインを使用するか、リバースプロキシで /.../webhook をポート3332にルーティングしてください。
固定モードはNovitaに最適です。 OpenAI互換のAPIを提供し、必要なAPIキーは1つだけです。これにより設定が大幅に簡略化されます。

Run the Installation Script

Looking for more control? Check out our docker-compose file for manual deployment options.
Set the proper permissions for the installation script:
chmod +x scripts/install.sh
Run the script:
./scripts/install.sh

What the Installer Does

Our installer automates several important steps:
  • Verifies Docker installation
  • Creates networks for Kodus services
  • Clones repositories and configures environment files
  • Runs docker-compose to start all services
  • Executes database migrations
  • Seeds initial data
🎉 Success! When complete, the Kodus Web App and backend services (API, worker, webhooks, MCP manager) should be running on your machine. You can verify your installation by visiting http://localhost:3000 - you should see the Kodus Web Application interface.
Code Review features will not work yet unless you complete the reverse proxy setup. Without this configuration, external Git providers cannot send webhooks to your instance.

6. リバースプロキシのセットアップ(本番環境向け)

ウェブフックと外部アクセスのためにNginxを設定します:
# Webアプリ(ポート3000)
server {
    listen 80;
    server_name kodus-web.yourdomain.com;
    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

# API(ポート3001)  
server {
    listen 80;
    server_name kodus-api.yourdomain.com;
    location ~ ^/(github|gitlab|bitbucket|azure-repos)/webhook {
        proxy_pass http://localhost:3332;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    location / {
        proxy_pass http://localhost:3001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Novitaインテグレーションの確認

基本インストールの確認に加えて、Novitaが動作していることを確認します:
# Novita API接続を具体的に確認する
docker-compose logs api worker | grep -i novita
SSLセットアップ、監視、高度な設定の詳細については、完全なデプロイガイド を参照してください。

トラブルシューティング

  • Novitaのコンソール でAPIキーが正しく有効であることを確認する
  • Novitaアカウントに十分なクレジットがあるか確認する
  • .env ファイルに余分なスペースがないことを確認する
  • 設定でモデル名が正しくスペルされているか確認する
  • Novitaのプランでモデルが利用可能か確認する
  • 推奨リストの別のモデルを試してみる
  • サーバーが api.novita.ai にアクセスするインターネット接続があることを確認する
  • ファイアウォールの制限がないか確認する
  • 詳細なエラーメッセージについてAPI/ワーカーログを確認する