Comments (2)
To address the slow initialization time of BM25Retriever
with a document store, consider these optimizations:
- Adjust
similarity_top_k
: Lowering this value can reduce computation during retrieval, potentially affecting initialization time. - Optimize Tokenizer: Using a simpler or more efficient tokenizer could speed up corpus processing.
- Corpus Preparation: Optimizing how the corpus is prepared, through more efficient text processing or parallelization, could reduce initialization time.
- Data Loading Strategy: Efficient data loading or preprocessing can lead to performance improvements.
Switching to MongoDBAtlasBM25Retriever
might offer faster initialization if it leverages MongoDB Atlas's infrastructure more efficiently than your current setup. This could include optimizations specific to MongoDB Atlas, such as efficient query execution plans. However, the actual improvement depends on various factors like your MongoDB Atlas configuration, dataset size and complexity, and network connection efficiency.
For detailed implementation and further optimizations, reviewing the base code for both BM25Retriever and MongoDBAtlasBM25Retriever could provide more insights into potential optimizations.
Details
Sources
- llama-index-integrations/retrievers/llama-index-retrievers-mongodb-atlas-bm25-retriever/llama_index/retrievers/mongodb_atlas_bm25_retriever/base.py
- llama-index-integrations/retrievers/llama-index-retrievers-bm25/llama_index/retrievers/bm25/base.py
- llama-index-legacy/llama_index/legacy/retrievers/bm25_retriever.py
About Dosu
This response is meant to be useful and save you time. It is not meant to be a precise solution, but rather a starting point for your own research.
Help me be more useful! Please leave a 👍 if this is helpful and 👎 if it is irrelevant.
To continue the conversation, mention @dosu.
from llama_index.
There's no way to make it faster that I know of. It's loading all the nodes from the docstore that can be slow.
You can get those nodes another way if you want, and pass them in instead of a docstore
from llama_index.
Related Issues (20)
- [Bug]: AttributeError: 'AzureOpenAIMultiModal' object has no attribute 'predict' HOT 3
- [Bug]: Documentation for guidance_pydantic is out of date HOT 1
- [Question]: Excessive content returned by the Chat engine, How can I get it to not match so much? HOT 6
- [Bug]: While using the AzureAIVectorStore for retrieval options via existing index, it's failing due to "the JSON object must be str, bytes or bytearray, not dict" HOT 5
- [Bug]: Errors occur in llama-index-embeddings-azure-openai version 0.1.9 when using azure_ad without setting the API key HOT 2
- Elasticsearch embedding retireval issue HOT 10
- [Question]: Does LLamaIndex retriever implicitly filters/slices data based on metadata? HOT 5
- [Question]: llama-index-embeddings-huggingface without torch and cudnn librarires HOT 3
- cv-assistant
- response generation issue using elasticsearch HOT 5
- Elasticsearch persistence HOT 6
- [Question]: Implementing randomized Azure resources for indexing with VectorStoreIndex in asynchronous mode HOT 3
- [Question]: sent-len of sentence-spliter HOT 2
- [Bug]: System prompt has no effect using Ollama HOT 3
- API key for content summarization HOT 1
- [Question]: How to write production grade code HOT 3
- [Question]: Generate Only SQL Query HOT 3
- [Question]: how does llamaindex support large datasets? HOT 11
- [Bug]: MongoDBAtlasVectorSearch & VectorStoreIndex.from_vector_store are not working as expected HOT 5
- [Bug]: LanceDBVectorStore database size blows up on creation HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from llama_index.