perplexica/ui/lib/actions.ts

32 lines
924 B
TypeScript
Raw Normal View History

2024-05-18 07:40:39 +00:00
import { Message } from '@/components/ChatWindow';
export const getSuggestions = async (chatHisory: Message[]) => {
const chatModel = localStorage.getItem('chatModel');
const chatModelProvider = localStorage.getItem('chatModelProvider');
const customOpenAIKey = localStorage.getItem('openAIApiKey');
const customOpenAIBaseURL = localStorage.getItem('openAIBaseURL');
2024-05-18 07:40:39 +00:00
const res = await fetch(`${process.env.NEXT_PUBLIC_API_URL}/suggestions`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
chatHistory: chatHisory,
chatModel: {
provider: chatModelProvider,
model: chatModel,
...(chatModelProvider === 'custom_openai' && {
customOpenAIKey,
customOpenAIBaseURL,
}),
},
2024-05-18 07:40:39 +00:00
}),
});
const data = (await res.json()) as { suggestions: string[] };
return data.suggestions;
};