Skip to content

Commit 492ecf7

Browse files
EvenssTeingiRipcord55
authored
Remove pyseekdb (#243)
* feat: Add native hybird search (#197) * add sparse vector embedding * hybrid search add sparse vector search * add checking version logic * add qwen sparse vector * adjust weight * update sparse vector function * update sparse vector function * fix bug * fix bug * optimise function * optimise function * optimise function * optimise function * optimise function * optimise function * optimise function * fix bug * add migrate function * update alembic function * update alembic function * update alembic function * adjust file struct * update alembic * update version * optimise * fix bug * update * update schema update method * update schema update method * update schema update method * update schema update method * update schema update method * update migrate method * update migrate method * update env.example * update env.example * update migrate sparse vector * update migrate sparse vector * adjust threshold score logic * update remark * add guides and examples * add benchmark param * fix bug * fulltext parsers support * adjust enable sparse vector setting * adjust env.example * adjust docs * update version * fix bug * optimise check * adjust file construct * adjust file construct * add native search * add file * remove log * remove log * fix bug * update pyobvector * add rerank * adjust * add limit * adjust config * feat: User Profile Support native language output (#198) * support native language * support native language * add docs * Reconstruct LLM setting (#200) * feat(llm): enhance configuration management with pydantic-settings - Introduced a unified configuration system for LLM providers using pydantic-settings. - Added provider-specific settings for Anthropic, Azure, DeepSeek, Ollama, OpenAI, Qwen, Vllm, and Zai. - Improved environment variable handling and validation through Field and AliasChoices. - Removed legacy initialization methods in favor of a cleaner, more maintainable structure. - Updated LLMFactory to utilize the new provider registration mechanism. * chore: Update LLM configuration management and improve environment variable handling - Refactor LLM configuration imports to use BaseLLMConfig. - Replace direct attribute access with getattr for safer environment variable retrieval. - Remove deprecated LLMConfig and streamline related code for better maintainability. * refactor: unify configuration governance for agent, core, and server modules (#199) * Reconstruct setting in Rerank,Vector,Graph (#202) * feat(llm): enhance configuration management with pydantic-settings - Introduced a unified configuration system for LLM providers using pydantic-settings. - Added provider-specific settings for Anthropic, Azure, DeepSeek, Ollama, OpenAI, Qwen, Vllm, and Zai. - Improved environment variable handling and validation through Field and AliasChoices. - Removed legacy initialization methods in favor of a cleaner, more maintainable structure. - Updated LLMFactory to utilize the new provider registration mechanism. * chore: Update LLM configuration management and improve environment variable handling - Refactor LLM configuration imports to use BaseLLMConfig. - Replace direct attribute access with getattr for safer environment variable retrieval. - Remove deprecated LLMConfig and streamline related code for better maintainability. * feat: Enhance rerank configuration and integration - Introduced BaseRerankConfig for improved configuration management across rerank providers. - Updated rerank integration files to utilize the new base configuration structure. - Added support for additional configuration fields such as api_base_url and top_n. - Refactored rerank factory to accommodate new configuration handling and provider registration. - Removed deprecated RerankConfig and streamlined related code for better maintainability. - Updated API request handling in rerank classes to support custom HTTP clients. * * refactor(powermem): remove unused storage configuration management module - Removed `VectorStoreConfig` and `GraphStoreConfig` classes - Deleted associated validation logic and import statements - Streamlined codebase by eliminating unused components * feat(powermem): enhance sparse embedder configuration management - Introduced BaseSparseEmbedderConfig for unified sparse embedding configuration. - Updated MemoryConfig to utilize BaseSparseEmbedderConfig. - Refactored SparseEmbedderFactory to support new configuration handling. - Improved handling of sparse embedder settings across various components. * feat(powermem): enhance user profile storage with provider registration - Added a registry mechanism to UserProfileStoreBase for automatic provider registration. - Implemented class paths for OceanBase and SQLite user profile storage implementations. - Updated UserProfileStoreFactory to utilize the new registry for provider class retrieval. - Refactored imports to trigger auto-registration of user profile storage classes. - Improved handling of provider names in the factory for better compatibility. * feat(powermem): synchronize embedding model dimensions across configurations - Added logic to sync `embedding_model_dims` from the embedder to both `vector_store` and `graph_store` if not already set. - Updated `config_loader.py` and `configs.py` to ensure consistent embedding dimensions across components. * feat(powermem): enhance OceanBase configuration and query handling - Added `enable_native_hybrid` field to `OceanBaseConfig` for native hybrid search support. - Updated query handling in `OceanBaseVectorStore` to use a safe query format, preventing SQL injection risks. * oceanbase native language case (#220) * Oceanbase Native Hybrid Search Cases (#223) * oceanbase native language case * Oceanbase Native Hybrid Search Cases * Optimise searching in Intelligent mode And fix SILICONFLOW_LLM_BASE_URL bug (#224) * Enhance memory operations with background threading support - Added a global background thread pool for asynchronous memory updates and deletions in the Memory class. - Updated the handling of memory updates and deletions to submit tasks to the background executor, improving performance and responsiveness. * format * Enhance SiliconFlowConfig API key handling - Updated `SiliconFlowConfig` to improve API key and base URL handling by adding new validation aliases for better compatibility. * add enable_native_hybrid in benchmark * Enhance configuration management for OceanBase in config_loader.py - Added backward compatibility for OceanBase by constructing connection arguments from vector store configuration. - Updated unit tests to verify the inclusion of internal settings in the configuration. * disable env file * Fix unit test issues caused by setting changes (#228) * Enhance configuration management for OceanBase in config_loader.py - Added backward compatibility for OceanBase by constructing connection arguments from vector store configuration. - Updated unit tests to verify the inclusion of internal settings in the configuration. * disable env file * Fixed run failure caused by incorrect folder name * Fixed run failure caused by incorrect folder name (#229) * Enhance configuration management for OceanBase in config_loader.py - Added backward compatibility for OceanBase by constructing connection arguments from vector store configuration. - Updated unit tests to verify the inclusion of internal settings in the configuration. * disable env file * Fixed run failure caused by incorrect folder name * remove pyseekdb --------- Co-authored-by: jingshun.tq <35712518+Teingi@users.noreply.github.com> Co-authored-by: Chifang <40140008+Ripcord55@users.noreply.github.com>
1 parent 9c11d39 commit 492ecf7

File tree

5 files changed

+0
-313
lines changed

5 files changed

+0
-313
lines changed

pyproject.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ dependencies = [
3636
"slowapi>=0.1.9",
3737
"click>=8.0.0",
3838
"rank-bm25>=0.2.2",
39-
"pyseekdb>=1.0.0",
4039
"pyobvector>=0.2.24,<0.3.0",
4140
"jieba>=0.42.1",
4241
"azure-identity>=1.24.0",

src/powermem/storage/config/pyseekdb.py

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/powermem/storage/factory.py

Lines changed: 0 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -90,53 +90,6 @@ def get_supported_providers(cls) -> list:
9090
"""
9191
return list(BaseVectorStoreConfig._registry.keys())
9292

93-
# 2. Get config_cls from registry
94-
config_cls = BaseVectorStoreConfig.get_provider_config_cls(provider_name) or BaseVectorStoreConfig
95-
96-
# 3. Handle config parameter
97-
if isinstance(config, dict):
98-
# Convert dict to provider config instance
99-
provider_config = config_cls(**config)
100-
elif isinstance(config, BaseVectorStoreConfig):
101-
# Use config instance directly
102-
provider_config = config
103-
else:
104-
raise TypeError(f"config must be BaseVectorStoreConfig or dict, got {type(config)}")
105-
106-
# 4. Export to dict for VectorStore constructor
107-
config_dict = provider_config.model_dump(exclude_none=True)
108-
109-
# 5. Create VectorStore instance
110-
vector_store_class = load_class(class_path)
111-
return vector_store_class(**config_dict)
112-
113-
@classmethod
114-
def register_provider(cls, name: str, class_path: str, config_class=None):
115-
"""
116-
Register a new vector store provider.
117-
118-
Args:
119-
name (str): Provider name
120-
class_path (str): Full path to VectorStore class
121-
config_class: Configuration class for the provider (defaults to BaseVectorStoreConfig)
122-
"""
123-
if config_class is None:
124-
config_class = BaseVectorStoreConfig
125-
126-
# Register directly in BaseVectorStoreConfig registry
127-
BaseVectorStoreConfig._registry[name] = config_class
128-
BaseVectorStoreConfig._class_paths[name] = class_path
129-
130-
@classmethod
131-
def get_supported_providers(cls) -> list:
132-
"""
133-
Get list of supported providers.
134-
135-
Returns:
136-
list: List of supported provider names
137-
"""
138-
return list(BaseVectorStoreConfig._registry.keys())
139-
14093
@classmethod
14194
def reset(cls, instance):
14295
instance.reset()

src/powermem/storage/pyseekdb/__init__.py

Whitespace-only changes.

src/powermem/storage/pyseekdb/pyseekdb_store.py

Lines changed: 0 additions & 250 deletions
This file was deleted.

0 commit comments

Comments
 (0)