CtrlK
BlogDocsLog inGet started
Tessl Logo

groq-upgrade-migration

Upgrade groq-sdk versions and handle Groq model deprecations. Use when upgrading SDK versions, detecting deprecated models, or migrating to new Groq model IDs. Trigger with phrases like "upgrade groq", "groq migration", "groq breaking changes", "update groq SDK", "groq deprecated model".

68

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Groq Upgrade & Migration

Current State

!npm list groq-sdk 2>/dev/null | grep groq-sdk || echo 'groq-sdk not installed' !pip show groq 2>/dev/null | grep -E "Name|Version" || echo 'groq not installed (python)'

Overview

Guide for upgrading the groq-sdk package and migrating away from deprecated model IDs. It walks a safe upgrade path — branch, bump, scan for deprecated model references, rewrite them, and verify against the live models endpoint before merging.

Prerequisites

  • A Node project that depends on groq-sdk (or the Python groq package).
  • npm, git, curl, and jq available on PATH.
  • Authentication: GROQ_API_KEY exported in your shell (or CI secret store). The SDK constructor new Groq() reads it automatically; the live model check passes it as Authorization: Bearer $GROQ_API_KEY. Get a key at https://console.groq.com/keys. See the Authentication section of references/implementation.md.

Model Deprecation Timeline

Groq announces deprecations with advance notice. These models have been deprecated:

Deprecated ModelDeprecation DateReplacement
mixtral-8x7b-327682025-03-05llama-3.3-70b-versatile or llama-3.1-8b-instant
gemma2-9b-it2025-08-08llama-3.1-8b-instant
llama-3.1-70b-versatile2024-12-06llama-3.3-70b-versatile
llama-3.1-70b-specdec2024-12-06llama-3.3-70b-specdec
playai-tts2025-12-23Orpheus TTS models
playai-tts-arabic2025-12-23Orpheus TTS models
distil-whisper-large-v3-enwhisper-large-v3-turbo

Current Model IDs (Use These)

Model IDTypeContextSpeed
llama-3.1-8b-instantText128K~560 tok/s
llama-3.3-70b-versatileText128K~280 tok/s
llama-3.3-70b-specdecText128KFaster
meta-llama/llama-4-scout-17b-16e-instructVision+Text128K~460 tok/s
meta-llama/llama-4-maverick-17b-128e-instructVision+Text128K
whisper-large-v3Audio STT164x RT
whisper-large-v3-turboAudio STT216x RT

Always verify against the live endpoint: GET https://api.groq.com/openai/v1/models.

Instructions

Work through these six steps. Each has a copy-paste command block in references/implementation.md; the summary here is enough to drive the workflow, then drill in for the exact commands.

  1. Check current version and models — read the installed groq-sdk version, compare to npm view groq-sdk version, and grep your src/ for every model string reference.
  2. Upgrade the SDKgit checkout -b chore/upgrade-groq-sdk, then npm install groq-sdk@latest.
  3. Find and replace deprecated models — use Read/Edit to fold the MODEL_MIGRATIONS resolver map (below) into your Groq client module, or Write a new groq-migrations.ts helper, so deprecated IDs are rewritten at runtime.
  4. Run the migration scanner — the grep sweep in the reference flags deprecated model IDs, old @groq/sdk imports, and removed method calls.
  5. Validate and testnpm test, then confirm current IDs against the live /v1/models endpoint and run the SDK integration smoke test.
  6. Roll back if needed — pin the previous version with npm install groq-sdk@0.11.0 --save-exact and re-run tests.

The essential resolver skeleton (full version in the reference):

const MODEL_MIGRATIONS: Record<string, string> = {
  "mixtral-8x7b-32768": "llama-3.3-70b-versatile",
  "gemma2-9b-it": "llama-3.1-8b-instant",
  "distil-whisper-large-v3-en": "whisper-large-v3-turbo",
  // ...full map in references/implementation.md
};

function resolveModel(model: string): string {
  if (model in MODEL_MIGRATIONS) {
    console.warn(`Model ${model} is deprecated. Using ${MODEL_MIGRATIONS[model]} instead.`);
    return MODEL_MIGRATIONS[model];
  }
  return model;
}

Output

Running this workflow produces:

  • A chore/upgrade-groq-sdk branch with groq-sdk bumped in package.json and the lockfile.
  • A scanner report listing any remaining deprecated model IDs, stale @groq/sdk imports, or removed method calls — empty under every heading means the code is clean.
  • Updated call sites (or a resolveModel wrapper) pointing at current model IDs.
  • A green npm test run plus a live /v1/models listing confirming every model your code uses is still served.

Error Handling

IssueSymptomSolution
Deprecated model400 model_not_found or 400 model_decommissionedReplace with current model ID
Type errors after upgradeTypeScript compilation failsCheck SDK changelog for type changes
Auth format change401 after upgradeVerify constructor uses apiKey, not key, and GROQ_API_KEY is set
New required fields400 on previously working requestsCheck API docs for parameter changes

Examples

Worked before/after migrations — replacing a decommissioned chat model, routing every call through resolveModel, migrating a transcription model, and reading a clean scanner run — are in references/examples.md. Quick example: a call still using mixtral-8x7b-32768 swaps to llama-3.3-70b-versatile per the migration map, clearing the 400 model_decommissioned error.

Resources

For CI integration during upgrades, see the groq-ci-integration skill.

Repository
jeremylongshore/claude-code-plugins-plus-skills
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.