Stores conversation outputs as embeddings for context-aware retrieval.
memory_processor.py: Parses LLM's output, builds chunks, and stores them in Pinecone.config.py: Configuration for embedding model and Pinecone namespace.error_handling.py: Error handling for Pinecone operations (only needed for full pipeline, not for test_multi_retrieval.py)Query/Answer/Evidence format.04_vectoredb/retriever_multi.py.from memory_processor import store_memory_sync
raw_output = '''
Query: "What is the patient's age?"
Answer: The patient is 45 years old.
Evidence: Patient is a 45-year-old male.
'''
# Automatically checks for duplicates before storing
result = store_memory_sync(raw_output, pinecone_index)
if result:
print(f"Stored: {result['chunk_id']}")
else:
print("Skipped (duplicate or error)")
Adjust thresholds in 04_vectoredb/config.py:
MEMORY_MIN_SCORE: Minimum impact (default 0.4)MEMORY_BOOST: Ranking boost (default 0.05)1. LLM generates answer
2. memory_processor parses & embeds
3. Checks Pinecone for duplicates (>0.95)
4. Stores if unique
5. Future queries retrieve this memory via retriever_multi.py