Merge remote-tracking branch 'origin/master' into ollama-auth
This commit is contained in:
commit
fb6ec2fc8a
|
@ -62,53 +62,54 @@ const useSocket = (
|
||||||
'embeddingModelProvider',
|
'embeddingModelProvider',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const providers = await fetch(
|
||||||
|
`${process.env.NEXT_PUBLIC_API_URL}/models`,
|
||||||
|
{
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
).then(async (res) => await res.json());
|
||||||
|
|
||||||
if (
|
if (
|
||||||
!chatModel ||
|
!chatModel ||
|
||||||
!chatModelProvider ||
|
!chatModelProvider ||
|
||||||
!embeddingModel ||
|
!embeddingModel ||
|
||||||
!embeddingModelProvider
|
!embeddingModelProvider
|
||||||
) {
|
) {
|
||||||
const providers = await fetch(
|
if (!chatModel || !chatModelProvider) {
|
||||||
`${process.env.NEXT_PUBLIC_API_URL}/models`,
|
const chatModelProviders = providers.chatModelProviders;
|
||||||
{
|
|
||||||
headers: {
|
|
||||||
'Content-Type': 'application/json',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
).then(async (res) => await res.json());
|
|
||||||
|
|
||||||
const chatModelProviders = providers.chatModelProviders;
|
chatModelProvider = Object.keys(chatModelProviders)[0];
|
||||||
|
|
||||||
chatModelProvider = Object.keys(chatModelProviders)[0];
|
if (chatModelProvider === 'custom_openai') {
|
||||||
|
toast.error('Seems like you are using the custom OpenAI provider, please open the settings and configure the API key and base URL');
|
||||||
if (chatModelProvider === 'custom_openai') {
|
setError(true);
|
||||||
toast.error(
|
return;
|
||||||
'Seems like you are using the custom OpenAI provider, please open the settings and configure the API key and base URL',
|
} else {
|
||||||
);
|
chatModel = Object.keys(chatModelProviders[chatModelProvider])[0];
|
||||||
setError(true);
|
if (
|
||||||
return;
|
!chatModelProviders ||
|
||||||
} else {
|
Object.keys(chatModelProviders).length === 0
|
||||||
chatModel = Object.keys(chatModelProviders[chatModelProvider])[0];
|
)
|
||||||
|
return toast.error('No chat models available');
|
||||||
if (
|
}
|
||||||
!chatModelProviders ||
|
|
||||||
Object.keys(chatModelProviders).length === 0
|
|
||||||
)
|
|
||||||
return toast.error('No chat models available');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const embeddingModelProviders = providers.embeddingModelProviders;
|
if (!embeddingModel || !embeddingModelProvider) {
|
||||||
|
const embeddingModelProviders = providers.embeddingModelProviders;
|
||||||
|
|
||||||
if (
|
if (
|
||||||
!embeddingModelProviders ||
|
!embeddingModelProviders ||
|
||||||
Object.keys(embeddingModelProviders).length === 0
|
Object.keys(embeddingModelProviders).length === 0
|
||||||
)
|
)
|
||||||
return toast.error('No embedding models available');
|
return toast.error('No embedding models available');
|
||||||
|
|
||||||
embeddingModelProvider = Object.keys(embeddingModelProviders)[0];
|
embeddingModelProvider = Object.keys(embeddingModelProviders)[0];
|
||||||
embeddingModel = Object.keys(
|
embeddingModel = Object.keys(
|
||||||
embeddingModelProviders[embeddingModelProvider],
|
embeddingModelProviders[embeddingModelProvider],
|
||||||
)[0];
|
)[0];
|
||||||
|
}
|
||||||
|
|
||||||
localStorage.setItem('chatModel', chatModel!);
|
localStorage.setItem('chatModel', chatModel!);
|
||||||
localStorage.setItem('chatModelProvider', chatModelProvider);
|
localStorage.setItem('chatModelProvider', chatModelProvider);
|
||||||
|
@ -118,15 +119,6 @@ const useSocket = (
|
||||||
embeddingModelProvider,
|
embeddingModelProvider,
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
const providers = await fetch(
|
|
||||||
`${process.env.NEXT_PUBLIC_API_URL}/models`,
|
|
||||||
{
|
|
||||||
headers: {
|
|
||||||
'Content-Type': 'app lication/json',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
).then(async (res) => await res.json());
|
|
||||||
|
|
||||||
const chatModelProviders = providers.chatModelProviders;
|
const chatModelProviders = providers.chatModelProviders;
|
||||||
const embeddingModelProviders = providers.embeddingModelProviders;
|
const embeddingModelProviders = providers.embeddingModelProviders;
|
||||||
|
|
||||||
|
@ -195,8 +187,6 @@ const useSocket = (
|
||||||
|
|
||||||
const timeoutId = setTimeout(() => {
|
const timeoutId = setTimeout(() => {
|
||||||
if (ws.readyState !== 1) {
|
if (ws.readyState !== 1) {
|
||||||
ws.close();
|
|
||||||
setError(true);
|
|
||||||
toast.error(
|
toast.error(
|
||||||
'Failed to connect to the server. Please try again later.',
|
'Failed to connect to the server. Please try again later.',
|
||||||
);
|
);
|
||||||
|
@ -208,7 +198,6 @@ const useSocket = (
|
||||||
reconnectTimeout.current = 0;
|
reconnectTimeout.current = 0;
|
||||||
reconnectAttempts.current = 0;
|
reconnectAttempts.current = 0;
|
||||||
clearTimeout(timeoutId);
|
clearTimeout(timeoutId);
|
||||||
setError(false);
|
|
||||||
setIsWSReady(true);
|
setIsWSReady(true);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -231,7 +220,7 @@ const useSocket = (
|
||||||
if (data.type === 'error') {
|
if (data.type === 'error') {
|
||||||
toast.error(data.data);
|
toast.error(data.data);
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
|
|
||||||
setWs(ws);
|
setWs(ws);
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue