+
{/* Desktop */}
{isWide && (
null);
+
+ if (!res.ok) {
+ let message = "Request failed";
+
+ if (res.status === 500) {
+ message = "Server error (likely model too large or OOM)";
+ } else if (res.status === 401) {
+ message = "Unauthorized";
+ } else {
+ message = data?.message || data?.error || message;
+ }
+
+ throw new Error(message);
+ }
+
const assistant = data?.choices?.[0]?.message;
- if (assistant) setMessages((prev) => [...prev, assistant]);
+ if (assistant) {
+ setMessages((prev) => [...prev, assistant]);
+ }
+
} catch (err: any) {
console.error(err);
- setNotification(
- err?.message || 'Something went wrong while sending request',
- );
+
+ const message =
+ err?.message || 'Something went wrong while sending request';
+
+ setMessages((prev) => [
+ ...prev,
+ {
+ role: 'assistant',
+ content: `❌ ${message}`,
+ },
+ ]);
+
+ setNotification(message);
setTimeout(() => setNotification(null), 3000);
} finally {