Fixes#3597 - ChromaDB expects embedding functions to have a name() method
for validation. Added static method that returns 'watson' following the
same pattern as other embedding functions.
- Added comprehensive tests to verify the fix
- Ensures compatibility with ChromaDB validation requirements
- No regressions in existing Watson embedding functionality
Co-Authored-By: João <joao@crewai.com>
- introduce baseembeddingsprovider and helper for embedding functions
- add core embedding types and migrate providers, factory, and storage modules
- remove unused type aliases and fix pydantic schema error
- update providers with env var support and related fixes
- support nested config format with embedderconfig typeddict
- fix parsing for model/model_name compatibility
- add validation, typing_extensions, and improved type hints
- enhance embedding factory with env var injection and provider support
- add tests for openai, azure, and all embedding providers
- misc fixes: test file rename, updated mocking patterns