ChuanhuChatGPT icon indicating copy to clipboard operation
ChuanhuChatGPT copied to clipboard

[本地部署] 未知名的错误,只提示了一个Error

Open wz36125 opened this issue 1 year ago • 3 comments

错误描述

和ai对话了几句代码的问题,并由我给出代码后开始报错Error,报错以后无法继续进行对话。

复现操作

  1. 正常完成本地部署
  2. 在对话框中要求 ChatGPT 检查代码问题 和ai聊的代码↓
const canvas = document.getElementById("canvas");
  console.log(canvas)
  canvas.width = canvas.clientWidth;
  canvas.height = canvas.clientHeight;
  const gl = canvas.getContext("webgl2",{ alpha: true });
  console.log(gl);
  const vsSource = `
  attribute vec2 aPosition;
  attribute vec2 aTexCoord;
  uniform vec2 uResolution;
  varying vec2 vTexCoord;
  void main() {
    vec2 zeroToOne = aPosition / uResolution;
    vec2 zeroToTwo = zeroToOne * 2.0;
    vec2 clipSpace = zeroToTwo - 1.0;
    gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1);
    vTexCoord = aTexCoord;
  }
`
  const fsSource = `
  precision mediump float;
  uniform vec4 uColor1;
  uniform vec4 uColor2;
  uniform sampler2D uSampler;
  varying vec2 vTexCoord;
  void main() {
    vec4 tex = texture2D(uSampler, vTexCoord);
    vec4 blend = mix(uColor1, uColor2, tex.a);
    gl_FragColor = vec4(blend.rgb, 1.0);
  }
`
  const vertexShader = gl.createShader(gl.VERTEX_SHADER)
  gl.shaderSource(vertexShader, vsSource)
  gl.compileShader(vertexShader)
  const fragmentShader = gl.createShader(gl.FRAGMENT_SHADER)
  gl.shaderSource(fragmentShader, fsSource)
  gl.compileShader(fragmentShader)
  const program = gl.createProgram()
  gl.attachShader(program, vertexShader)
  gl.attachShader(program, fragmentShader)
  gl.linkProgram(program)
  const positions = [
    10, 20,
    80, 20,
    10, 70,
    10, 70,
    80, 20,
    80, 70,
    10, 40,
    80, 40
  ]
  const texCoords = [
    0, 0,
    1, 0,
    0, 1,
    0, 1,
    1, 0,
    1, 1,
    0, 0.5,
    1, 0.5
  ]
  const positionBuffer = gl.createBuffer()
  gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer)
  gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(positions), gl.STATIC_DRAW)
  const texCoordBuffer = gl.createBuffer()
  gl.bindBuffer(gl.ARRAY_BUFFER, texCoordBuffer)
  gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(texCoords), gl.STATIC_DRAW)
  const image = new Image()
  image.onload = function () {
    const texture = gl.createTexture()
    gl.bindTexture(gl.TEXTURE_2D, texture)
    gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image)
    gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR)
    gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR)
    gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE)
    gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE)
    const positionLocation = gl.getAttribLocation(program, "aPosition")
    gl.enableVertexAttribArray(positionLocation)
    gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer)
    gl.vertexAttribPointer(positionLocation, 2, gl.FLOAT, false, 0, 0)
    const texCoordLocation = gl.getAttribLocation(program, "aTexCoord")
    gl.enableVertexAttribArray(texCoordLocation)
    gl.bindBuffer(gl.ARRAY_BUFFER, texCoordBuffer)
    gl.vertexAttribPointer(texCoordLocation, 2, gl.FLOAT, false, 0, 0)
    const color1Location = gl.getUniformLocation(program, "uColor1")
    gl.uniform4f(color1Location, 1, 0, 0, 1)
    const color2Location = gl.getUniformLocation(program, "uColor2")
    gl.uniform4f(color2Location, 0, 1, 0, 1)
    const resolutionLocation = gl.getUniformLocation(program, "uResolution")
    gl.uniform2f(resolutionLocation, canvas.width, canvas.height)
    gl.clearColor(0, 0, 0, 0)
    gl.clear(gl.COLOR_BUFFER_BIT)
    gl.useProgram(program)
    gl.drawArrays(gl.TRIANGLES, 0, positions.length / 2)
  }
  image.src = "test.png";

在我给出这段代码后,界面会出现一大段空白,具体看下面的截图

错误截图

截图

终端(控制台)中的错误报告

如果可以,请复制终端中的主要错误报告。

Traceback (most recent call last):
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\gradio\routes.py", line 384, in run_predict
    output = await app.get_blocks().process_api(
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\gradio\blocks.py", line 1032, in process_api
    result = await self.call_function(
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\gradio\blocks.py", line 858, in call_function
    prediction = await anyio.to_thread.run_sync(
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\anyio\to_thread.py", line 31, in run_sync
    return await get_asynclib().run_sync_in_worker_thread(
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\anyio\_backends\_asyncio.py", line 937, in run_sync_in_worker_thread
    return await future
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\anyio\_backends\_asyncio.py", line 867, in run
    result = context.run(func, *args)
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\site-packages\gradio\utils.py", line 448, in async_iteration
    return next(iterator)
  File "D:\devTool\ChuanhuChatGPT-main\utils.py", line 211, in predict
    for chatbot, history, status_text, token_count in iter:
  File "D:\devTool\ChuanhuChatGPT-main\utils.py", line 163, in stream_predict
    chunk = json.loads(chunk[6:])
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\json\__init__.py", line 346, in loads
    return _default_decoder.decode(s)
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\K\AppData\Local\Programs\Python\Python310\lib\json\decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

运行环境

桌面系统

请填写以下列表:

  • OS: [Windows10 21H2]
  • Browser: [Chrome,]

运行依赖

gradio version:3.20.0
python version:3.10.5

wz36125 avatar Mar 14 '23 03:03 wz36125

并不是项目的开发者,只是给您一些建议:

  • 核心报错为 chunk = json.loads(chunk[6:]) 代表错误发生在 api 反馈结果异常上。
  • 如果您可以排除网络异常、api_key失效等问题,我认为问题可能出现在您的这条提问本身的token数量超过了api所能接受的最大token数量,您可以尝试分段输入代码看看该错误是否还会出现。
  • 如果确实因为这个问题的话,您可以考虑打上 bug 或 feature request 的tag

tuteng0915 avatar Mar 14 '23 05:03 tuteng0915

相似 issue:

  • #94
  • #145

Keldos-Li avatar Mar 14 '23 14:03 Keldos-Li

最新版代码可以打印这里的具体报错了

GaiZhenbiao avatar Mar 15 '23 00:03 GaiZhenbiao

image

最新版代码没有问题

GaiZhenbiao avatar Mar 18 '23 11:03 GaiZhenbiao