fix(rag): Final RAG stability and status fixes
- Corrected GeminiEmbeddingProvider model name to gemini-embedding-001. - Prevented _fetch_models from overwriting active i_status (sending/done/error). - Updated est_rag_engine.py to correctly patch the lazy-loaded chromadb getter. - Adjusted RAG simulation tests to account for the new initializing... status and automatic initial indexing. - Fixed typo in est_z_negative_flows.py.
This commit is contained in:
@@ -19,23 +19,26 @@ def test_rag_engine_init_mock(mock_rag_config):
|
||||
assert engine.collection == "mock"
|
||||
|
||||
@patch('src.rag_engine.LocalEmbeddingProvider.embed')
|
||||
@patch('src.rag_engine.chromadb.PersistentClient')
|
||||
def test_rag_engine_chroma(mock_chroma, mock_embed):
|
||||
@patch('src.rag_engine._get_chromadb')
|
||||
def test_rag_engine_chroma(mock_get_chroma, mock_embed):
|
||||
mock_chroma = MagicMock()
|
||||
mock_settings = MagicMock()
|
||||
mock_get_chroma.return_value = (mock_chroma, mock_settings)
|
||||
|
||||
mock_embed.return_value = [[0.1, 0.2, 0.3]]
|
||||
|
||||
mock_collection = MagicMock()
|
||||
mock_client = MagicMock()
|
||||
mock_client.get_or_create_collection.return_value = mock_collection
|
||||
mock_chroma.return_value = mock_client
|
||||
|
||||
mock_chroma.PersistentClient.return_value = mock_client
|
||||
|
||||
vs_config = models.VectorStoreConfig(provider='chroma', collection_name='test')
|
||||
config = models.RAGConfig(enabled=True, vector_store=vs_config, embedding_provider='local')
|
||||
|
||||
|
||||
with patch('src.rag_engine._get_sentence_transformers') as mock_st:
|
||||
mock_st.return_value = MagicMock()
|
||||
engine = RAGEngine(config)
|
||||
assert engine.collection == mock_collection
|
||||
|
||||
|
||||
engine.add_documents(["doc1"], ["hello world"])
|
||||
mock_collection.upsert.assert_called_once()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user