nsarrazin HF staff commited on
Commit
403d4bd
1 Parent(s): 5b199ff

Return an error on unknown model in new conversation (#916)

Browse files
Files changed (1) hide show
  1. src/routes/conversation/+server.ts +8 -4
src/routes/conversation/+server.ts CHANGED
@@ -16,14 +16,19 @@ export const POST: RequestHandler = async ({ locals, request }) => {
16
 
17
  let title = "";
18
 
19
- const values = z
20
  .object({
21
  fromShare: z.string().optional(),
22
  model: validateModel(models),
23
  assistantId: z.string().optional(),
24
  preprompt: z.string().optional(),
25
  })
26
- .parse(JSON.parse(body));
 
 
 
 
 
27
 
28
  const convCount = await collections.conversations.countDocuments(authCondition(locals));
29
 
@@ -34,14 +39,13 @@ export const POST: RequestHandler = async ({ locals, request }) => {
34
  );
35
  }
36
 
37
- // get preprompt from assistant if it exists
38
-
39
  const model = models.find((m) => m.name === values.model);
40
 
41
  if (!model) {
42
  throw error(400, "Invalid model");
43
  }
44
 
 
45
  const assistant = await collections.assistants.findOne({
46
  _id: new ObjectId(values.assistantId),
47
  });
 
16
 
17
  let title = "";
18
 
19
+ const parsedBody = z
20
  .object({
21
  fromShare: z.string().optional(),
22
  model: validateModel(models),
23
  assistantId: z.string().optional(),
24
  preprompt: z.string().optional(),
25
  })
26
+ .safeParse(JSON.parse(body));
27
+
28
+ if (!parsedBody.success) {
29
+ throw error(400, "Invalid request");
30
+ }
31
+ const values = parsedBody.data;
32
 
33
  const convCount = await collections.conversations.countDocuments(authCondition(locals));
34
 
 
39
  );
40
  }
41
 
 
 
42
  const model = models.find((m) => m.name === values.model);
43
 
44
  if (!model) {
45
  throw error(400, "Invalid model");
46
  }
47
 
48
+ // get preprompt from assistant if it exists
49
  const assistant = await collections.assistants.findOne({
50
  _id: new ObjectId(values.assistantId),
51
  });