You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Numba JitClass使用含字符串类型的Record时运行报错的问题求助

Numba JitClass使用含字符串类型的Record时运行报错的问题求助

各位好,我最近在使用Numba的JitClass时碰到了个棘手的问题:我定义的Record类型里包含了字符串(bytes类型)字段v3,但运行代码时总会报错,试了好几种调整都没解决,特意来求助大家。

我的v3变量是字符串类型,下面这段代码无法正常执行,会抛出错误:

import numpy as np
import pandas as pd
from numba.experimental import jitclass
from numba import types
import os

os.environ['NUMBA_VERBOSE'] = '1'

# ----- BEGINNING OF THE MODIFIED PART ----- #
recordType = types.Record([
    ('v', {'type': types.int64, 'offset': 0, 'alignment': None, 'title': None}),
    ('v2', {'type': types.float64, 'offset': 8, 'alignment': None, 'title': None}),
    ('v3', {'type': types.bytes, 'offset': 16, 'alignment': None, 'title': None})
], 32, False)
spec = [
    ('data', types.Array(recordType, 1, 'C', False))
]
# ----- END OF THE MODIFIED PART ----- #

@jitclass(spec)
class Test:
    def __init__(self, data):
        self.data = data

    def loop(self):
        v = self.data['v']
        v2 = self.data['v2']
        v3 = self.data['v3']
        print("Inside loop:")
        print("v:", v)
        print("v2:", v2)
        print("v3:", v3)

我已经开启了NUMBA_VERBOSE日志来查看详细信息,但还是没搞明白问题出在哪。想请教下各位,是不是Numba的Record类型处理字符串有特殊规则?或者我的代码里哪里写错了?

备注:内容来源于stack exchange,提问作者tompal18

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 10:18:03