@lobehub/chat 1.118.3 → 1.118.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.
- package/.github/workflows/test.yml +36 -1
- package/CHANGELOG.md +59 -0
- package/changelog/v1.json +18 -0
- package/package.json +2 -1
- package/packages/const/package.json +4 -1
- package/packages/const/src/image.ts +1 -1
- package/packages/database/src/repositories/aiInfra/index.ts +7 -2
- package/packages/model-bank/package.json +75 -0
- package/{src/config → packages/model-bank/src}/aiModels/bfl.ts +1 -1
- package/{src/config → packages/model-bank/src}/aiModels/fal.ts +1 -1
- package/{src/config → packages/model-bank/src}/aiModels/google.ts +1 -1
- package/{src/config → packages/model-bank/src}/aiModels/index.ts +2 -2
- package/{src/config → packages/model-bank/src}/aiModels/openai.ts +1 -1
- package/packages/model-bank/src/exports.test.ts +37 -0
- package/packages/model-bank/src/index.ts +2 -0
- package/{src/libs → packages/model-bank/src}/standard-parameters/index.ts +1 -1
- package/packages/model-bank/vitest.config.mts +11 -0
- package/packages/model-runtime/package.json +1 -0
- package/packages/model-runtime/src/ai360/index.ts +1 -1
- package/packages/model-runtime/src/aihubmix/index.ts +1 -1
- package/packages/model-runtime/src/anthropic/index.ts +6 -6
- package/packages/model-runtime/src/baichuan/index.ts +1 -1
- package/packages/model-runtime/src/bfl/createImage.ts +1 -2
- package/packages/model-runtime/src/cloudflare/index.ts +1 -1
- package/packages/model-runtime/src/cohere/index.ts +1 -1
- package/packages/model-runtime/src/deepseek/index.ts +1 -1
- package/packages/model-runtime/src/fal/index.ts +1 -2
- package/packages/model-runtime/src/fireworksai/index.ts +1 -1
- package/packages/model-runtime/src/groq/index.ts +1 -1
- package/packages/model-runtime/src/higress/index.ts +1 -1
- package/packages/model-runtime/src/huggingface/index.ts +1 -1
- package/packages/model-runtime/src/hunyuan/index.ts +1 -1
- package/packages/model-runtime/src/infiniai/index.ts +1 -1
- package/packages/model-runtime/src/internlm/index.ts +1 -1
- package/packages/model-runtime/src/jina/index.ts +1 -1
- package/packages/model-runtime/src/lmstudio/index.ts +1 -1
- package/packages/model-runtime/src/minimax/index.ts +1 -1
- package/packages/model-runtime/src/mistral/index.ts +1 -1
- package/packages/model-runtime/src/novita/__snapshots__/index.test.ts.snap +309 -21
- package/packages/model-runtime/src/novita/index.ts +31 -1
- package/packages/model-runtime/src/ollama/index.ts +1 -1
- package/packages/model-runtime/src/openai/__snapshots__/index.test.ts.snap +28 -0
- package/packages/model-runtime/src/openai/index.test.ts +0 -3
- package/packages/model-runtime/src/openrouter/__snapshots__/index.test.ts.snap +46 -0
- package/packages/model-runtime/src/openrouter/index.test.ts +21 -45
- package/packages/model-runtime/src/openrouter/index.ts +22 -25
- package/packages/model-runtime/src/openrouter/type.ts +12 -24
- package/packages/model-runtime/src/ppio/index.ts +1 -1
- package/packages/model-runtime/src/search1api/index.ts +1 -1
- package/packages/model-runtime/src/sensenova/index.ts +1 -1
- package/packages/model-runtime/src/stepfun/index.ts +1 -1
- package/packages/model-runtime/src/tencentcloud/index.ts +1 -1
- package/packages/model-runtime/src/togetherai/index.ts +1 -1
- package/packages/model-runtime/src/types/image.ts +1 -1
- package/packages/model-runtime/src/utils/modelParse.test.ts +5 -5
- package/packages/model-runtime/src/utils/modelParse.ts +47 -22
- package/packages/model-runtime/src/utils/openaiCompatibleFactory/createImage.ts +1 -2
- package/packages/model-runtime/src/utils/openaiCompatibleFactory/index.ts +1 -1
- package/packages/model-runtime/src/vllm/index.ts +1 -1
- package/packages/model-runtime/src/xinference/index.ts +1 -1
- package/packages/types/src/aiModel.ts +1 -2
- package/packages/types/src/llm.ts +1 -1
- package/packages/utils/src/getFallbackModelProperty.test.ts +1 -1
- package/packages/utils/src/getFallbackModelProperty.ts +1 -1
- package/packages/utils/src/parseModels.test.ts +1 -2
- package/packages/utils/src/parseModels.ts +1 -1
- package/src/app/[variants]/(main)/chat/_layout/Desktop/SessionPanel.tsx +4 -2
- package/src/app/[variants]/(main)/image/features/GenerationFeed/BatchItem.tsx +1 -1
- package/src/app/[variants]/(main)/profile/features/ClerkProfile.tsx +1 -1
- package/src/app/[variants]/(main)/settings/_layout/Desktop/index.tsx +1 -5
- package/src/locales/default/models.ts +1 -1
- package/src/server/globalConfig/genServerAiProviderConfig.test.ts +3 -3
- package/src/server/globalConfig/genServerAiProviderConfig.ts +1 -1
- package/src/server/routers/async/image.ts +1 -1
- package/src/server/services/discover/index.test.ts +1 -1
- package/src/server/services/discover/index.ts +16 -8
- package/src/store/aiInfra/slices/aiProvider/action.ts +1 -1
- package/src/store/image/slices/generationConfig/action.test.ts +2 -6
- package/src/store/image/slices/generationConfig/action.ts +3 -3
- package/src/store/image/slices/generationConfig/hooks.test.ts +2 -2
- package/src/store/image/slices/generationConfig/hooks.ts +1 -1
- package/src/store/image/slices/generationConfig/initialState.ts +2 -3
- package/src/store/image/slices/generationConfig/selectors.test.ts +1 -2
- package/src/store/image/slices/generationConfig/selectors.ts +1 -1
- /package/{src/config → packages/model-bank/src}/aiModels/ai21.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/ai302.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/ai360.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/aihubmix.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/akashchat.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/anthropic.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/azure.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/azureai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/baichuan.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/bedrock.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/cloudflare.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/cohere.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/deepseek.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/fireworksai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/giteeai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/github.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/groq.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/higress.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/huggingface.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/hunyuan.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/infiniai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/internlm.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/jina.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/lmstudio.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/lobehub.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/minimax.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/mistral.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/modelscope.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/moonshot.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/novita.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/nvidia.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/ollama.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/openrouter.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/perplexity.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/ppio.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/qiniu.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/qwen.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/sambanova.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/search1api.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/sensenova.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/siliconcloud.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/spark.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/stepfun.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/taichu.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/tencentcloud.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/togetherai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/upstage.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/v0.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/vertexai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/vllm.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/volcengine.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/wenxin.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/xai.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/xinference.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/zeroone.ts +0 -0
- /package/{src/config → packages/model-bank/src}/aiModels/zhipu.ts +0 -0
- /package/{src/libs → packages/model-bank/src}/standard-parameters/index.test.ts +0 -0
@@ -5,11 +5,27 @@ exports[`NovitaAI > models > should get models 1`] = `
|
|
5
5
|
{
|
6
6
|
"contextWindowTokens": 8192,
|
7
7
|
"description": "Meta's latest class of model (Llama 3) launched with a variety of sizes & flavors. This 8B instruct-tuned version was optimized for high quality dialogue usecases. It has demonstrated strong performance compared to leading closed-source models in human evaluations.",
|
8
|
-
"displayName": "
|
8
|
+
"displayName": "meta-llama/llama-3-8b-instruct",
|
9
9
|
"enabled": false,
|
10
10
|
"functionCall": false,
|
11
11
|
"id": "meta-llama/llama-3-8b-instruct",
|
12
12
|
"maxOutput": undefined,
|
13
|
+
"pricing": {
|
14
|
+
"units": [
|
15
|
+
{
|
16
|
+
"name": "textInput",
|
17
|
+
"rate": 0.063,
|
18
|
+
"strategy": "fixed",
|
19
|
+
"unit": "millionTokens",
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"name": "textOutput",
|
23
|
+
"rate": 0.063,
|
24
|
+
"strategy": "fixed",
|
25
|
+
"unit": "millionTokens",
|
26
|
+
},
|
27
|
+
],
|
28
|
+
},
|
13
29
|
"reasoning": false,
|
14
30
|
"releasedAt": "2024-04-25",
|
15
31
|
"type": "chat",
|
@@ -18,50 +34,114 @@ exports[`NovitaAI > models > should get models 1`] = `
|
|
18
34
|
{
|
19
35
|
"contextWindowTokens": 8192,
|
20
36
|
"description": "Meta's latest class of model (Llama 3) launched with a variety of sizes & flavors. This 70B instruct-tuned version was optimized for high quality dialogue usecases. It has demonstrated strong performance compared to leading closed-source models in human evaluations.",
|
21
|
-
"displayName": "
|
37
|
+
"displayName": "meta-llama/llama-3-70b-instruct",
|
22
38
|
"enabled": false,
|
23
39
|
"functionCall": false,
|
24
40
|
"id": "meta-llama/llama-3-70b-instruct",
|
25
41
|
"maxOutput": undefined,
|
42
|
+
"pricing": {
|
43
|
+
"units": [
|
44
|
+
{
|
45
|
+
"name": "textInput",
|
46
|
+
"rate": 0.55,
|
47
|
+
"strategy": "fixed",
|
48
|
+
"unit": "millionTokens",
|
49
|
+
},
|
50
|
+
{
|
51
|
+
"name": "textOutput",
|
52
|
+
"rate": 0.76,
|
53
|
+
"strategy": "fixed",
|
54
|
+
"unit": "millionTokens",
|
55
|
+
},
|
56
|
+
],
|
57
|
+
},
|
26
58
|
"reasoning": false,
|
27
59
|
"releasedAt": "2024-04-25",
|
28
60
|
"type": "chat",
|
29
61
|
"vision": false,
|
30
62
|
},
|
31
63
|
{
|
32
|
-
"contextWindowTokens":
|
64
|
+
"contextWindowTokens": 8192,
|
33
65
|
"description": "Meta's latest class of models, Llama 3.1, launched with a variety of sizes and configurations. The 8B instruct-tuned version is particularly fast and efficient. It has demonstrated strong performance in human evaluations, outperforming several leading closed-source models.",
|
34
|
-
"displayName": "
|
66
|
+
"displayName": "meta-llama/llama-3.1-8b-instruct",
|
35
67
|
"enabled": false,
|
36
68
|
"functionCall": false,
|
37
69
|
"id": "meta-llama/llama-3.1-8b-instruct",
|
38
70
|
"maxOutput": undefined,
|
71
|
+
"pricing": {
|
72
|
+
"units": [
|
73
|
+
{
|
74
|
+
"name": "textInput",
|
75
|
+
"rate": 0.1,
|
76
|
+
"strategy": "fixed",
|
77
|
+
"unit": "millionTokens",
|
78
|
+
},
|
79
|
+
{
|
80
|
+
"name": "textOutput",
|
81
|
+
"rate": 0.1,
|
82
|
+
"strategy": "fixed",
|
83
|
+
"unit": "millionTokens",
|
84
|
+
},
|
85
|
+
],
|
86
|
+
},
|
39
87
|
"reasoning": false,
|
40
88
|
"releasedAt": "2024-07-24",
|
41
89
|
"type": "chat",
|
42
90
|
"vision": false,
|
43
91
|
},
|
44
92
|
{
|
45
|
-
"contextWindowTokens":
|
93
|
+
"contextWindowTokens": 8192,
|
46
94
|
"description": "Meta's latest class of models, Llama 3.1, has launched with a variety of sizes and configurations. The 70B instruct-tuned version is optimized for high-quality dialogue use cases. It has demonstrated strong performance in human evaluations compared to leading closed-source models.",
|
47
95
|
"displayName": "meta-llama/llama-3.1-70b-instruct",
|
48
96
|
"enabled": false,
|
49
97
|
"functionCall": false,
|
50
98
|
"id": "meta-llama/llama-3.1-70b-instruct",
|
51
99
|
"maxOutput": undefined,
|
100
|
+
"pricing": {
|
101
|
+
"units": [
|
102
|
+
{
|
103
|
+
"name": "textInput",
|
104
|
+
"rate": 0.55,
|
105
|
+
"strategy": "fixed",
|
106
|
+
"unit": "millionTokens",
|
107
|
+
},
|
108
|
+
{
|
109
|
+
"name": "textOutput",
|
110
|
+
"rate": 0.76,
|
111
|
+
"strategy": "fixed",
|
112
|
+
"unit": "millionTokens",
|
113
|
+
},
|
114
|
+
],
|
115
|
+
},
|
52
116
|
"reasoning": false,
|
53
117
|
"releasedAt": "2024-07-24",
|
54
118
|
"type": "chat",
|
55
119
|
"vision": false,
|
56
120
|
},
|
57
121
|
{
|
58
|
-
"contextWindowTokens":
|
122
|
+
"contextWindowTokens": 32768,
|
59
123
|
"description": "Meta's latest class of models, Llama 3.1, launched with a variety of sizes and configurations. This 405B instruct-tuned version is optimized for high-quality dialogue use cases. It has demonstrated strong performance compared to leading closed-source models, including GPT-4o and Claude 3.5 Sonnet, in evaluations.",
|
60
124
|
"displayName": "meta-llama/llama-3.1-405b-instruct",
|
61
125
|
"enabled": false,
|
62
126
|
"functionCall": false,
|
63
127
|
"id": "meta-llama/llama-3.1-405b-instruct",
|
64
128
|
"maxOutput": undefined,
|
129
|
+
"pricing": {
|
130
|
+
"units": [
|
131
|
+
{
|
132
|
+
"name": "textInput",
|
133
|
+
"rate": 3,
|
134
|
+
"strategy": "fixed",
|
135
|
+
"unit": "millionTokens",
|
136
|
+
},
|
137
|
+
{
|
138
|
+
"name": "textOutput",
|
139
|
+
"rate": 5,
|
140
|
+
"strategy": "fixed",
|
141
|
+
"unit": "millionTokens",
|
142
|
+
},
|
143
|
+
],
|
144
|
+
},
|
65
145
|
"reasoning": false,
|
66
146
|
"releasedAt": "2024-07-24",
|
67
147
|
"type": "chat",
|
@@ -71,24 +151,56 @@ exports[`NovitaAI > models > should get models 1`] = `
|
|
71
151
|
"contextWindowTokens": 8192,
|
72
152
|
"description": "Gemma 2 9B by Google is an advanced, open-source language model that sets a new standard for efficiency and performance in its size class.
|
73
153
|
Designed for a wide variety of tasks, it empowers developers and researchers to build innovative applications, while maintaining accessibility, safety, and cost-effectiveness.",
|
74
|
-
"displayName": "
|
154
|
+
"displayName": "google/gemma-2-9b-it",
|
75
155
|
"enabled": false,
|
76
156
|
"functionCall": false,
|
77
157
|
"id": "google/gemma-2-9b-it",
|
78
158
|
"maxOutput": undefined,
|
159
|
+
"pricing": {
|
160
|
+
"units": [
|
161
|
+
{
|
162
|
+
"name": "textInput",
|
163
|
+
"rate": 0.08,
|
164
|
+
"strategy": "fixed",
|
165
|
+
"unit": "millionTokens",
|
166
|
+
},
|
167
|
+
{
|
168
|
+
"name": "textOutput",
|
169
|
+
"rate": 0.08,
|
170
|
+
"strategy": "fixed",
|
171
|
+
"unit": "millionTokens",
|
172
|
+
},
|
173
|
+
],
|
174
|
+
},
|
79
175
|
"reasoning": false,
|
80
176
|
"releasedAt": "2024-07-18",
|
81
177
|
"type": "chat",
|
82
178
|
"vision": false,
|
83
179
|
},
|
84
180
|
{
|
85
|
-
"contextWindowTokens":
|
181
|
+
"contextWindowTokens": 4096,
|
86
182
|
"description": "This is a fine-tuned Llama-2 model designed to support longer and more detailed writing prompts, as well as next-chapter generation. It also includes an experimental role-playing instruction set with multi-round dialogues, character interactions, and varying numbers of participants",
|
87
183
|
"displayName": "jondurbin/airoboros-l2-70b",
|
88
184
|
"enabled": false,
|
89
185
|
"functionCall": false,
|
90
186
|
"id": "jondurbin/airoboros-l2-70b",
|
91
187
|
"maxOutput": undefined,
|
188
|
+
"pricing": {
|
189
|
+
"units": [
|
190
|
+
{
|
191
|
+
"name": "textInput",
|
192
|
+
"rate": 0.5,
|
193
|
+
"strategy": "fixed",
|
194
|
+
"unit": "millionTokens",
|
195
|
+
},
|
196
|
+
{
|
197
|
+
"name": "textOutput",
|
198
|
+
"rate": 0.5,
|
199
|
+
"strategy": "fixed",
|
200
|
+
"unit": "millionTokens",
|
201
|
+
},
|
202
|
+
],
|
203
|
+
},
|
92
204
|
"reasoning": false,
|
93
205
|
"releasedAt": "2024-07-17",
|
94
206
|
"type": "chat",
|
@@ -97,11 +209,27 @@ Designed for a wide variety of tasks, it empowers developers and researchers to
|
|
97
209
|
{
|
98
210
|
"contextWindowTokens": 8192,
|
99
211
|
"description": "Hermes 2 Pro is an upgraded, retrained version of Nous Hermes 2, consisting of an updated and cleaned version of the OpenHermes 2.5 Dataset, as well as a newly introduced Function Calling and JSON Mode dataset developed in-house.",
|
100
|
-
"displayName": "
|
212
|
+
"displayName": "nousresearch/hermes-2-pro-llama-3-8b",
|
101
213
|
"enabled": false,
|
102
214
|
"functionCall": false,
|
103
215
|
"id": "nousresearch/hermes-2-pro-llama-3-8b",
|
104
216
|
"maxOutput": undefined,
|
217
|
+
"pricing": {
|
218
|
+
"units": [
|
219
|
+
{
|
220
|
+
"name": "textInput",
|
221
|
+
"rate": 0.14,
|
222
|
+
"strategy": "fixed",
|
223
|
+
"unit": "millionTokens",
|
224
|
+
},
|
225
|
+
{
|
226
|
+
"name": "textOutput",
|
227
|
+
"rate": 0.14,
|
228
|
+
"strategy": "fixed",
|
229
|
+
"unit": "millionTokens",
|
230
|
+
},
|
231
|
+
],
|
232
|
+
},
|
105
233
|
"reasoning": false,
|
106
234
|
"releasedAt": "2024-06-27",
|
107
235
|
"type": "chat",
|
@@ -110,11 +238,27 @@ Designed for a wide variety of tasks, it empowers developers and researchers to
|
|
110
238
|
{
|
111
239
|
"contextWindowTokens": 32768,
|
112
240
|
"description": "A high-performing, industry-standard 7.3B parameter model, with optimizations for speed and context length.",
|
113
|
-
"displayName": "
|
241
|
+
"displayName": "mistralai/mistral-7b-instruct",
|
114
242
|
"enabled": false,
|
115
243
|
"functionCall": false,
|
116
244
|
"id": "mistralai/mistral-7b-instruct",
|
117
245
|
"maxOutput": undefined,
|
246
|
+
"pricing": {
|
247
|
+
"units": [
|
248
|
+
{
|
249
|
+
"name": "textInput",
|
250
|
+
"rate": 0.065,
|
251
|
+
"strategy": "fixed",
|
252
|
+
"unit": "millionTokens",
|
253
|
+
},
|
254
|
+
{
|
255
|
+
"name": "textOutput",
|
256
|
+
"rate": 0.065,
|
257
|
+
"strategy": "fixed",
|
258
|
+
"unit": "millionTokens",
|
259
|
+
},
|
260
|
+
],
|
261
|
+
},
|
118
262
|
"reasoning": false,
|
119
263
|
"releasedAt": "2024-06-27",
|
120
264
|
"type": "chat",
|
@@ -123,25 +267,57 @@ Designed for a wide variety of tasks, it empowers developers and researchers to
|
|
123
267
|
{
|
124
268
|
"contextWindowTokens": 16000,
|
125
269
|
"description": "Dolphin 2.9 is designed for instruction following, conversational, and coding. This model is a finetune of Mixtral 8x22B Instruct. It features a 64k context length and was fine-tuned with a 16k sequence length using ChatML templates.The model is uncensored and is stripped of alignment and bias. It requires an external alignment layer for ethical use.",
|
126
|
-
"displayName": "
|
270
|
+
"displayName": "cognitivecomputations/dolphin-mixtral-8x22b",
|
127
271
|
"enabled": false,
|
128
272
|
"functionCall": false,
|
129
273
|
"id": "cognitivecomputations/dolphin-mixtral-8x22b",
|
130
274
|
"maxOutput": undefined,
|
275
|
+
"pricing": {
|
276
|
+
"units": [
|
277
|
+
{
|
278
|
+
"name": "textInput",
|
279
|
+
"rate": 0.9,
|
280
|
+
"strategy": "fixed",
|
281
|
+
"unit": "millionTokens",
|
282
|
+
},
|
283
|
+
{
|
284
|
+
"name": "textOutput",
|
285
|
+
"rate": 0.9,
|
286
|
+
"strategy": "fixed",
|
287
|
+
"unit": "millionTokens",
|
288
|
+
},
|
289
|
+
],
|
290
|
+
},
|
131
291
|
"reasoning": false,
|
132
292
|
"releasedAt": "2024-06-27",
|
133
293
|
"type": "chat",
|
134
294
|
"vision": false,
|
135
295
|
},
|
136
296
|
{
|
137
|
-
"contextWindowTokens":
|
297
|
+
"contextWindowTokens": 16000,
|
138
298
|
"description": "The uncensored llama3 model is a powerhouse of creativity, excelling in both roleplay and story writing. It offers a liberating experience during roleplays, free from any restrictions. This model stands out for its immense creativity, boasting a vast array of unique ideas and plots, truly a treasure trove for those seeking originality. Its unrestricted nature during roleplays allows for the full breadth of imagination to unfold, akin to an enhanced, big-brained version of Stheno. Perfect for creative minds seeking a boundless platform for their imaginative expressions, the uncensored llama3 model is an ideal choice",
|
139
|
-
"displayName": "
|
299
|
+
"displayName": "sao10k/l3-70b-euryale-v2.1",
|
140
300
|
"enabled": false,
|
141
301
|
"functionCall": false,
|
142
302
|
"id": "sao10k/l3-70b-euryale-v2.1",
|
143
303
|
"maxOutput": undefined,
|
144
|
-
"
|
304
|
+
"pricing": {
|
305
|
+
"units": [
|
306
|
+
{
|
307
|
+
"name": "textInput",
|
308
|
+
"rate": 1.48,
|
309
|
+
"strategy": "fixed",
|
310
|
+
"unit": "millionTokens",
|
311
|
+
},
|
312
|
+
{
|
313
|
+
"name": "textOutput",
|
314
|
+
"rate": 1.48,
|
315
|
+
"strategy": "fixed",
|
316
|
+
"unit": "millionTokens",
|
317
|
+
},
|
318
|
+
],
|
319
|
+
},
|
320
|
+
"reasoning": false,
|
145
321
|
"releasedAt": "2024-06-18",
|
146
322
|
"type": "chat",
|
147
323
|
"vision": false,
|
@@ -149,11 +325,27 @@ Designed for a wide variety of tasks, it empowers developers and researchers to
|
|
149
325
|
{
|
150
326
|
"contextWindowTokens": 4096,
|
151
327
|
"description": "A merge with a complex family tree, this model was crafted for roleplaying and storytelling. Midnight Rose is a successor to Rogue Rose and Aurora Nights and improves upon them both. It wants to produce lengthy output by default and is the best creative writing merge produced so far by sophosympatheia.",
|
152
|
-
"displayName": "
|
328
|
+
"displayName": "sophosympatheia/midnight-rose-70b",
|
153
329
|
"enabled": false,
|
154
330
|
"functionCall": false,
|
155
331
|
"id": "sophosympatheia/midnight-rose-70b",
|
156
332
|
"maxOutput": undefined,
|
333
|
+
"pricing": {
|
334
|
+
"units": [
|
335
|
+
{
|
336
|
+
"name": "textInput",
|
337
|
+
"rate": 0.8,
|
338
|
+
"strategy": "fixed",
|
339
|
+
"unit": "millionTokens",
|
340
|
+
},
|
341
|
+
{
|
342
|
+
"name": "textOutput",
|
343
|
+
"rate": 0.8,
|
344
|
+
"strategy": "fixed",
|
345
|
+
"unit": "millionTokens",
|
346
|
+
},
|
347
|
+
],
|
348
|
+
},
|
157
349
|
"reasoning": false,
|
158
350
|
"releasedAt": "2024-06-17",
|
159
351
|
"type": "chat",
|
@@ -162,63 +354,143 @@ Designed for a wide variety of tasks, it empowers developers and researchers to
|
|
162
354
|
{
|
163
355
|
"contextWindowTokens": 4096,
|
164
356
|
"description": "The idea behind this merge is that each layer is composed of several tensors, which are in turn responsible for specific functions. Using MythoLogic-L2's robust understanding as its input and Huginn's extensive writing capability as its output seems to have resulted in a model that exceeds at both, confirming my theory. (More details to be released at a later time).",
|
165
|
-
"displayName": "
|
357
|
+
"displayName": "gryphe/mythomax-l2-13b",
|
166
358
|
"enabled": false,
|
167
359
|
"functionCall": false,
|
168
360
|
"id": "gryphe/mythomax-l2-13b",
|
169
361
|
"maxOutput": undefined,
|
362
|
+
"pricing": {
|
363
|
+
"units": [
|
364
|
+
{
|
365
|
+
"name": "textInput",
|
366
|
+
"rate": 0.119,
|
367
|
+
"strategy": "fixed",
|
368
|
+
"unit": "millionTokens",
|
369
|
+
},
|
370
|
+
{
|
371
|
+
"name": "textOutput",
|
372
|
+
"rate": 0.119,
|
373
|
+
"strategy": "fixed",
|
374
|
+
"unit": "millionTokens",
|
375
|
+
},
|
376
|
+
],
|
377
|
+
},
|
170
378
|
"reasoning": false,
|
171
379
|
"releasedAt": "2024-04-25",
|
172
380
|
"type": "chat",
|
173
381
|
"vision": false,
|
174
382
|
},
|
175
383
|
{
|
176
|
-
"contextWindowTokens":
|
384
|
+
"contextWindowTokens": 4096,
|
177
385
|
"description": "Nous-Hermes-Llama2-13b is a state-of-the-art language model fine-tuned on over 300,000 instructions. This model was fine-tuned by Nous Research, with Teknium and Emozilla leading the fine tuning process and dataset curation, Redmond AI sponsoring the compute, and several other contributors.",
|
178
386
|
"displayName": "nousresearch/nous-hermes-llama2-13b",
|
179
387
|
"enabled": false,
|
180
388
|
"functionCall": false,
|
181
389
|
"id": "nousresearch/nous-hermes-llama2-13b",
|
182
390
|
"maxOutput": undefined,
|
391
|
+
"pricing": {
|
392
|
+
"units": [
|
393
|
+
{
|
394
|
+
"name": "textInput",
|
395
|
+
"rate": 0.17,
|
396
|
+
"strategy": "fixed",
|
397
|
+
"unit": "millionTokens",
|
398
|
+
},
|
399
|
+
{
|
400
|
+
"name": "textOutput",
|
401
|
+
"rate": 0.17,
|
402
|
+
"strategy": "fixed",
|
403
|
+
"unit": "millionTokens",
|
404
|
+
},
|
405
|
+
],
|
406
|
+
},
|
183
407
|
"reasoning": false,
|
184
408
|
"releasedAt": "2024-04-25",
|
185
409
|
"type": "chat",
|
186
410
|
"vision": false,
|
187
411
|
},
|
188
412
|
{
|
189
|
-
"contextWindowTokens":
|
413
|
+
"contextWindowTokens": 32768,
|
190
414
|
"description": "Nous Hermes 2 Mixtral 8x7B DPO is the new flagship Nous Research model trained over the Mixtral 8x7B MoE LLM. The model was trained on over 1,000,000 entries of primarily GPT-4 generated data, as well as other high quality data from open datasets across the AI landscape, achieving state of the art performance on a variety of tasks.",
|
191
415
|
"displayName": "Nous-Hermes-2-Mixtral-8x7B-DPO",
|
192
416
|
"enabled": false,
|
193
417
|
"functionCall": false,
|
194
418
|
"id": "Nous-Hermes-2-Mixtral-8x7B-DPO",
|
195
419
|
"maxOutput": undefined,
|
420
|
+
"pricing": {
|
421
|
+
"units": [
|
422
|
+
{
|
423
|
+
"name": "textInput",
|
424
|
+
"rate": 0.27,
|
425
|
+
"strategy": "fixed",
|
426
|
+
"unit": "millionTokens",
|
427
|
+
},
|
428
|
+
{
|
429
|
+
"name": "textOutput",
|
430
|
+
"rate": 0.27,
|
431
|
+
"strategy": "fixed",
|
432
|
+
"unit": "millionTokens",
|
433
|
+
},
|
434
|
+
],
|
435
|
+
},
|
196
436
|
"reasoning": false,
|
197
437
|
"releasedAt": "2024-04-25",
|
198
438
|
"type": "chat",
|
199
439
|
"vision": false,
|
200
440
|
},
|
201
441
|
{
|
202
|
-
"contextWindowTokens":
|
442
|
+
"contextWindowTokens": 4096,
|
203
443
|
"description": "A Mythomax/MLewd_13B-style merge of selected 70B models. A multi-model merge of several LLaMA2 70B finetunes for roleplaying and creative work. The goal was to create a model that combines creativity with intelligence for an enhanced experience.",
|
204
444
|
"displayName": "lzlv_70b",
|
205
445
|
"enabled": false,
|
206
446
|
"functionCall": false,
|
207
447
|
"id": "lzlv_70b",
|
208
448
|
"maxOutput": undefined,
|
449
|
+
"pricing": {
|
450
|
+
"units": [
|
451
|
+
{
|
452
|
+
"name": "textInput",
|
453
|
+
"rate": 0.58,
|
454
|
+
"strategy": "fixed",
|
455
|
+
"unit": "millionTokens",
|
456
|
+
},
|
457
|
+
{
|
458
|
+
"name": "textOutput",
|
459
|
+
"rate": 0.78,
|
460
|
+
"strategy": "fixed",
|
461
|
+
"unit": "millionTokens",
|
462
|
+
},
|
463
|
+
],
|
464
|
+
},
|
209
465
|
"reasoning": false,
|
210
466
|
"releasedAt": "2024-04-25",
|
211
467
|
"type": "chat",
|
212
468
|
"vision": false,
|
213
469
|
},
|
214
470
|
{
|
215
|
-
"contextWindowTokens":
|
471
|
+
"contextWindowTokens": 4096,
|
216
472
|
"description": "OpenHermes 2.5 Mistral 7B is a state of the art Mistral Fine-tune, a continuation of OpenHermes 2 model, which trained on additional code datasets.",
|
217
473
|
"displayName": "teknium/openhermes-2.5-mistral-7b",
|
218
474
|
"enabled": false,
|
219
475
|
"functionCall": false,
|
220
476
|
"id": "teknium/openhermes-2.5-mistral-7b",
|
221
477
|
"maxOutput": undefined,
|
478
|
+
"pricing": {
|
479
|
+
"units": [
|
480
|
+
{
|
481
|
+
"name": "textInput",
|
482
|
+
"rate": 0.17,
|
483
|
+
"strategy": "fixed",
|
484
|
+
"unit": "millionTokens",
|
485
|
+
},
|
486
|
+
{
|
487
|
+
"name": "textOutput",
|
488
|
+
"rate": 0.17,
|
489
|
+
"strategy": "fixed",
|
490
|
+
"unit": "millionTokens",
|
491
|
+
},
|
492
|
+
],
|
493
|
+
},
|
222
494
|
"reasoning": false,
|
223
495
|
"releasedAt": "2024-04-24",
|
224
496
|
"type": "chat",
|
@@ -227,11 +499,27 @@ Designed for a wide variety of tasks, it empowers developers and researchers to
|
|
227
499
|
{
|
228
500
|
"contextWindowTokens": 65535,
|
229
501
|
"description": "WizardLM-2 8x22B is Microsoft AI's most advanced Wizard model. It demonstrates highly competitive performance compared to leading proprietary models, and it consistently outperforms all existing state-of-the-art opensource models.",
|
230
|
-
"displayName": "
|
502
|
+
"displayName": "microsoft/wizardlm-2-8x22b",
|
231
503
|
"enabled": false,
|
232
504
|
"functionCall": false,
|
233
505
|
"id": "microsoft/wizardlm-2-8x22b",
|
234
506
|
"maxOutput": undefined,
|
507
|
+
"pricing": {
|
508
|
+
"units": [
|
509
|
+
{
|
510
|
+
"name": "textInput",
|
511
|
+
"rate": 0.64,
|
512
|
+
"strategy": "fixed",
|
513
|
+
"unit": "millionTokens",
|
514
|
+
},
|
515
|
+
{
|
516
|
+
"name": "textOutput",
|
517
|
+
"rate": 0.64,
|
518
|
+
"strategy": "fixed",
|
519
|
+
"unit": "millionTokens",
|
520
|
+
},
|
521
|
+
],
|
522
|
+
},
|
235
523
|
"reasoning": false,
|
236
524
|
"releasedAt": "2024-04-24",
|
237
525
|
"type": "chat",
|
@@ -3,6 +3,14 @@ import { processMultiProviderModelList } from '../utils/modelParse';
|
|
3
3
|
import { createOpenAICompatibleRuntime } from '../utils/openaiCompatibleFactory';
|
4
4
|
import { NovitaModelCard } from './type';
|
5
5
|
|
6
|
+
const formatPrice = (price?: number) => {
|
7
|
+
if (price === undefined || price === null) return undefined;
|
8
|
+
// Convert Novita price to desired unit: e.g. 5700 -> 0.57
|
9
|
+
if (typeof price !== 'number') return undefined;
|
10
|
+
if (price === -1) return undefined;
|
11
|
+
return Number((price / 10_000).toPrecision(5));
|
12
|
+
};
|
13
|
+
|
6
14
|
export const LobeNovitaAI = createOpenAICompatibleRuntime({
|
7
15
|
baseURL: 'https://api.novita.ai/v3/openai',
|
8
16
|
constructorOptions: {
|
@@ -17,7 +25,29 @@ export const LobeNovitaAI = createOpenAICompatibleRuntime({
|
|
17
25
|
const modelsPage = (await client.models.list()) as any;
|
18
26
|
const modelList: NovitaModelCard[] = modelsPage.data;
|
19
27
|
|
20
|
-
|
28
|
+
const formattedModels = modelList.map((m) => {
|
29
|
+
const mm = m as any;
|
30
|
+
const features: string[] = Array.isArray(mm.features) ? mm.features : [];
|
31
|
+
|
32
|
+
return {
|
33
|
+
contextWindowTokens: mm.context_size ?? mm.max_output_tokens ?? undefined,
|
34
|
+
created: mm.created,
|
35
|
+
description: mm.description ?? '',
|
36
|
+
displayName: mm.display_name ?? mm.title ?? mm.id,
|
37
|
+
functionCall: features.includes('function-calling') || false,
|
38
|
+
id: mm.id,
|
39
|
+
maxOutput: typeof mm.max_output_tokens === 'number' ? mm.max_output_tokens : undefined,
|
40
|
+
pricing: {
|
41
|
+
input: formatPrice(mm.input_token_price_per_m),
|
42
|
+
output: formatPrice(mm.output_token_price_per_m),
|
43
|
+
},
|
44
|
+
reasoning: features.includes('reasoning') || false,
|
45
|
+
type: mm.model_type ?? undefined,
|
46
|
+
vision: features.includes('vision') || false,
|
47
|
+
} as any;
|
48
|
+
});
|
49
|
+
|
50
|
+
return await processMultiProviderModelList(formattedModels, 'novita');
|
21
51
|
},
|
22
52
|
provider: ModelProvider.Novita,
|
23
53
|
});
|
@@ -119,7 +119,7 @@ export class LobeOllamaAI implements LobeRuntimeAI {
|
|
119
119
|
}
|
120
120
|
|
121
121
|
async models() {
|
122
|
-
const { LOBE_DEFAULT_MODEL_LIST } = await import('
|
122
|
+
const { LOBE_DEFAULT_MODEL_LIST } = await import('model-bank');
|
123
123
|
|
124
124
|
const list = await this.client.list();
|
125
125
|
|