eliza
eliza copied to clipboard
feat: add Heurist embedding model
Relates to:
Risks
Low - This PR adds a new embedding model provider (Heurist) with BAAI/bge-large-en-v1.5 as the default model. Changes are additive and follow existing patterns.
Background
What does this PR do?
This PR adds support for a new embedding provider called "Heurist" with the following changes:
- Adds HEURIST_EMBEDDING_MODEL configuration with BAAI/bge-large-en-v1.5 as default
- Integrates Heurist into the embedding provider system with 1024 dimension vectors
- Updates model configurations to use meta-llama/llama-3.3-70b-instruct and FLUX.1-dev
- Implements remote embedding functionality for the Heurist provider
What kind of change is this?
Features (non-breaking change which adds functionality) - Adds new embedding provider capability
Documentation changes needed?
My changes require a change to the project documentation to document the new Heurist embedding provider and its configuration options.
Testing
Where should a reviewer start?
- Check the .env.example file for the new HEURIST_EMBEDDING_MODEL configuration
- Review the embedding.ts changes for proper integration
- Verify the model configuration updates in the Models section
Detailed testing steps
- Configure HEURIST_EMBEDDING_MODEL in environment
- Test embedding generation with the new provider:
- Verify 1024-dimension vectors are generated correctly
- Confirm remote embedding functionality works
- Check fallback to BGE when appropriate
Screenshots
N/A - No UI changes involved
Deploy Notes
The following environment variables need to be configured:
- USE_HEURIST_EMBEDDING = true
- HEURIST_EMBEDDING_MODEL=BAAI/bge-large-en-v1.5
- HEURIST_API_KEY (if using remote embeddings)