Add OllamaTextVectorizer for local embedding workflows
Open
Nobody has claimed this yet.
enhancement
- Dominant language
- Python
- Stars
- 427
- Forks
- 101
- Avg merge
- 6d 3h
- Merged PRs (30d)
- 20
Description
Summary
Add an OllamaTextVectorizer to support local embedding models without external API keys.
Level: Intermediate
Current State
- RedisVL supports many hosted providers and local HF models.
- Ollama is a common local setup but has no first-class RedisVL vectorizer.
Proposed Change
- Implement
OllamaTextVectorizerinredisvl/utils/vectorize/text/. - Register provider in vectorizer enum/factory exports.
- Add optional dependency handling and clear startup errors.
- Add docs snippet and tests (mocked plus optional integration gate).
Definition of Done
- Ollama vectorizer can embed single and batch text.
- Optional dependency behavior is clear and non-breaking.
- Unit tests pass; optional integration path documented.
Out of Scope
- Supporting every Ollama model/task variant in the first pass.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in redisvl/utils/vectorize/text/ and inspect existing hosted-provider and local Hugging Face vectorizers, then trace the vectorizer enum, factory, and exports. Add the Ollama provider with single and batch embedding, clear optional-dependency startup errors, mocked unit tests, and a documented optional integration path; the definition of done is the stated unit-test and documentation behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ollama, python
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100