Background
While configuring PowerMem and attempting to integrate SiliconFlow as a reranker, I found that .env.example.full does not mention the generic reranker provider or provide guidance on how to connect third-party rerank services (SiliconFlow, Xinference, vLLM, etc.). The code already supports this via the generic provider, but the configuration documentation does not reflect it.
Additionally, the embedding provider list in .env.example.full only mentions a subset of the actually supported providers (missing azure_openai, gemini, vertexai, together, aws_bedrock, zai), and some model defaults in the reranker section are outdated compared to the code.
Scope
-
Reranker section: Document the generic provider with clear explanation and configuration examples (SiliconFlow, Xinference, etc.), expand RERANKER_API_BASE_URL comments with per-provider defaults, and fix model name inconsistencies (jina-reranker-v3 is the actual default, not jina-reranker-v2-base-multilingual; zai default is rerank, not rerank-3-base).
-
Embedding section: Add all code-supported providers to EMBEDDING_PROVIDER list, add model examples for siliconflow, azure_openai, gemini, zai.
Motivation
- Users trying to integrate SiliconFlow, Xinference, or other standard rerank APIs cannot find any guidance in the configuration file
- The
generic provider is a powerful escape hatch that supports any OpenAI-compatible rerank endpoint, but is completely undocumented
- Several embedding providers implemented in
src/powermem/integrations/embeddings/config/providers.py are invisible to users who rely on .env.example.full for configuration reference
- Model defaults in comments diverge from the actual code defaults, which may confuse users
Background
While configuring PowerMem and attempting to integrate SiliconFlow as a reranker, I found that
.env.example.fulldoes not mention thegenericreranker provider or provide guidance on how to connect third-party rerank services (SiliconFlow, Xinference, vLLM, etc.). The code already supports this via thegenericprovider, but the configuration documentation does not reflect it.Additionally, the embedding provider list in
.env.example.fullonly mentions a subset of the actually supported providers (missingazure_openai,gemini,vertexai,together,aws_bedrock,zai), and some model defaults in the reranker section are outdated compared to the code.Scope
Reranker section: Document the
genericprovider with clear explanation and configuration examples (SiliconFlow, Xinference, etc.), expandRERANKER_API_BASE_URLcomments with per-provider defaults, and fix model name inconsistencies (jina-reranker-v3is the actual default, notjina-reranker-v2-base-multilingual;zaidefault isrerank, notrerank-3-base).Embedding section: Add all code-supported providers to
EMBEDDING_PROVIDERlist, add model examples forsiliconflow,azure_openai,gemini,zai.Motivation
genericprovider is a powerful escape hatch that supports any OpenAI-compatible rerank endpoint, but is completely undocumentedsrc/powermem/integrations/embeddings/config/providers.pyare invisible to users who rely on.env.example.fullfor configuration reference