@jambonz/llm 0.4.3 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2450,6 +2450,95 @@ var azureOpenAIFactory = {
2450
2450
  create: () => new AzureOpenAIAdapter()
2451
2451
  };
2452
2452
 
2453
+ // src/adapters/groq/manifest.ts
2454
+ var GROQ_KNOWN_MODELS = [
2455
+ {
2456
+ id: "llama-3.3-70b-versatile",
2457
+ displayName: "Llama 3.3 70B Versatile (Groq)",
2458
+ capabilities: {
2459
+ streaming: true,
2460
+ tools: true,
2461
+ vision: false,
2462
+ systemPrompt: true,
2463
+ maxContextTokens: 128e3
2464
+ }
2465
+ },
2466
+ {
2467
+ id: "llama-3.1-8b-instant",
2468
+ displayName: "Llama 3.1 8B Instant (Groq)",
2469
+ capabilities: {
2470
+ streaming: true,
2471
+ tools: true,
2472
+ vision: false,
2473
+ systemPrompt: true,
2474
+ maxContextTokens: 128e3
2475
+ }
2476
+ },
2477
+ {
2478
+ id: "gemma2-9b-it",
2479
+ displayName: "Gemma 2 9B (Groq)",
2480
+ capabilities: {
2481
+ streaming: true,
2482
+ tools: true,
2483
+ vision: false,
2484
+ systemPrompt: true,
2485
+ maxContextTokens: 8192
2486
+ }
2487
+ }
2488
+ ];
2489
+ var groqManifest = {
2490
+ vendor: "groq",
2491
+ displayName: "Groq",
2492
+ authKinds: [
2493
+ {
2494
+ kind: "apiKey",
2495
+ displayName: "API Key",
2496
+ fields: [
2497
+ {
2498
+ name: "apiKey",
2499
+ label: "API Key",
2500
+ type: "password",
2501
+ required: true,
2502
+ help: "Get an API key from https://console.groq.com/keys (sign in first if needed)"
2503
+ },
2504
+ {
2505
+ name: "baseURL",
2506
+ label: "Base URL",
2507
+ type: "url",
2508
+ required: false,
2509
+ default: "https://api.groq.com/openai/v1",
2510
+ help: "Override only for proxies. Default points at Groq's production endpoint."
2511
+ }
2512
+ ]
2513
+ }
2514
+ ],
2515
+ knownModels: GROQ_KNOWN_MODELS,
2516
+ // Groq exposes /openai/v1/models with the same auth as chat completions.
2517
+ supportsModelListing: true,
2518
+ docsUrl: "https://console.groq.com/docs/api-reference"
2519
+ };
2520
+
2521
+ // src/adapters/groq/adapter.ts
2522
+ var GroqAdapter = class extends OpenAIAdapter {
2523
+ vendor = groqManifest.vendor;
2524
+ init(auth, client) {
2525
+ super.init(
2526
+ {
2527
+ ...auth,
2528
+ baseURL: auth.baseURL ?? "https://api.groq.com/openai/v1"
2529
+ },
2530
+ client
2531
+ );
2532
+ }
2533
+ };
2534
+
2535
+ // src/adapters/groq/factory.ts
2536
+ var groqFactory = {
2537
+ vendor: groqManifest.vendor,
2538
+ manifest: groqManifest,
2539
+ create: () => new GroqAdapter()
2540
+ };
2541
+
2453
2542
  // src/adapters/index.ts
2454
2543
  registerAdapter(openAIFactory);
2455
2544
  registerAdapter(deepseekFactory);
@@ -2459,6 +2548,7 @@ registerAdapter(vertexGeminiFactory);
2459
2548
  registerAdapter(vertexOpenAIFactory);
2460
2549
  registerAdapter(bedrockFactory);
2461
2550
  registerAdapter(azureOpenAIFactory);
2551
+ registerAdapter(groqFactory);
2462
2552
 
2463
2553
  // src/index.ts
2464
2554
  async function createLlm(args) {