diff --git a/src/components/Settings.tsx b/src/components/Settings.tsx index c0ea76d..5ba5982 100644 --- a/src/components/Settings.tsx +++ b/src/components/Settings.tsx @@ -406,6 +406,30 @@ const Number = (props: { }} /> )} + + {props.field === "presence_penalty" && ( + { + const newChatStore = { ...chatStore }; + newChatStore.presence_penalty_enabled = + !newChatStore.presence_penalty_enabled; + setChatStore({ ...newChatStore }); + }} + /> + )} + + {props.field === "frequency_penalty" && ( + { + const newChatStore = { ...chatStore }; + newChatStore.frequency_penalty_enabled = + !newChatStore.frequency_penalty_enabled; + setChatStore({ ...newChatStore }); + }} + /> + )} { Price:{" "} - {models[chatStore.model]?.price?.prompt * 1000 * 1000}$ - / 1M input tokens + {models[chatStore.model]?.price?.prompt * + 1000 * + 1000}$ / 1M input tokens - Total: {getTotalCost().toFixed(2)}$ + Total: {getTotalCost().toFixed( + 2 + )}$ @@ -112,7 +115,9 @@ const Navbar: React.FC = () => { - {chatStore.postBeginIndex} / {chatStore.history.length} + { + chatStore.postBeginIndex + } / {chatStore.history.length} diff --git a/src/types/chatstore.ts b/src/types/chatstore.ts index e3c4f4c..599a451 100644 --- a/src/types/chatstore.ts +++ b/src/types/chatstore.ts @@ -26,7 +26,9 @@ export interface ChatStore { top_p: number; top_p_enabled: boolean; presence_penalty: number; + presence_penalty_enabled: boolean; frequency_penalty: number; + frequency_penalty_enabled: boolean; develop_mode: boolean; whisper_api: string; whisper_key: string; diff --git a/src/types/newChatstore.ts b/src/types/newChatstore.ts index 53350e5..db6e7e5 100644 --- a/src/types/newChatstore.ts +++ b/src/types/newChatstore.ts @@ -18,7 +18,9 @@ interface NewChatStoreOptions { top_p?: number; top_p_enabled?: boolean; presence_penalty?: number; + presence_penalty_enabled?: boolean; frequency_penalty?: number; + frequency_penalty_enabled?: boolean; dev?: boolean; whisper_api?: string; whisper_key?: string; @@ -67,7 +69,9 @@ export const newChatStore = (options: NewChatStoreOptions): ChatStore => { top_p: options.top_p ?? 1, top_p_enabled: options.top_p_enabled ?? false, presence_penalty: options.presence_penalty ?? 0, + presence_penalty_enabled: options.presence_penalty_enabled ?? false, frequency_penalty: options.frequency_penalty ?? 0, + frequency_penalty_enabled: options.frequency_penalty_enabled ?? false, develop_mode: getDefaultParams("dev", options.dev ?? false), whisper_api: getDefaultParams( "whisper-api",