TypeError: ‘DataQueue‘ object is not iterable问题

以下TowHee示例代码,在本地运行总是报错:
p2 = (
pipe.input(‘text’)
.map(‘text’, ‘vec’, ops.image_text_embedding.clip(model_name=‘clip_vit_base_patch16’, modality=‘text’))
.map(‘vec’, ‘vec’, lambda x: x / np.linalg.norm(x))
.output(‘text’, ‘vec’)
)

DataCollection(p2(“A teddybear on a skateboard in Times Square.”)).show()
完整错误如下:
Traceback (most recent call last):
File “test1.py”, line 38, in
DataCollection(p(‘dog_01.jpg’)).show()
File “/home/xxx/.local/lib/python3.10/site-packages/towhee/functional/mixins/display.py”, line 148, in show
contents = [x for i, x in enumerate(self) if i < limit]
File “/home/xxx/.local/lib/python3.10/site-packages/towhee/functional/data_collection.py”, line 88, in iter
return iter(self._iterable)
TypeError: ‘DataQueue’ object is not iterable
在网络上查找错误,总是找不到问题所在,既然是示例代码,为何在我的本地环境会出错呢?还好我自己未放弃 ,折腾了好几天后,发现了问题所在。
在此示例代码中,有如下import语句:
from towhee import DataCollection
而在其他的示例代码中,发现了如下import方式:
from towhee.datacollection import DataCollection
看到这里,我几乎懵了,难道是import的问题。修改之后,果然错误消失。哎,这样的问题,实在是无处诉苦,怎么看出DataCollection还有不同的版本呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值