Skip to content

Commit 6049c9e

Browse files
authored
Fix react errors, max context tokens, and preset mobile view (#269)
* fix: react errors * fix: max tokens issue * fix: max tokens issue
1 parent 262b402 commit 6049c9e

File tree

4 files changed

+43
-33
lines changed

4 files changed

+43
-33
lines changed

api/app/clients/chatgpt-client.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@ const askClient = async ({
2323
};
2424

2525
const azure = process.env.AZURE_OPENAI_API_KEY ? true : false;
26-
const max_tokens = (model === "gpt-4") ? 7200 : (model === "gpt-4-32k") ? 31000 : 3071;
26+
const maxContextTokens = model === 'gpt-4' ? 8191 : model === 'gpt-4-32k' ? 32767 : 4095; // 1 less than maximum
2727
const clientOptions = {
2828
reverseProxyUrl: process.env.OPENAI_REVERSE_PROXY || null,
2929
azure,
30+
maxContextTokens,
3031
modelOptions: {
31-
model: model,
32-
max_tokens: max_tokens,
32+
model,
3333
temperature,
3434
top_p,
3535
presence_penalty,
@@ -38,22 +38,22 @@ const askClient = async ({
3838
chatGptLabel,
3939
promptPrefix,
4040
proxy: process.env.PROXY || null,
41-
debug: false
41+
// debug: true
4242
};
4343

4444
let apiKey = process.env.OPENAI_KEY;
4545

4646
if (azure) {
4747
apiKey = process.env.AZURE_OPENAI_API_KEY;
48-
clientOptions.reverseProxyUrl = genAzureEndpoint({
49-
azureOpenAIApiInstanceName: process.env.AZURE_OPENAI_API_INSTANCE_NAME,
50-
azureOpenAIApiDeploymentName: process.env.AZURE_OPENAI_API_DEPLOYMENT_NAME,
48+
clientOptions.reverseProxyUrl = genAzureEndpoint({
49+
azureOpenAIApiInstanceName: process.env.AZURE_OPENAI_API_INSTANCE_NAME,
50+
azureOpenAIApiDeploymentName: process.env.AZURE_OPENAI_API_DEPLOYMENT_NAME,
5151
azureOpenAIApiVersion: process.env.AZURE_OPENAI_API_VERSION
5252
});
5353
}
5454

5555
const client = new ChatGPTClient(apiKey, clientOptions, store);
56-
56+
5757
const options = {
5858
onProgress,
5959
abortController,

client/src/components/Input/NewConversationMenu/index.jsx

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import store from '~/store';
2424

2525
export default function NewConversationMenu() {
2626
const [menuOpen, setMenuOpen] = useState(false);
27+
const [showPresets, setShowPresets] = useState(true);
2728
const [presetModelVisible, setPresetModelVisible] = useState(false);
2829
const [preset, setPreset] = useState(false);
2930

@@ -71,7 +72,10 @@ export default function NewConversationMenu() {
7172
if (endpoint) {
7273
const lastSelectedModel = JSON.parse(localStorage.getItem('lastSelectedModel')) || {};
7374
localStorage.setItem('lastConversationSetup', JSON.stringify(conversation));
74-
localStorage.setItem('lastSelectedModel', JSON.stringify({ ...lastSelectedModel, [endpoint] : conversation.model }));
75+
localStorage.setItem(
76+
'lastSelectedModel',
77+
JSON.stringify({ ...lastSelectedModel, [endpoint]: conversation.model })
78+
);
7579
}
7680
}, [conversation]);
7781

@@ -156,7 +160,12 @@ export default function NewConversationMenu() {
156160
<div className="mt-6 w-full" />
157161

158162
<DropdownMenuLabel className="flex items-center dark:text-gray-300">
159-
<span>Select a Preset</span>
163+
<span
164+
className="cursor-pointer"
165+
onClick={() => setShowPresets(prev => !prev)}
166+
>
167+
{showPresets ? 'Hide ' : 'Show '} Presets
168+
</span>
160169
<div className="flex-1" />
161170
<FileUpload onFileSelected={onFileSelected} />
162171
<Dialog>
@@ -188,18 +197,19 @@ export default function NewConversationMenu() {
188197
<DropdownMenuSeparator />
189198
<DropdownMenuRadioGroup
190199
onValueChange={onSelectPreset}
191-
className="overflow-y-auto"
200+
className="max-h-[150px] overflow-y-auto"
192201
>
193-
{presets.length ? (
194-
<PresetItems
195-
presets={presets}
196-
onSelect={onSelectPreset}
197-
onChangePreset={onChangePreset}
198-
onDeletePreset={onDeletePreset}
199-
/>
200-
) : (
201-
<DropdownMenuLabel className="dark:text-gray-300">No preset yet.</DropdownMenuLabel>
202-
)}
202+
{showPresets &&
203+
(presets.length ? (
204+
<PresetItems
205+
presets={presets}
206+
onSelect={onSelectPreset}
207+
onChangePreset={onChangePreset}
208+
onDeletePreset={onDeletePreset}
209+
/>
210+
) : (
211+
<DropdownMenuLabel className="dark:text-gray-300">No preset yet.</DropdownMenuLabel>
212+
))}
203213
</DropdownMenuRadioGroup>
204214
</DropdownMenuContent>
205215
</DropdownMenu>

client/src/components/Nav/NavLinks.jsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ export default function NavLinks({ clearSearch, isSearchEnabled }) {
2424
open ? 'bg-gray-800' : ''
2525
)}
2626
>
27-
<div class="-ml-0.5 h-5 w-5 flex-shrink-0">
28-
<div class="relative flex">
27+
<div className="-ml-0.5 h-5 w-5 flex-shrink-0">
28+
<div className="relative flex">
2929
<img
30-
class="rounded-sm"
30+
className="rounded-sm"
3131
src={user?.avatar || `https://avatars.dicebear.com/api/initials/${user?.name}.svg`}
3232
alt=""
3333
/>
3434
</div>
3535
</div>
36-
<div class="grow overflow-hidden text-ellipsis whitespace-nowrap text-left text-white">
36+
<div className="grow overflow-hidden text-ellipsis whitespace-nowrap text-left text-white">
3737
{user?.name || 'USER'}
3838
</div>
3939
<DotsIcon />
@@ -55,14 +55,14 @@ export default function NavLinks({ clearSearch, isSearchEnabled }) {
5555
<Menu.Item>{({}) => <ExportConversation />}</Menu.Item>
5656

5757
<div
58-
class="my-1.5 h-px bg-white/20"
58+
className="my-1.5 h-px bg-white/20"
5959
role="none"
6060
></div>
6161
<Menu.Item>{({}) => <DarkMode />}</Menu.Item>
6262
<Menu.Item>{({}) => <ClearConvos />}</Menu.Item>
6363

6464
<div
65-
class="my-1.5 h-px bg-white/20"
65+
className="my-1.5 h-px bg-white/20"
6666
role="none"
6767
></div>
6868
<Menu.Item>

client/src/components/svg/DotsIcon.jsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ export default function DotsIcon() {
55
<svg
66
stroke="currentColor"
77
fill="none"
8-
stroke-width="2"
8+
strokeWidth="2"
99
viewBox="0 0 24 24"
10-
stroke-linecap="round"
11-
stroke-linejoin="round"
10+
strokeLinecap="round"
11+
strokeLinejoin="round"
1212
className="h-4 w-4 flex-shrink-0 text-gray-500"
1313
height="1em"
1414
width="1em"
@@ -18,17 +18,17 @@ export default function DotsIcon() {
1818
cx="12"
1919
cy="12"
2020
r="1"
21-
></circle>
21+
/>
2222
<circle
2323
cx="19"
2424
cy="12"
2525
r="1"
26-
></circle>
26+
/>
2727
<circle
2828
cx="5"
2929
cy="12"
3030
r="1"
31-
></circle>
31+
/>
3232
</svg>
3333
);
3434
}

0 commit comments

Comments
 (0)