BullMQ
The Redis-backed queue layer that runs document embedding jobs asynchronously.
TL;DR
Redis queue for async document embedding jobs.
Quick facts
- Category
- AI & knowledge management
- Product tie-in
- KobiGPT RAG platform
- Related
- See compare and tools pages
- Locale
- TR and EN site
Why teams choose KobiGPT
- Understand terms before evaluating vendors.
- Link concepts to KobiGPT features (RAG, Kobi Kredi).
- Share glossary links with procurement and legal.
- Explore assistant use cases next.
Product facts
- Ücretsiz plan
- 100 doküman · 2 departman · 120 Kobi/ay(PLAN_CONFIG)
- Starter
- 1000 doküman · 5 departman · 1000 Kobi/ay(PLAN_CONFIG)
- Pro
- 12500 doküman · 25 departman · 12500 Kobi/ay(PLAN_CONFIG)
Why a queue is needed
Work sits between uploading a document and having it searchable: text is extracted, split into chunks, an embedding call is made per chunk, and vectors are written. On large files this can take minutes.
Doing that synchronously inside an HTTP request would block the user and risk timeouts. A queue moves the work to the background; the user completes the upload and document status advances as processing proceeds.
KobiGPT’s document statuses reflect that progress: pending, processing, embedding, indexing, completed, and failed. The user can see which stage a file is in.
Behaviour during bulk upload
The queue proves its value during bulk upload. When hundreds of documents arrive at once the system does not stall; jobs are enqueued and workers consume them at their own capacity.
This also respects the embedding provider’s rate limits. Calls are paced, and when the provider returns a transient error the job is retried, so a document can still complete rather than failing.
Retry logic is critical here. Without a queue, a momentary network error leaves a document permanently failed; with one, the same error becomes an invisible delay.
Monitoring and troubleshooting
The queue is a component that needs observation. A document stuck in processing or embedding may mean the queue is backed up, a worker has died, or the provider is unreachable.
Document status is therefore not only user-facing information but an operational signal. Requeuing stuck jobs is part of normal maintenance.
In a self-hosted deployment Redis and the worker processes run in your infrastructure, making capacity, persistence settings, and monitoring your responsibility.
Applying Why a queue is needed in a controlled workflow
A useful way to evaluate bullmq is to follow one real question from the source document to the final answer. Record which file was selected, what context reached the model, and what a reviewer would need to verify. This turns a definition into an operational check and makes the result comparable across teams.
The same check should include ownership and change management. Decide who updates the relevant documents, how an outdated result is reported, and which access boundary applies. KobiGPT can provide the assistant and the cited document context, but the organisation still owns the source material, permissions, and the decision made from the answer.
FAQ
What is BullMQ in practice?
Redis queue for async document embedding jobs.
Does KobiGPT use this?
See product docs and feature pages for implementation details.
More reading?
Visit our blog and FAQ.
Accuracy disclaimer?
Educational content; verify for compliance decisions.
Why is a document not searchable immediately?
Text extraction, chunking, and embedding run asynchronously in the queue; the document enters retrieval scope once its status is completed.
What happens if an upload fails?
Transient errors are retried. On a permanent error the document moves to failed status and can be requeued.
Comparison
| Feature | KobiGPT | Alternative |
|---|---|---|
| SME focus | Yes | N/A |
| Citations | When using RAG | N/A |
| Glossary depth | Growing | N/A |
| Tools | Interactive | N/A |