fix: Remove OpenAI dependency for memory reset when using alternative LLMs

- Add environment variables for default embedding provider
- Support Ollama as default embedding provider
- Add tests for memory reset with different providers
- Update documentation

Fixes #2023

Co-Authored-By: Joe Moura <joao@crewai.com>
This commit is contained in:
Devin AI
2025-02-05 11:09:36 +00:00
parent 649414805d
commit 823f22a601
4 changed files with 112 additions and 24 deletions

View File

@@ -34,3 +34,43 @@ crewai reset-memories -a
```
The memory system will use the configured embedding provider for all operations, including memory reset.
## Troubleshooting
### Common Issues
1. OpenAI API Key Missing
```bash
# Error: EmbeddingConfigurationError: Invalid configuration for OpenAI provider
# Solution: Set your OpenAI API key
export OPENAI_API_KEY=your_key
```
2. Ollama Connection Issues
```bash
# Error: Failed to connect to Ollama server
# Solution: Ensure Ollama is running and accessible
curl http://localhost:11434/api/embeddings
```
3. Memory Reset Permission Issues
```bash
# Error: Failed to reset memory (readonly database)
# Solution: Check file permissions or use custom path
export CREWAI_MEMORY_PATH=/path/with/write/access
```
### Custom Storage Path
You can configure a custom storage path for memory files:
```python
from crewai.memory import ShortTermMemory
memory = ShortTermMemory(path="/custom/storage/path")
```
This is useful when:
- Default storage location has permission issues
- You want to isolate memory storage for different crews
- You need to manage memory persistence manually