@jambonz/llm 0.5.2 → 0.5.3
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.
- package/dist/index.cjs +170 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +170 -2
- package/dist/index.js.map +1 -1
- package/dist/test-kit/index.cjs +165 -2
- package/dist/test-kit/index.cjs.map +1 -1
- package/dist/test-kit/index.js +165 -2
- package/dist/test-kit/index.js.map +1 -1
- package/package.json +1 -1
package/dist/test-kit/index.js
CHANGED
|
@@ -488,7 +488,7 @@ var OpenAIAdapter = class {
|
|
|
488
488
|
}
|
|
489
489
|
stream(req) {
|
|
490
490
|
return streamFromOpenAI(this.ensureClient(), req, {
|
|
491
|
-
knownModels:
|
|
491
|
+
knownModels: this.knownModels(),
|
|
492
492
|
vendorMetadataExtractor: OPENAI_METADATA_EXTRACTOR
|
|
493
493
|
});
|
|
494
494
|
}
|
|
@@ -499,7 +499,16 @@ var OpenAIAdapter = class {
|
|
|
499
499
|
return appendOpenAIToolResult(history, toolCallId, result);
|
|
500
500
|
}
|
|
501
501
|
async listAvailableModels() {
|
|
502
|
-
return listOpenAICompatibleModels(this.ensureClient(),
|
|
502
|
+
return listOpenAICompatibleModels(this.ensureClient(), this.knownModels());
|
|
503
|
+
}
|
|
504
|
+
/**
|
|
505
|
+
* Capability table used to enrich both `stream()` (for tools/vision gating)
|
|
506
|
+
* and `listAvailableModels()` (for filling capability flags on live entries).
|
|
507
|
+
* Subclasses backed by the same OpenAI wire (DeepSeek, Baseten, …) override
|
|
508
|
+
* this so their own manifest entries are consulted instead of OpenAI's.
|
|
509
|
+
*/
|
|
510
|
+
knownModels() {
|
|
511
|
+
return openAIManifest.knownModels;
|
|
503
512
|
}
|
|
504
513
|
async testCredential() {
|
|
505
514
|
await this.ensureClient().models.list();
|
|
@@ -610,12 +619,165 @@ var DeepSeekAdapter = class extends OpenAIAdapter {
|
|
|
610
619
|
client
|
|
611
620
|
);
|
|
612
621
|
}
|
|
622
|
+
knownModels() {
|
|
623
|
+
return deepseekManifest.knownModels;
|
|
624
|
+
}
|
|
613
625
|
};
|
|
614
626
|
var deepseekFactory = {
|
|
615
627
|
vendor: deepseekManifest.vendor,
|
|
616
628
|
manifest: deepseekManifest,
|
|
617
629
|
create: () => new DeepSeekAdapter()
|
|
618
630
|
};
|
|
631
|
+
var basetenManifest = {
|
|
632
|
+
vendor: "baseten",
|
|
633
|
+
displayName: "Baseten",
|
|
634
|
+
authKinds: [
|
|
635
|
+
{
|
|
636
|
+
kind: "apiKey",
|
|
637
|
+
displayName: "API Key",
|
|
638
|
+
fields: [
|
|
639
|
+
{
|
|
640
|
+
name: "apiKey",
|
|
641
|
+
label: "API Key",
|
|
642
|
+
type: "password",
|
|
643
|
+
required: true,
|
|
644
|
+
help: "Get an API key from https://app.baseten.co/settings/api_keys"
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
name: "baseURL",
|
|
648
|
+
label: "Base URL",
|
|
649
|
+
type: "url",
|
|
650
|
+
required: false,
|
|
651
|
+
default: "https://inference.baseten.co/v1",
|
|
652
|
+
help: "Defaults to Baseten Model APIs. Set to https://bridge.baseten.co/v1/direct to route to a dedicated deployment."
|
|
653
|
+
}
|
|
654
|
+
]
|
|
655
|
+
}
|
|
656
|
+
],
|
|
657
|
+
knownModels: [
|
|
658
|
+
{
|
|
659
|
+
id: "deepseek-ai/DeepSeek-V3.1",
|
|
660
|
+
displayName: "DeepSeek V3.1",
|
|
661
|
+
capabilities: {
|
|
662
|
+
streaming: true,
|
|
663
|
+
tools: true,
|
|
664
|
+
vision: false,
|
|
665
|
+
systemPrompt: true,
|
|
666
|
+
maxContextTokens: 163840
|
|
667
|
+
}
|
|
668
|
+
},
|
|
669
|
+
{
|
|
670
|
+
id: "deepseek-ai/DeepSeek-V4-Pro",
|
|
671
|
+
displayName: "DeepSeek V4 Pro",
|
|
672
|
+
capabilities: {
|
|
673
|
+
streaming: true,
|
|
674
|
+
tools: true,
|
|
675
|
+
vision: false,
|
|
676
|
+
systemPrompt: true,
|
|
677
|
+
maxContextTokens: 131072
|
|
678
|
+
}
|
|
679
|
+
},
|
|
680
|
+
{
|
|
681
|
+
id: "zai-org/GLM-4.7",
|
|
682
|
+
displayName: "GLM 4.7",
|
|
683
|
+
capabilities: {
|
|
684
|
+
streaming: true,
|
|
685
|
+
tools: true,
|
|
686
|
+
vision: false,
|
|
687
|
+
systemPrompt: true,
|
|
688
|
+
maxContextTokens: 2e5
|
|
689
|
+
}
|
|
690
|
+
},
|
|
691
|
+
{
|
|
692
|
+
id: "zai-org/GLM-5",
|
|
693
|
+
displayName: "GLM 5",
|
|
694
|
+
capabilities: {
|
|
695
|
+
streaming: true,
|
|
696
|
+
tools: true,
|
|
697
|
+
vision: false,
|
|
698
|
+
systemPrompt: true,
|
|
699
|
+
maxContextTokens: 202800
|
|
700
|
+
}
|
|
701
|
+
},
|
|
702
|
+
{
|
|
703
|
+
id: "moonshotai/Kimi-K2.5",
|
|
704
|
+
displayName: "Kimi K2.5",
|
|
705
|
+
capabilities: {
|
|
706
|
+
streaming: true,
|
|
707
|
+
tools: true,
|
|
708
|
+
vision: true,
|
|
709
|
+
systemPrompt: true,
|
|
710
|
+
maxContextTokens: 262e3
|
|
711
|
+
}
|
|
712
|
+
},
|
|
713
|
+
{
|
|
714
|
+
id: "moonshotai/Kimi-K2.6",
|
|
715
|
+
displayName: "Kimi K2.6",
|
|
716
|
+
capabilities: {
|
|
717
|
+
streaming: true,
|
|
718
|
+
tools: true,
|
|
719
|
+
vision: true,
|
|
720
|
+
systemPrompt: true,
|
|
721
|
+
maxContextTokens: 262e3
|
|
722
|
+
}
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
id: "MiniMaxAI/MiniMax-M2.5",
|
|
726
|
+
displayName: "MiniMax M2.5",
|
|
727
|
+
capabilities: {
|
|
728
|
+
streaming: true,
|
|
729
|
+
tools: true,
|
|
730
|
+
vision: false,
|
|
731
|
+
systemPrompt: true,
|
|
732
|
+
maxContextTokens: 204e3
|
|
733
|
+
}
|
|
734
|
+
},
|
|
735
|
+
{
|
|
736
|
+
id: "nvidia/Nemotron-120B-A12B",
|
|
737
|
+
displayName: "Nemotron Super",
|
|
738
|
+
capabilities: {
|
|
739
|
+
streaming: true,
|
|
740
|
+
tools: true,
|
|
741
|
+
vision: false,
|
|
742
|
+
systemPrompt: true,
|
|
743
|
+
maxContextTokens: 202800
|
|
744
|
+
}
|
|
745
|
+
},
|
|
746
|
+
{
|
|
747
|
+
id: "openai/gpt-oss-120b",
|
|
748
|
+
displayName: "OpenAI GPT 120B",
|
|
749
|
+
capabilities: {
|
|
750
|
+
streaming: true,
|
|
751
|
+
tools: true,
|
|
752
|
+
vision: false,
|
|
753
|
+
systemPrompt: true,
|
|
754
|
+
maxContextTokens: 128072
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
],
|
|
758
|
+
supportsModelListing: true,
|
|
759
|
+
docsUrl: "https://docs.baseten.co/inference/model-apis/overview"
|
|
760
|
+
};
|
|
761
|
+
var BasetenAdapter = class extends OpenAIAdapter {
|
|
762
|
+
vendor = basetenManifest.vendor;
|
|
763
|
+
init(auth, client) {
|
|
764
|
+
super.init(
|
|
765
|
+
{
|
|
766
|
+
...auth,
|
|
767
|
+
baseURL: auth.baseURL ?? "https://inference.baseten.co/v1"
|
|
768
|
+
},
|
|
769
|
+
client
|
|
770
|
+
);
|
|
771
|
+
}
|
|
772
|
+
knownModels() {
|
|
773
|
+
return basetenManifest.knownModels;
|
|
774
|
+
}
|
|
775
|
+
};
|
|
776
|
+
var basetenFactory = {
|
|
777
|
+
vendor: basetenManifest.vendor,
|
|
778
|
+
manifest: basetenManifest,
|
|
779
|
+
create: () => new BasetenAdapter()
|
|
780
|
+
};
|
|
619
781
|
|
|
620
782
|
// src/adapters/anthropic/adapter.ts
|
|
621
783
|
import Anthropic from "@anthropic-ai/sdk";
|
|
@@ -2794,6 +2956,7 @@ var huggingfaceFactory = {
|
|
|
2794
2956
|
// src/adapters/index.ts
|
|
2795
2957
|
registerAdapter(openAIFactory);
|
|
2796
2958
|
registerAdapter(deepseekFactory);
|
|
2959
|
+
registerAdapter(basetenFactory);
|
|
2797
2960
|
registerAdapter(anthropicFactory);
|
|
2798
2961
|
registerAdapter(googleFactory);
|
|
2799
2962
|
registerAdapter(vertexGeminiFactory);
|