求助一个 next.js 和 7890 端口相关的问题

73 天前
 mundane

我照着 b 站视频学习 next.js ,模仿着写一个 chatgpt 项目,链接是 https://www.bilibili.com/video/BV1tw411F7ua

但是我在对话框输入内容后报错。截图如下 前端界面: 控制台: 代码是这样的

import { sleep } from "@/common/util";
import client from "@/lib/openai";
import { MessageRequestBody } from "@/types/chat";
import { NextRequest } from "next/server";

export async function POST(request: NextRequest) {
  const { messages, model } = (await request.json()) as MessageRequestBody;
  const newMessages = messages.map((message) => {
    return {
      role: message.role,
      content: message.content,
    };
  });
  const encoder = new TextEncoder();
  const stream = new ReadableStream({
    async start(controller) {
      const events = await client.streamChatCompletions(
        model,
        [
          {
            role: "system",
            content:
              "You are ChatGPT, a large language model trained by OpenAI. Follow the user's instructions carefully. Respond using markdown.",
          },
          ...newMessages,
        ],
        {
          maxTokens: 1024,
        }
      );
      for await (const event of events) {
        for (const choice of event.choices) {
          const delta = choice.delta?.content;
          if (delta) {
            controller.enqueue(encoder.encode(delta));
          }
        }
      }
      controller.close();
    },
  });
  return new Response(stream);
}

本地 7890 是我的 clash 代理软件的端口,但是我把 clash 禁用系统代理也没用,关了也没用,重启电脑也没用。已经找了好久也没找到原因。求一个大神帮助我,成功解决可以给个小红包,绝不食言。

743 次点击
所在节点    前端开发
1 条回复
Richardon
73 天前
考虑一下 Hyper-V 端口占用的可能性

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1018340

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX