DeepSeek HarnessとNovita AI:セットアップガイド、APIキー、モデル選択

DeepSeek HarnessとNovita AI:セットアップガイド、APIキー、モデル選択

DeepSeek Harnessは、Harness Web UIをローカルで起動し、Novita AIをOpenAI互換のカスタムモデルプロバイダーとして追加することで、Novita AIと連携します。Node.jsをインストールし、npx @deepseek-ai/dsh web を実行して http://127.0.0.1:3080 を開き、プロバイダーのベースURLとして https://api.novita.ai/openai を、認証情報としてNovita AIのAPIキーを、そしてNovita AIモデルライブラリからモデルIDを指定します。セットアップには数分かかりますが、実際の作業は、コーディング、リポジトリ分析、リサーチ、または大量処理タスクに適したモデルを選択することです。

DeepSeek Harnessとは

DeepSeek Harnessは、DeepSeek AIが提供するオープンソースのエージェントハーネスで、「全てがプラグイン」というアーキテクチャを基盤としています。公式ドキュメントでは、本プロジェクトは開発者プレビュー段階であり、互換性を損なう変更が発生する可能性が高いと警告されています。したがって、本番環境での最善の対策は、動作するバージョンを固定し、アップグレード前に変更内容を確認し、アップグレード後に統合を検証することです。

モデルとハーネスの違いは、実際に動かしてみると理解しやすくなります。LLMはプロンプトを読み取り、次に何をするかを決定します。ハーネスは、その決定に実行経路(ワークスペース、ツール、シェル、ブラウザ、セッション、ストレージ、そして次のアクションを選択する前に何が起こったかを観察する手段)を提供します。DeepSeek Harnessは、このループを自身のマシン上で実行するWeb UIにパッケージ化し、推論モデルはAPIサービスとして残すことができます。

この設計は、いくつかの種類の作業に適しています。

  • コードベースの変更。 エージェントにファイルを検査させ、パッチを提案させ、テストを実行させ、失敗後に修正させます。
  • リポジトリのトリアージ。 未知の依存関係を調査し、コールパスをマッピングし、リスク領域を要約し、フォローアップチケットを作成します。
  • リサーチとレポート。 回答が多くのページに分散している場合、ブラウジング、ファイル出力、構造化された要約を組み合わせます。
  • 運用実験。 スクリプトをドラフトし、承認を得てローカルで実行し、ワークフローを拡張する前に何が変更されたかを記録します。

ファイルアクセスやローカル実行が不要な、小さな監査可能なAPI呼び出しが必要な場合には、あまり適していません。エージェントハーネスは開発環境であり、単なる推論エンドポイントではありません。チャット補完のみが必要な場合は、直接Novita AI LLM APIを使用する方が簡単です。

セットアップ前に必要なもの

4つのものが必要です。

  1. Node.jsがインストールされたマシン。
  2. Novita AIアカウント
  3. Novita AI APIキー
  4. エージェントが読み取り、必要に応じて編集できるワーキングディレクトリ。

Node.jsがインストールされていることを確認するには、次のコマンドを実行します。

node --version

現在、公式のDeepSeek HarnessリポジトリはNode.js ^22.19.0 || >=24.0.0 をサポートしていると宣言しています。コマンドが古いバージョンを出力するか失敗した場合は、nodejs.org からNode.jsをインストールし、再確認してください。可能であれば、システム管理者としてコマンドを実行しないでください。npx がグローバルキャッシュに書き込めないために失敗する場合は、rootとしてシェルを開く代わりに、Node.js/npmの権限を修正してください。

セットアップを進める前に、専用のプロジェクトフォルダを作成し、内容が重要な場合はソース管理下に置いてください。ツールにアクセスできるハーネスは非常に便利ですが、「このコードを見てください」と「本番環境に投稿してください」ではリスクレベルが異なります。エージェントの提案するアクションを確認し、必要のない認証情報には接続しないようにしてください。

Novita AIモデルを接続する方法

ステップ1:Novita AI APIキーを取得する

Novita AI にサインインし、Key Management を開き、新しいキーを作成してすぐにコピーします。コンソールでキーが一度だけ表示される場合は、パスワードマネージャーやチームですでに使用しているローカルのシークレットストアに保管してください。ドキュメント、スクリーンショット、ソースリポジトリ、共有チャットに貼り付けないでください。

このガイドでは、Harnessを起動するシェルでエクスポートします。

export NOVITA_API_KEY="your-key"

この変数はセットアップを容易にするためだけのものです。次のセクションのUIプロバイダー設定が、Harnessがモデル呼び出しを行うために実際に使用するものです。

ステップ2:DeepSeek Harness Web UIを実行する

公式READMEには、次のnpm起動パスが記載されています。

npx @deepseek-ai/dsh web

初回実行時はパッケージとその依存関係をダウンロードするため、2回目以降よりも時間がかかることがあります。DeepSeek Harnessは、デフォルトでWeb UIを http://127.0.0.1:3080 で開き、デフォルトのブラウザで起動します。SSH経由で作業している場合やブラウザを起動したくない場合は、公式READMEに --no-open フラグが記載されています。

npx @deepseek-ai/dsh web --no-open

DeepSeek Harnessは、ソースから pnpm installpnpm run buildpnpm dsh web で実行することもできますが、npmパスが最も速く動作するUIを利用できる方法であり、このガイドではこちらを使用します。

ステップ3:Novita AIをカスタムプロバイダーとして追加する

DeepSeek Harnessの反復に伴い、正確なラベルは変更される可能性がありますが、現在のWeb UIでの目標は同じです。モデル/プロバイダー設定を開き、カスタムのOpenAI互換プロバイダーを追加します。

フィールド 使用する値
Display name Novita AI
Provider ID novita または他の安定したローカル識別子
Base URL https://api.novita.ai/openai
API key あなたのNovita AI APIキー
Model catalog リフレッシュするか、必要な特定のNovita AIモデルIDを追加します

特定のモデルへのパスではなく、https://api.novita.ai/openai を使用してください。プロバイダーIDは安定した状態に保ってください。後で名前を変更すると、既存のセッション設定が存在しないプロバイダーを指す可能性があります。プロバイダーを保存した後、モデルカタログをリフレッシュし、モデルをセッションピッカーで表示できるようにします。

選択するAPIプロトコルは openai-completions です。DeepSeek Harnessは、このプロトコルをOpenAI Chat Completions用にドキュメント化しており、代わりにこれらのリクエスト形状を使用するゲートウェイ向けに openai-responsesanthropic-messages も提供しています。

ステップ4:モデルとワークスペースを選択する

DeepSeek Harness UIでワークスペースを開き、追加したNovita AIモデルのいずれかを選択します。UIに「get models」アクションがある場合は、メモリからモデルIDを入力するよりもそれを使用してください。モデルIDは統合契約です。間違ったIDは、ネットワーク問題、権限問題、または空のカタログのように見える可能性があります。

次に、重要なコードベースを使用する前に、小さなタスクを実行します。

List the files in this workspace, identify the main entry point, and propose one low-risk documentation improvement.

エージェントがワークスペースを読み取り、モデルを呼び出し、承認していないアクションの前に停止できることを確認します。このループが機能すれば、実際のタスクに進みます。

モデルの検出でリストが作られない場合は、モデルIDを手動で追加してください。DeepSeek Harnessは、すべてのゲートウェイが同じリスティング形式を返すわけではないため、便宜上ディスカバリーをドキュメント化しています。

セットアップ後に実行できること

DeepSeek Harnessは、単にフォローアップの質問をするだけでなく、エージェントセッションを定義および操作する場所を提供します。いくつかの実用的な出発点を紹介します。

既存のコードパスを説明しリファクタリングする

ワークスペースをサービスまたはパッケージに向け、エージェントに1つの機能を最初から最後まで追跡するよう依頼します。有用な出力は散文だけではありません。変更計画、影響を受けるファイル、追加するテスト、リファクタリングが成功したことを証明するシグナルを含めることができます。

Trace how an incoming request reaches the database layer. Produce a numbered flow, list likely failure points, and propose tests for the two highest-risk paths.

編集を許可する前に計画を確認してください。モデルは、暗黙のイニシャライザ、古い設定パス、またはまだ本番環境の呼び出し元がいる古いAPIに依存する、一貫性のあるように見えるコードベースのルートを選択する可能性があります。

移行またはクリーンアップの準備

Harnessは、「作業の準備」タスクに役立ちます。依存関係のインベントリ、API使用状況リスト、互換性チェックリスト、段階的な移行計画などを依頼します。これらの成果物は、大規模なワンショットパッチよりもレビューが容易であり、移行が他のチームに影響を与える場合に必要な判断を保持します。

リサーチからファイルへのワークフローを実行する

市場調査や技術比較の場合、エージェントに情報源を収集し、日付を調整し、矛盾点を記録し、レポートのドラフトをローカルファイルに作成するよう依頼します。成果物は「候補の表をURLと日付付きで作成する」のように絞り込み、「この市場で何が起きているか教えてください」よりも検証が容易です。

繰り返し可能なローカルワークフローを構築する

プロンプトが機能したら、使用しているHarnessのバージョンがサポートしている場合、プロジェクトプロンプトまたはプラグインとして保存します。再利用可能なプロンプトには、ワークスペース、必要な入力、出力形式、および安全境界を明記する必要があります。この最後の部分は、ワークフローがコマンドを実行したりファイルを編集したりする場合に重要です。

ジョブに適したモデルを選択する方法

Novita AIはDeepSeekおよびその他のモデルファミリをサポートしているため、問題は「どのプロバイダーに1つのモデルがあるか」ではなく、「ワークフローのこの段階ではどのモデルを使用すべきか」です。Novita AIモデルライブラリ の現在のリストを確認し、Harnessに保存する前にモデルページで正確なモデルIDを確認してください。モデルIDと制限は、カタログの更新に応じて変更されます。

これらのルーティングパターンを出発点として使用してください。

  • DeepSeek V4.1 Flash は、フラッグシップモデルのコストプロファイルを必要としない、コード分析、数学中心のタスク、またはマルチステップの説明に対する強力な汎用推論が必要な場合に便利です。
  • GLM 5.3 は、執筆時点でのフラッグシップGLMリストであり、GLM 5.3 Flash は効率性重視のネイティブマルチモーダルオプションです。完全なリポジトリを1つのリクエストに詰め込む前に、コンテキストウィンドウと出力制限を確認してください。
  • Qwen3.8 FlashQwen3.8 Max は、現在のQwen3.8ラインナップの効率性とフラッグシップの両端をカバーしています。デフォルトのモデルに対して同じパッチタスクを実行し、出力がレビューしやすいかどうかを確認してください。
  • Kimi K3 は、NovitaカタログにおけるMoonshotの現在のフラッグシップであり、ロングコンテキスト、リサーチ、ツール多用のワークフローに適しています。本番環境で依存する前に、ツール呼び出しに関する正確なAPI動作を確認してください。
  • MiniMax M3 は最新のMiniMaxリストであり、効率的なインタラクティブおよびマルチモーダル入力作業の候補です。1つのベンチマーク結果がそのまま転送されるとは想定せず、独自のプロンプトでレイテンシと応答品質を測定してください。

本番エージェントワークでは、リーダーボードよりも3つの測定項目が重要です。

  1. タスク成功率。 パッチはテストに合格しますか?レポートには要求されたセクションが含まれていますか?ツール呼び出しは意図したアクションを実行しますか?
  2. 承認された結果あたりのコスト。 リトライ、無駄な出力、悪い計画のレビューに費やした人間の時間をカウントします。
  3. 障害モード。 モデルは丁寧に拒否しますか、ツール呼び出しを幻覚しますか、それとも自信を持って誤ったアクションを実行しますか?最後のものは、より厳格な承認設定が必要です。

毎回プロバイダーを編集せずに2つのモデルを比較したい場合は、両方を同じNovita AIプロバイダーに追加し、正確なモデルIDを保存し、同じ代表的なプロンプトセットを実行します。次に、チャット出力だけでなく、最終的な成果物を検査します。

一般的なセットアップの問題のトラブルシューティング

モデルリストが空です

ベースURLが正確に https://api.novita.ai/openai であること、APIキーが有効であること、アカウントがモデルにアクセスできることを確認してください。UIにリフレッシュアクションがある場合は、プロバイダーを保存した後にカタログをリフレッシュしてください。次に、Harnessの外部で直接API呼び出しを使用してキーをテストします。

モデルのフェッチで認証エラーが返される場合は、まずキーを確認してください。HarnessのディスカバリーはOpenAI互換のモデルリストエンドポイントを呼び出し、そこで失敗する可能性がありますが、通常の補完呼び出しは別の理由で失敗します。

プロバイダーは保存されますが、リクエストが失敗します

モデルIDがNovita AIモデルページと一致していることを確認してください。また、選択したモデルがハーネスが行っているリクエストタイプをサポートしているかどうかを確認してください。テキストのみのモデルは画像リクエストをサポートしない場合があり、ツールをサポートしていないモデルは、ツール呼び出しを期待するエージェントステップで失敗する可能性があります。

npx が初回起動時にハングするか失敗する

初回起動時は依存関係をダウンロードするため、時間がかかることがあります。失敗した場合は、ネットワーク、npmキャッシュ、Node.jsのバージョンを確認してください。クリーンな再試行は合理的です。エラーが権限に関するものである場合は、昇格した権限でコマンドを実行するよりも、ユーザーレベルのNode.jsインストールまたはパッケージマネージャーキャッシュを優先してください。

ブラウザが開かない

サーバーはまだ実行されている可能性があります。http://127.0.0.1:3080 を手動で開くか、npx @deepseek-ai/dsh web --no-open で再起動し、同じマシンのブラウザからURLにアクセスしてください。SSH経由では、転送されたホストが 127.0.0.1 ではない場合があるため、コマンドによって出力されたアドレスを使用してください。

エージェントが予期しない変更を行いました

実行を停止し、バージョン管理の差分を検査し、不要なものを元に戻してください。次に、ツールのスコープを減らすか、使い捨てのワークスペースでタスクを実行します。チームが保護されたブランチとデプロイメント認証情報を使用している場合は、ワークフローを信頼するまで、それらをエージェントの到達範囲外に保ってください。

よくある質問

DeepSeek HarnessはNovita AIモデルをサポートしていますか?

DeepSeek HarnessはカスタムのOpenAI互換プロバイダーをサポートしており、Novita AIはOpenAI互換のAPIを公開しています。このガイドでは、カスタムプロバイダーパスを使用します。ベースURLとして https://api.novita.ai/openai、Novita AI APIキー、そしてNovita AIモデルページの正確なモデルIDを使用します。

独自のモデルサーバーをデプロイする必要がありますか?

いいえ。Novita AIがモデルAPIをホストし、DeepSeek Harnessはローカルで実行されてそのAPIを呼び出します。このセットアップのためにGPUを管理する必要はありません。ただし、Node.jsプロセスとエージェントが実行するツールのために、十分なローカルリソースが必要です。

DeepSeek Harnessは本番環境で使用できますか?

公式リポジトリは、DeepSeek Harnessを開発者プレビューと説明し、互換性を損なう変更について警告しています。今日から使用することは可能ですが、バージョンを固定し、リリースノートを確認し、重要な作業はソース管理下に置き、本番ワークフローを変更する前に非クリティカルなワークスペースでアップグレードをテストしてください。

同じプロジェクトで複数のモデルを使用できますか?

はい、UIがセッション内でのモデル切り替えをサポートしている場合可能です。便利なパターンは、1つのモデルをドラフトや一次コード作成用に、別のモデルをレビューやより深い分析用に、さらに低コストのモデルを要約、分類、または繰り返し抽出用に使用することです。

Novita AI APIキーはどこに保存すべきですか?

必要な場合にのみプロバイダー設定に配置し、それ以外の場合はローカルのシークレットマネージャーまたは暗号化された環境ストアに保管してください。コミットしたり、スクリーンショットで共有したり、タスクに必要なよりも広い権限を与えたりしないでください。

実際のコードベースに接続する前に何をすべきですか?

ワークスペースをバージョン管理下に置き、エージェントの承認設定を確認し、不要な認証情報を削除し、読み取り専用または低リスクのタスクから開始し、エージェントがプロジェクトでどのように動作するかを理解した後でツールセットを拡張してください。

おすすめ記事

出典