Nova 2 Liteをサービスに組み込んだ時に得られた知見

Nova 2 Liteをサービスに組み込んだ時に得られた知見

2025.12.05

こんにちは、筧(@takaakikakei)です。

AWS re:Invent 2025で、Amazon Nova 2 Liteが発表されました。早速自社サービスに組み込んでみたので、今回はその際に得られた知見を共有します。

Nova Groundingは、USリージョンでのみ利用可能

Web Grounding is available only in US regions. Requests from other regions return an error. Use CRIS profiles to route requests to supported regions when necessary.

https://docs.aws.amazon.com/nova/latest/nova2-userguide/web-grounding.html

Nova Groundingは、Nova系モデルでWeb検索を可能にするツールです。もともとはNova Premiumのみで利用可能な機能でした。機能が発表された当時はバージニア北部リージョンでのみ利用可能でしたが、現在はUSリージョンで利用可能に拡張されました。東京リージョンでのクロスリージョン推論では利用できないので注意が必要です。

呼び出し方は、クライアントをバージニア北部リージョンで作成しつつ、ツール設定でnova_groundingを指定します。

const command = new ConverseStreamCommand({
  modelId: 'us.amazon.nova-2-lite-v1:0',
  messages: messages,
  inferenceConfig: {
    maxTokens: 4096,
    temperature: 0.7
  },
  toolConfig: {
    tools: [
      {
        systemTool: {
          name: 'nova_grounding'
        }
      }
    ]
  }
});

Code Interpreterは、日本を含む複数リージョンで利用可能

https://docs.aws.amazon.com/nova/latest/userguide/tool-built-in.html

Code Interpreterは、隔離されたサンドボックス環境でPythonコードを安全に実行できるツールです。これにより、コードの記述と実行、数学の問題の解決などが可能になります。Novaモデルとしては、今回初めて登場しましたが、日本リージョンを含む複数リージョンで利用可能なようです。利用有無での明確なレスポンスの違いが感じにくい印象ですが、ログを確認して、Code Interpreterが呼び出されていることが確認できました。

呼び出し方ですが、Nova Groundingと併用する場合は、クライアントをバージニア北部リージョンで作成しつつ、ツール設定でnova_code_interpreterを追加で指定します。

const command = new ConverseStreamCommand({
  modelId: 'us.amazon.nova-2-lite-v1:0',
  messages: messages,
  inferenceConfig: {
    maxTokens: 4096,
    temperature: 0.7
  },
  toolConfig: {
    tools: [
      {
        systemTool: {
          name: 'nova_grounding'
        }
      },
      {
        systemTool: {
          name: 'nova_code_interpreter'
        }
      }
    ]
  }
});

推論パラメータをhighに設定した時は、Temperatureなどの一部パラメータが利用できない

Temperature, topP and topK cannot be used with maxReasoningEffort set to high. Using these parameters together causes an error.

https://docs.aws.amazon.com/nova/latest/nova2-userguide/using-converse-api.html

Nova 2 Liteでは推論パラメータを設定することができ、maxReasoningEffortでlow、medium、highの中から推論レベルを指定することができます。ただし、highに設定した場合は、TemperatureやtopP、topKなどの一部パラメータが利用できなくなります。APIでこれらのパラメータを指定すると、自動で無視されるわけではなく、エラーになるので注意が必要です。

呼び出し方ですが、以下のように条件分岐でパラメータを設定しておくと良いでしょう。

const model = 'jp.amazon.nova-2-lite-v1:0';
const reasoning = 'high'; // 'low' | 'medium' | 'high'
const temperature = 0.7;

const hasReasoning = reasoning !== undefined && 
  model.endsWith('amazon.nova-2-lite-v1:0');

const isHighReasoning = hasReasoning && reasoning === 'high';

const command = new ConverseStreamCommand({
  modelId: model,
  messages: messages,
  inferenceConfig: isHighReasoning
    ? {}
    : {
        maxTokens: 4096,
        temperature: temperature
      },
  ...(hasReasoning && {
    additionalModelRequestFields: {
      reasoningConfig: {
        type: 'enabled' as const,
        maxReasoningEffort: reasoning
      }
    }
  })
});

さいごに

最後までお読みいただきありがとうございました。

今回はNova 2 Liteの組み込み時に得られた知見をご紹介しました。Novaは最近ツール群が充実してきており、簡単に利用できるので、ありがたいですね。もし、Nova 2 Liteをサービスに組み込む際にうまくいかない場合は、上記内容に該当しないか確認してみてください。

本記事が皆様のお役に立てれば幸いです。それではまた!

この記事をシェアする

FacebookHatena blogX

関連記事