Merge remote-tracking branch 'upstream/main' into dev

# Conflicts:
#	app/client/platforms/openai.ts
This commit is contained in:
sijinhui 2024-04-22 17:52:47 +08:00
commit d33f4b05dd
4 changed files with 36 additions and 18 deletions

View File

@ -348,7 +348,11 @@ export class ClaudeApi implements LLMApi {
path(path: string): string { path(path: string): string {
const accessStore = useAccessStore.getState(); const accessStore = useAccessStore.getState();
let baseUrl: string = accessStore.anthropicUrl; let baseUrl: string = "";
if (accessStore.useCustomConfig) {
baseUrl = accessStore.anthropicUrl;
}
// if endpoint is empty, use default endpoint // if endpoint is empty, use default endpoint
if (baseUrl.trim().length === 0) { if (baseUrl.trim().length === 0) {

View File

@ -104,7 +104,13 @@ export class GeminiProApi implements LLMApi {
}; };
const accessStore = useAccessStore.getState(); const accessStore = useAccessStore.getState();
let baseUrl = accessStore.googleUrl;
let baseUrl = "";
if (accessStore.useCustomConfig) {
baseUrl = accessStore.googleUrl;
}
const isApp = !!getClientConfig()?.isApp; const isApp = !!getClientConfig()?.isApp;
let shouldStream = !!options.config.stream; let shouldStream = !!options.config.stream;

View File

@ -61,6 +61,9 @@ export class ChatGPTApi implements LLMApi {
path(path: string, isAzure?: boolean, azureModel?: string): string { path(path: string, isAzure?: boolean, azureModel?: string): string {
const accessStore = useAccessStore.getState(); const accessStore = useAccessStore.getState();
let baseUrl = "";
if (accessStore.useCustomConfig) {
// const isAzure = accessStore.provider === ServiceProvider.Azure; // const isAzure = accessStore.provider === ServiceProvider.Azure;
if (isAzure && !accessStore.isValidAzure()) { if (isAzure && !accessStore.isValidAzure()) {
@ -69,7 +72,12 @@ export class ChatGPTApi implements LLMApi {
); );
} }
let baseUrl = isAzure ? accessStore.azureUrl : accessStore.openaiUrl; if (isAzure) {
path = makeAzurePath(path, accessStore.azureApiVersion);
}
baseUrl = isAzure ? accessStore.azureUrl : accessStore.openaiUrl;
}
if (baseUrl.length === 0) { if (baseUrl.length === 0) {
const isApp = !!getClientConfig()?.isApp; const isApp = !!getClientConfig()?.isApp;

View File

@ -63,26 +63,26 @@ export function createWebDavClient(store: SyncStore) {
}; };
}, },
path(path: string, proxyUrl: string = "") { path(path: string, proxyUrl: string = "") {
// if (!path.endsWith("/")) {
// path += "/";
// }
if (path.startsWith("/")) { if (path.startsWith("/")) {
path = path.slice(1); path = path.slice(1);
} }
if (proxyUrl.length > 0 && !proxyUrl.endsWith("/")) { if (proxyUrl.endsWith("/")) {
proxyUrl += "/"; proxyUrl = proxyUrl.slice(0, -1);
} }
let url; let url;
if (proxyUrl.length > 0 || proxyUrl === "/") { const pathPrefix = "/api/webdav/";
let u = new URL(proxyUrl + "api/webdav/" + path);
try {
let u = new URL(proxyUrl + pathPrefix + path);
// add query params // add query params
u.searchParams.append("endpoint", config.endpoint); u.searchParams.append("endpoint", config.endpoint);
url = u.toString(); url = u.toString();
} else { } catch (e) {
url = "/api/upstash/" + path + "?endpoint=" + config.endpoint; url = pathPrefix + path + "?endpoint=" + config.endpoint;
} }
return url; return url;
}, },
}; };