const batchSize = 200;
let embeddings: any[] = [];
for (
let batchStart = 0;
batchStart < chunks.length;
batchStart += batchSize
) {
const batchEnd = Math.min(batchStart + batchSize, chunks.length);
const batchChunks = chunks.slice(batchStart, batchEnd);
const batchEmbeddings = await Promise.all(
batchChunks
.flatMap((chunk, index) =>
[...Array(Math.ceil(chunk.content.length / 8000))].map(
(_, i) => ({
chunk,
index: index * Math.ceil(chunk.content.length / 8000) + i,
content: chunk.content.slice(i * 8000, (i + 1) * 8000),
})
)
)
.map(async ({ chunk, index, content }) => {
const { embedding } = await embed({
model: openai.embedding("text-embedding-3-small"),
value: content,
});
return { chunk, index, embedding };
})
);
embeddings.push(...batchEmbeddings);
}
While generating embeddings like this, I am getting an error which says Please try again after some time. What can be the cause of the error? I am using it with vercel ai sdk.