Skip to content

Commit f49e855

Browse files
committed
2 parents b5be83d + 9b2cb1e commit f49e855

File tree

5 files changed

+82
-256
lines changed

5 files changed

+82
-256
lines changed

app/client/platforms/anthropic.ts

+5-1
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,11 @@ export class ClaudeApi implements LLMApi {
348348
path(path: string): string {
349349
const accessStore = useAccessStore.getState();
350350

351-
let baseUrl: string = accessStore.anthropicUrl;
351+
let baseUrl: string = "";
352+
353+
if (accessStore.useCustomConfig) {
354+
baseUrl = accessStore.anthropicUrl;
355+
}
352356

353357
// if endpoint is empty, use default endpoint
354358
if (baseUrl.trim().length === 0) {

app/client/platforms/google.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,13 @@ export class GeminiProApi implements LLMApi {
104104
};
105105

106106
const accessStore = useAccessStore.getState();
107-
let baseUrl = accessStore.googleUrl;
107+
108+
let baseUrl = "";
109+
110+
if (accessStore.useCustomConfig) {
111+
baseUrl = accessStore.googleUrl;
112+
}
113+
108114
const isApp = !!getClientConfig()?.isApp;
109115

110116
let shouldStream = !!options.config.stream;

app/client/platforms/openai.ts

+15-11
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,23 @@ export class ChatGPTApi implements LLMApi {
6060
path(path: string): string {
6161
const accessStore = useAccessStore.getState();
6262

63-
const isAzure = accessStore.provider === ServiceProvider.Azure;
63+
let baseUrl = "";
6464

65-
if (isAzure && !accessStore.isValidAzure()) {
66-
throw Error(
67-
"incomplete azure config, please check it in your settings page",
68-
);
69-
}
65+
if (accessStore.useCustomConfig) {
66+
const isAzure = accessStore.provider === ServiceProvider.Azure;
7067

71-
let baseUrl = isAzure ? accessStore.azureUrl : accessStore.openaiUrl;
68+
if (isAzure && !accessStore.isValidAzure()) {
69+
throw Error(
70+
"incomplete azure config, please check it in your settings page",
71+
);
72+
}
73+
74+
if (isAzure) {
75+
path = makeAzurePath(path, accessStore.azureApiVersion);
76+
}
77+
78+
baseUrl = isAzure ? accessStore.azureUrl : accessStore.openaiUrl;
79+
}
7280

7381
if (baseUrl.length === 0) {
7482
const isApp = !!getClientConfig()?.isApp;
@@ -84,10 +92,6 @@ export class ChatGPTApi implements LLMApi {
8492
baseUrl = "https://" + baseUrl;
8593
}
8694

87-
if (isAzure) {
88-
path = makeAzurePath(path, accessStore.azureApiVersion);
89-
}
90-
9195
console.log("[Proxy Endpoint] ", baseUrl, path);
9296

9397
return [baseUrl, path].join("/");

app/constant.ts

+46-234
Original file line numberDiff line numberDiff line change
@@ -137,259 +137,71 @@ export const KnowledgeCutOffDate: Record<string, string> = {
137137
"gemini-pro-vision": "2023-12",
138138
};
139139

140+
const openaiModels = [
141+
"gpt-3.5-turbo",
142+
"gpt-3.5-turbo-0301",
143+
"gpt-3.5-turbo-0613",
144+
"gpt-3.5-turbo-1106",
145+
"gpt-3.5-turbo-0125",
146+
"gpt-3.5-turbo-16k",
147+
"gpt-3.5-turbo-16k-0613",
148+
"gpt-4",
149+
"gpt-4-0314",
150+
"gpt-4-0613",
151+
"gpt-4-1106-preview",
152+
"gpt-4-0125-preview",
153+
"gpt-4-32k",
154+
"gpt-4-32k-0314",
155+
"gpt-4-32k-0613",
156+
"gpt-4-turbo",
157+
"gpt-4-turbo-preview",
158+
"gpt-4-vision-preview",
159+
"gpt-4-turbo-2024-04-09",
160+
];
161+
162+
const googleModels = [
163+
"gemini-1.0-pro",
164+
"gemini-1.5-pro-latest",
165+
"gemini-pro-vision",
166+
];
167+
168+
const anthropicModels = [
169+
"claude-instant-1.2",
170+
"claude-2.0",
171+
"claude-2.1",
172+
"claude-3-sonnet-20240229",
173+
"claude-3-opus-20240229",
174+
"claude-3-haiku-20240307",
175+
];
176+
140177
export const DEFAULT_MODELS = [
141-
{
142-
name: "gpt-4",
143-
available: true,
144-
provider: {
145-
id: "openai",
146-
providerName: "OpenAI",
147-
providerType: "openai",
148-
},
149-
},
150-
{
151-
name: "gpt-4-0314",
152-
available: true,
153-
provider: {
154-
id: "openai",
155-
providerName: "OpenAI",
156-
providerType: "openai",
157-
},
158-
},
159-
{
160-
name: "gpt-4-0613",
161-
available: true,
162-
provider: {
163-
id: "openai",
164-
providerName: "OpenAI",
165-
providerType: "openai",
166-
},
167-
},
168-
{
169-
name: "gpt-4-32k",
170-
available: true,
171-
provider: {
172-
id: "openai",
173-
providerName: "OpenAI",
174-
providerType: "openai",
175-
},
176-
},
177-
{
178-
name: "gpt-4-32k-0314",
179-
available: true,
180-
provider: {
181-
id: "openai",
182-
providerName: "OpenAI",
183-
providerType: "openai",
184-
},
185-
},
186-
{
187-
name: "gpt-4-32k-0613",
188-
available: true,
189-
provider: {
190-
id: "openai",
191-
providerName: "OpenAI",
192-
providerType: "openai",
193-
},
194-
},
195-
{
196-
name: "gpt-4-turbo",
197-
available: true,
198-
provider: {
199-
id: "openai",
200-
providerName: "OpenAI",
201-
providerType: "openai",
202-
},
203-
},
204-
{
205-
name: "gpt-4-turbo-2024-04-09",
206-
available: true,
207-
provider: {
208-
id: "openai",
209-
providerName: "OpenAI",
210-
providerType: "openai",
211-
},
212-
},
213-
{
214-
name: "gpt-4-turbo-preview",
215-
available: true,
216-
provider: {
217-
id: "openai",
218-
providerName: "OpenAI",
219-
providerType: "openai",
220-
},
221-
},
222-
{
223-
name: "gpt-4-1106-preview",
224-
available: true,
225-
provider: {
226-
id: "openai",
227-
providerName: "OpenAI",
228-
providerType: "openai",
229-
},
230-
},
231-
{
232-
name: "gpt-4-0125-preview",
233-
available: true,
234-
provider: {
235-
id: "openai",
236-
providerName: "OpenAI",
237-
providerType: "openai",
238-
},
239-
},
240-
{
241-
name: "gpt-4-vision-preview",
242-
available: true,
243-
provider: {
244-
id: "openai",
245-
providerName: "OpenAI",
246-
providerType: "openai",
247-
},
248-
},
249-
{
250-
name: "gpt-3.5-turbo",
178+
...openaiModels.map((name) => ({
179+
name,
251180
available: true,
252181
provider: {
253182
id: "openai",
254183
providerName: "OpenAI",
255184
providerType: "openai",
256185
},
257-
},
258-
{
259-
name: "gpt-3.5-turbo-0125",
260-
available: true,
261-
provider: {
262-
id: "openai",
263-
providerName: "OpenAI",
264-
providerType: "openai",
265-
},
266-
},
267-
{
268-
name: "gpt-3.5-turbo-0301",
269-
available: true,
270-
provider: {
271-
id: "openai",
272-
providerName: "OpenAI",
273-
providerType: "openai",
274-
},
275-
},
276-
{
277-
name: "gpt-3.5-turbo-0613",
278-
available: true,
279-
provider: {
280-
id: "openai",
281-
providerName: "OpenAI",
282-
providerType: "openai",
283-
},
284-
},
285-
{
286-
name: "gpt-3.5-turbo-1106",
287-
available: true,
288-
provider: {
289-
id: "openai",
290-
providerName: "OpenAI",
291-
providerType: "openai",
292-
},
293-
},
294-
{
295-
name: "gpt-3.5-turbo-16k",
296-
available: true,
297-
provider: {
298-
id: "openai",
299-
providerName: "OpenAI",
300-
providerType: "openai",
301-
},
302-
},
303-
{
304-
name: "gpt-3.5-turbo-16k-0613",
305-
available: true,
306-
provider: {
307-
id: "openai",
308-
providerName: "OpenAI",
309-
providerType: "openai",
310-
},
311-
},
312-
{
313-
name: "gemini-1.0-pro",
314-
available: true,
315-
provider: {
316-
id: "google",
317-
providerName: "Google",
318-
providerType: "google",
319-
},
320-
},
321-
{
322-
name: "gemini-1.5-pro-latest",
323-
available: true,
324-
provider: {
325-
id: "google",
326-
providerName: "Google",
327-
providerType: "google",
328-
},
329-
},
330-
{
331-
name: "gemini-pro-vision",
186+
})),
187+
...googleModels.map((name) => ({
188+
name,
332189
available: true,
333190
provider: {
334191
id: "google",
335192
providerName: "Google",
336193
providerType: "google",
337194
},
338-
},
339-
{
340-
name: "claude-instant-1.2",
341-
available: true,
342-
provider: {
343-
id: "anthropic",
344-
providerName: "Anthropic",
345-
providerType: "anthropic",
346-
},
347-
},
348-
{
349-
name: "claude-2.0",
350-
available: true,
351-
provider: {
352-
id: "anthropic",
353-
providerName: "Anthropic",
354-
providerType: "anthropic",
355-
},
356-
},
357-
{
358-
name: "claude-2.1",
359-
available: true,
360-
provider: {
361-
id: "anthropic",
362-
providerName: "Anthropic",
363-
providerType: "anthropic",
364-
},
365-
},
366-
{
367-
name: "claude-3-opus-20240229",
368-
available: true,
369-
provider: {
370-
id: "anthropic",
371-
providerName: "Anthropic",
372-
providerType: "anthropic",
373-
},
374-
},
375-
{
376-
name: "claude-3-sonnet-20240229",
377-
available: true,
378-
provider: {
379-
id: "anthropic",
380-
providerName: "Anthropic",
381-
providerType: "anthropic",
382-
},
383-
},
384-
{
385-
name: "claude-3-haiku-20240307",
195+
})),
196+
...anthropicModels.map((name) => ({
197+
name,
386198
available: true,
387199
provider: {
388200
id: "anthropic",
389201
providerName: "Anthropic",
390202
providerType: "anthropic",
391203
},
392-
},
204+
})),
393205
] as const;
394206

395207
export const CHAT_PAGE_SIZE = 15;

0 commit comments

Comments
 (0)