<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Freellm on Özkan Pakdil Software Engineer</title>
    <link>https://ozkanpakdil.github.io/tags/freellm/</link>
    <description>Recent content in Freellm on Özkan Pakdil Software Engineer</description>
    <image>
      <title>Özkan Pakdil Software Engineer</title>
      <url>https://ozkanpakdil.github.io/images/papermod-cover.png</url>
      <link>https://ozkanpakdil.github.io/images/papermod-cover.png</link>
    </image>
    <generator>Hugo -- 0.148.2</generator>
    <language>en</language>
    <copyright>Özkan Pakdil</copyright>
    <lastBuildDate>Sun, 19 Jul 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://ozkanpakdil.github.io/tags/freellm/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>How to add NVIDIA free models to VS Code</title>
      <link>https://ozkanpakdil.github.io/posts/my_collections/2026/2026-07-19-how-to-add-nvidia-free-model/</link>
      <pubDate>Sun, 19 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://ozkanpakdil.github.io/posts/my_collections/2026/2026-07-19-how-to-add-nvidia-free-model/</guid>
      <description>&lt;p&gt;NVIDIA offers free access to their powerful Nemotron models through their &lt;a href=&#34;https://build.nvidia.com/&#34;&gt;NVIDIA Build platform&lt;/a&gt;. In this post, I&amp;rsquo;ll walk you through how to get a free API key and configure it in VS Code to use models like &lt;code&gt;nvidia/nemotron-3-ultra-550b-a55b&lt;/code&gt; directly in VS Code. Also you can choose any other model from &lt;a href=&#34;https://build.nvidia.com/models?orderBy=weightPopular%3ADESC&amp;amp;filters=nimType%3Anim_type_preview&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h3&gt;
&lt;p&gt;VScode needs to be above 1.27 it needs to have customendpoint supporting&lt;/p&gt;
&lt;h2 id=&#34;getting-your-free-nvidia-api-key&#34;&gt;Getting Your Free NVIDIA API Key&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Go to &lt;a href=&#34;https://build.nvidia.com/&#34;&gt;build.nvidia.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Sign in or create an NVIDIA account&lt;/li&gt;
&lt;li&gt;Navigate to the model you want to use (e.g., &lt;a href=&#34;https://build.nvidia.com/nvidia/nemotron-3-ultra&#34;&gt;Nemotron 3 Ultra&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Click &amp;ldquo;Get API Key&amp;rdquo; button&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: In my experience, the &amp;ldquo;Get API Key&amp;rdquo; button in the UI didn&amp;rsquo;t work properly (it appeared to do nothing). If this happens to you, here&amp;rsquo;s how to get your API key:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>NVIDIA offers free access to their powerful Nemotron models through their <a href="https://build.nvidia.com/">NVIDIA Build platform</a>. In this post, I&rsquo;ll walk you through how to get a free API key and configure it in VS Code to use models like <code>nvidia/nemotron-3-ultra-550b-a55b</code> directly in VS Code. Also you can choose any other model from <a href="https://build.nvidia.com/models?orderBy=weightPopular%3ADESC&amp;filters=nimType%3Anim_type_preview">here</a>.</p>
<h3 id="prerequisites">Prerequisites</h3>
<p>VScode needs to be above 1.27 it needs to have customendpoint supporting</p>
<h2 id="getting-your-free-nvidia-api-key">Getting Your Free NVIDIA API Key</h2>
<ol>
<li>Go to <a href="https://build.nvidia.com/">build.nvidia.com</a></li>
<li>Sign in or create an NVIDIA account</li>
<li>Navigate to the model you want to use (e.g., <a href="https://build.nvidia.com/nvidia/nemotron-3-ultra">Nemotron 3 Ultra</a>)</li>
<li>Click &ldquo;Get API Key&rdquo; button</li>
</ol>
<p><strong>Note</strong>: In my experience, the &ldquo;Get API Key&rdquo; button in the UI didn&rsquo;t work properly (it appeared to do nothing). If this happens to you, here&rsquo;s how to get your API key:</p>
<ol>
<li>Open your browser&rsquo;s Developer Tools (F12) → Network tab</li>
<li>Click the &ldquo;Get API Key&rdquo; button again</li>
<li>Look for a POST request to <code>https://api.nvcf.nvidia.com/v2/nvcf/api-keys</code></li>
<li>Click on that request and check the <strong>Response</strong> tab - you&rsquo;ll find your API key there</li>
</ol>
<p>The API call looks like this (for reference - you don&rsquo;t need to run this manually):</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># This is what the UI calls behind the scenes - for reference only</span>
</span></span><span style="display:flex;"><span>curl <span style="color:#e6db74">&#39;https://api.nvcf.nvidia.com/v2/nvcf/api-keys&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Accept: */*&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Accept-Language: en-GB,en;q=0.9&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Accept-Encoding: gzip, deflate, br, zstd&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Referer: https://build.nvidia.com/&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;content-type: application/json&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Origin: https://build.nvidia.com&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Connection: keep-alive&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Cookie: ...&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Sec-Fetch-Dest: empty&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Sec-Fetch-Mode: cors&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#39;Sec-Fetch-Site: same-site&#39;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  --data-raw <span style="color:#e6db74">&#39;{&#34;name&#34;:&#34;&#34;,&#34;type&#34;:&#34;AI_PLAYGROUNDS_KEY&#34;,&#34;expiryDate&#34;:&#34;2027-01-19T11:37:44Z&#34;,&#34;policies&#34;:[{&#34;product&#34;:&#34;nv-cloud-functions&#34;,&#34;scopes&#34;:[&#34;invoke_function&#34;],&#34;resources&#34;:[{&#34;id&#34;:&#34;*&#34;,&#34;type&#34;:&#34;account-functions&#34;}]}]}&#39;</span>
</span></span></code></pre></div><p>The response will contain your API key:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&#34;apiKey&#34;</span>: {
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;keyId&#34;</span>: <span style="color:#e6db74">&#34;1a9e12d7-b35f-4ed0-943c-3935c442a5c9&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;name&#34;</span>: <span style="color:#e6db74">&#34;NVIDIABuild-Autogen-54&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;type&#34;</span>: <span style="color:#e6db74">&#34;AI_PLAYGROUNDS_KEY&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;value&#34;</span>: <span style="color:#e6db74">&#34;nvapi-...&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;ownerId&#34;</span>: <span style="color:#e6db74">&#34;...&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;status&#34;</span>: <span style="color:#e6db74">&#34;ACTIVE&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;expiryDate&#34;</span>: <span style="color:#e6db74">&#34;2027-01-19T11:37:44.000Z&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;createdDate&#34;</span>: <span style="color:#e6db74">&#34;2026-07-19T11:39:27.197Z&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;policies&#34;</span>: [
</span></span><span style="display:flex;"><span>      {
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;product&#34;</span>: <span style="color:#e6db74">&#34;nv-cloud-functions&#34;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;productDisplayName&#34;</span>: <span style="color:#e6db74">&#34;NVIDIA Cloud Functions&#34;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;resources&#34;</span>: [
</span></span><span style="display:flex;"><span>          {
</span></span><span style="display:flex;"><span>            <span style="color:#f92672">&#34;id&#34;</span>: <span style="color:#e6db74">&#34;*&#34;</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#f92672">&#34;type&#34;</span>: <span style="color:#e6db74">&#34;account-functions&#34;</span>
</span></span><span style="display:flex;"><span>          },
</span></span><span style="display:flex;"><span>          {
</span></span><span style="display:flex;"><span>            <span style="color:#f92672">&#34;id&#34;</span>: <span style="color:#e6db74">&#34;*&#34;</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#f92672">&#34;type&#34;</span>: <span style="color:#e6db74">&#34;authorized-functions&#34;</span>
</span></span><span style="display:flex;"><span>          }
</span></span><span style="display:flex;"><span>        ],
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;roles&#34;</span>: [],
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;scopes&#34;</span>: [
</span></span><span style="display:flex;"><span>          <span style="color:#e6db74">&#34;invoke_function&#34;</span>,
</span></span><span style="display:flex;"><span>          <span style="color:#e6db74">&#34;list_functions&#34;</span>,
</span></span><span style="display:flex;"><span>          <span style="color:#e6db74">&#34;list_functions_details&#34;</span>,
</span></span><span style="display:flex;"><span>          <span style="color:#e6db74">&#34;queue_details&#34;</span>
</span></span><span style="display:flex;"><span>        ]
</span></span><span style="display:flex;"><span>      },
</span></span><span style="display:flex;"><span>      {
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;product&#34;</span>: <span style="color:#e6db74">&#34;ai-foundations&#34;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;productDisplayName&#34;</span>: <span style="color:#e6db74">&#34;Public API Endpoints&#34;</span>
</span></span><span style="display:flex;"><span>      },
</span></span><span style="display:flex;"><span>      {
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;product&#34;</span>: <span style="color:#e6db74">&#34;artifact-catalog&#34;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;productDisplayName&#34;</span>: <span style="color:#e6db74">&#34;NGC Catalog&#34;</span>
</span></span><span style="display:flex;"><span>      },
</span></span><span style="display:flex;"><span>      {
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;product&#34;</span>: <span style="color:#e6db74">&#34;private-registry&#34;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&#34;productDisplayName&#34;</span>: <span style="color:#e6db74">&#34;NVIDIA Private Registry&#34;</span>
</span></span><span style="display:flex;"><span>      }
</span></span><span style="display:flex;"><span>    ]
</span></span><span style="display:flex;"><span>  }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p><strong>Important</strong>: Save the <code>value</code> field (the <code>nvapi-...</code> key) - you&rsquo;ll need it for VS Code configuration.</p>
<h2 id="configuring-vs-code">Configuring VS Code</h2>
<p>The <a href="https://code.visualstudio.com/docs/agent-customization/language-models">recommended way</a> is to use the VS Code UI to add the custom model, which will properly encrypt and store your API key. <strong>Custom language models are configured in a separate file called <code>chatLanguageModels.json</code></strong> (not in <code>settings.json</code> under <code>chat.mcp.servers</code> - that&rsquo;s for MCP servers, which is a different feature).</p>
<h3 id="using-vs-code-ui">Using VS Code UI</h3>
<p>Check <a href="https://youtu.be/VBSVSxs16_I?t=64">the video</a> if you have not done before. Below are the steps</p>
<ol>
<li>Open VS Code Command Palette (Cmd/Ctrl + Shift + P)</li>
<li>Search for &ldquo;Chat: Manage Language Models&rdquo; <a href="https://code.visualstudio.com/docs/agent-customization/language-models#_manage-language-models">here the docs</a></li>
<li>Click &ldquo;Add Model&rdquo; or &ldquo;Add Custom Model&rdquo;</li>
<li>Fill in the details:
<ul>
<li><strong>Name</strong>: <code>Nvidia</code> (or any name you prefer)</li>
<li><strong>Vendor</strong>: <code>customendpoint</code></li>
<li><strong>API Key</strong>: Enter your <code>nvapi-...</code> key (VS Code will encrypt and store it securely)</li>
<li><strong>Model ID</strong>: <code>nvidia/nemotron-3-ultra-550b-a55b</code></li>
<li><strong>Model Name</strong>: <code>nvidia/nemotron-3-ultra-550b-a55b</code></li>
<li><strong>URL</strong>: <code>https://integrate.api.nvidia.com/v1/chat/completions</code></li>
<li><strong>Tool Calling</strong>: ✅ Enabled</li>
<li><strong>Max Input Tokens</strong>: 262144</li>
<li><strong>Max Output Tokens</strong>: 32000</li>
</ul>
</li>
</ol>
<p>in <code>chatLanguageModels.json</code> will have json like below</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span>[
</span></span><span style="display:flex;"><span>  {
</span></span><span style="display:flex;"><span>		<span style="color:#f92672">&#34;name&#34;</span>: <span style="color:#e6db74">&#34;Nvidia&#34;</span>,
</span></span><span style="display:flex;"><span>		<span style="color:#f92672">&#34;vendor&#34;</span>: <span style="color:#e6db74">&#34;customendpoint&#34;</span>,
</span></span><span style="display:flex;"><span>		<span style="color:#f92672">&#34;apiKey&#34;</span>: <span style="color:#e6db74">&#34;${input:chat.lm.secret.6878c97f}&#34;</span>,
</span></span><span style="display:flex;"><span>		<span style="color:#f92672">&#34;models&#34;</span>: [
</span></span><span style="display:flex;"><span>			{
</span></span><span style="display:flex;"><span>				<span style="color:#f92672">&#34;id&#34;</span>: <span style="color:#e6db74">&#34;nvidia/nemotron-3-ultra-550b-a55b&#34;</span>,
</span></span><span style="display:flex;"><span>				<span style="color:#f92672">&#34;name&#34;</span>: <span style="color:#e6db74">&#34;nvidia/nemotron-3-ultra-550b-a55b&#34;</span>,
</span></span><span style="display:flex;"><span>				<span style="color:#f92672">&#34;url&#34;</span>: <span style="color:#e6db74">&#34;https://integrate.api.nvidia.com/v1/chat/completions&#34;</span>,
</span></span><span style="display:flex;"><span>				<span style="color:#f92672">&#34;toolCalling&#34;</span>: <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>                <span style="color:#f92672">&#34;vision&#34;</span>: <span style="color:#66d9ef">false</span>,
</span></span><span style="display:flex;"><span>                <span style="color:#f92672">&#34;maxInputTokens&#34;</span>: <span style="color:#ae81ff">262144</span>,
</span></span><span style="display:flex;"><span>                <span style="color:#f92672">&#34;maxOutputTokens&#34;</span>: <span style="color:#ae81ff">32000</span>
</span></span><span style="display:flex;"><span>			}
</span></span><span style="display:flex;"><span>		]
</span></span><span style="display:flex;"><span>	}
</span></span><span style="display:flex;"><span>]
</span></span></code></pre></div><h2 id="using-the-model-in-vs-code">Using the Model in VS Code</h2>
<p>Once configured, you can use the model in VS Code Chat:</p>
<ol>
<li>Open the Chat view (Ctrl+Alt+I / Cmd+Option+I)</li>
<li>Click the model selector dropdown</li>
<li>Select <strong>&ldquo;Nvidia&rdquo;</strong> → <strong>&ldquo;nvidia/nemotron-3-ultra-550b-a55b&rdquo;</strong> (or whatever name you gave the model)</li>
<li>Start chatting!</li>
</ol>
<p>The model supports:</p>
<ul>
<li><strong>Tool calling</strong> - Can use tools and functions</li>
<li><strong>128K context window</strong> - Large context for long conversations</li>
<li><strong>16K output tokens</strong> - Long responses</li>
</ul>
<h2 id="model-details">Model Details</h2>
<table>
  <thead>
      <tr>
          <th>Property</th>
          <th>Value</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Model ID</td>
          <td><code>nvidia/nemotron-3-ultra-550b-a55b</code></td>
      </tr>
      <tr>
          <td>Endpoint</td>
          <td><code>https://integrate.api.nvidia.com/v1/chat/completions</code></td>
      </tr>
      <tr>
          <td>Context Window</td>
          <td>128,000 tokens</td>
      </tr>
      <tr>
          <td>Max Output</td>
          <td>16,000 tokens</td>
      </tr>
      <tr>
          <td>Tool Calling</td>
          <td>✅ Yes</td>
      </tr>
      <tr>
          <td>Free Tier</td>
          <td>✅ Yes (with NVIDIA account)</td>
      </tr>
  </tbody>
</table>
<h2 id="tips">Tips</h2>
<ol>
<li><strong>Rate Limits</strong>: The free tier has rate limits. Check <a href="https://build.nvidia.com/">NVIDIA&rsquo;s documentation</a> for current limits.</li>
<li><strong>API Key Expiry</strong>: The key expires on the date shown in the response (e.g., 2027-01-19). You&rsquo;ll need to generate a new one when it expires.</li>
<li><strong>Multiple Models</strong>: You can add multiple NVIDIA models to the same configuration by adding more entries to the <code>models</code> array.</li>
<li><strong>VS Code Insiders</strong>: If you&rsquo;re on VS Code Insiders, the settings path might be slightly different.</li>
</ol>
<h2 id="resources">Resources</h2>
<ul>
<li><a href="https://build.nvidia.com/">NVIDIA Build Platform</a></li>
<li><a href="https://build.nvidia.com/nvidia/nemotron-3-ultra">Nemotron 3 Ultra Model Card</a></li>
<li><a href="https://docs.nvidia.com/">NVIDIA API Documentation</a></li>
<li><a href="https://code.visualstudio.com/docs/copilot/custom-models">VS Code Copilot Custom Models Documentation</a></li>
<li><a href="https://build.nvidia.com/models?orderBy=weightPopular%3ADESC&amp;filters=nimType%3Anim_type_preview">All free model from Nvidia</a></li>
</ul>
<hr>
<p><em>Happy coding with NVIDIA&rsquo;s free models! 🚀</em></p>
]]></content:encoded>
    </item>
  </channel>
</rss>
