基本情况说明

应用功能:
读取本地文件,向量化后存储到本地文件数据库中。

开发框架:
langchain

嵌入模型:
text-embedding-v4

数据库
chroma

报错全部信息:
ValueError: status_code: 400 code: InvalidParameter message: <400> InternalError.Algo.InvalidParameter: Value error, batch size is invalid, it should not be larger than 10.: input.contents

报错情况说明

参考百炼控制台,最大行数有限制存在。
在这里插入图片描述

由于整个调用过程未显式传递batch_size参数,且整个调用过程由Chroma内部调用,导致问题不好定位。

解决方案:

将读取的文档内容进行分割,批量入库。

# 分批处理文档
batch_size = 10
for i in range(0, len(split_docs), batch_size):
    batch_docs = split_docs[i:i+batch_size]
    if i == 0:
        # 第一批文档创建数据库
        vectordb = Chroma.from_documents(
            documents=batch_docs,
            embedding=embedding,
            persist_directory=persist_directory
        )
    else:
        # 后续批次添加到数据库
        vectordb.add_documents(batch_docs)

说到最后

以上。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐