[dev] rename config worker name

This commit is contained in:
jinli.yl 2024-07-08 17:07:27 +08:00
parent 0a526f4d94
commit a52a2fae0f
3 changed files with 59 additions and 28 deletions

View file

@ -1,11 +1,13 @@
global_config:
language: cn
max_workers: 5
memory_chat:
cli_memory_chat:
class: chat.cli_memory_chat
memory_service: memory_chat_service
generation_model: dashscope_generation
memory_service:
memory_chat_service:
class: memory.service.chat_memory_service
@ -18,40 +20,42 @@ memory_service:
description: "read session messages of the user"
read_memory:
class: memory.operation.read_memory
workflow: set_query_worker,retrieve_store_worker,[extract_time_worker|semantic_rank_worker],fuse_rerank_worker
workflow: set_query,retrieve_memory1,[extract_time|semantic_rank],fuse_rerank
description: "read related memories of the user"
list_memory:
class: memory.operation.read_memory
workflow: set_query_worker,retrieve_store_worker,print_memory_worker
workflow: set_query,retrieve_memory2,print_memory
description: "read all memories of the user"
write_memory:
class: memory.operation.write_memory
workflow: info_filter_worker,[get_observation_worker|get_observation_with_time_worker],contra_repeat_worker,store_memory_worker
workflow: info_filter,load_memory1,[get_observation|get_observation_with_time],contra_repeat,store_memory
description: "write observation memories of the user"
interval_time: 60
summary_memory:
class: memory.operation.summary_memory
workflow: load_memory_worker,get_reflection_subject_worker,update_insight_worker,long_contra_repeat_worker,summary_collect_worker
workflow: load_memory2,get_reflection_subject,update_insight,long_contra_repeat,store_memory
description: "summary observation memories of the user"
interval_time: 300
worker:
dummy_worker:
dummy:
class: memory.worker.dummy_worker
generation_model: dashscope_generation
embedding_model: dashscope_embedding
rank_model: dashscope_rank
set_query_worker:
set_query:
class: memory.worker.read.set_query_worker
retrieve_store_worker:
class: memory.worker.read.retrieve_store_worker
retrieve_memory1:
class: memory.worker.read.retrieve_memory_worker
retrieve_obs_top_k: 100
retrieve_ins_pf_top_k: 100
extract_time_worker:
retrieve_expired_top_k: 0
extract_time:
class: memory.worker.read.extract_time_worker
generation_model_top_k: 1
semantic_rank_worker:
semantic_rank:
class: memory.worker.read.semantic_rank_worker
fuse_rerank_worker:
fuse_rerank:
class: memory.worker.read.fuse_rerank_worker
fuse_score_threshold: 0.1
fuse_ratio_dict:
@ -61,41 +65,63 @@ worker:
insight: 2.0
fuse_time_ratio: 2.0
fuse_rerank_top_k: 10
print_memory_worker:
retrieve_memory2:
class: memory.worker.read.retrieve_memory_worker
retrieve_obs_top_k: 100
retrieve_ins_pf_top_k: 100
retrieve_expired_top_k: 100
print_memory:
class: memory.worker.read.print_memory_worker
info_filter_worker:
info_filter:
class: memory.worker.write.info_filter_worker
generation_model: dashscope_generation
info_filter_msg_max_size: 200
generation_model_top_k: 1
get_observation_worker:
load_memory1:
class: memory.worker.write.load_memory_worker
retrieve_not_reflected_top_k: 0
retrieve_not_updated_top_k: 0
retrieve_insight_top_k: 0
today_obs_top_k: 100
get_observation:
class: memory.worker.write.get_observation_worker
generation_model: dashscope_generation
generation_model_top_k: 1
get_observation_with_time_worker:
get_observation_with_time:
class: memory.worker.write.get_observation_with_time_worker
generation_model: dashscope_generation
generation_model_top_k: 1
contra_repeat_worker:
contra_repeat:
class: memory.worker.write.contra_repeat_worker
generation_model: dashscope_generation
generation_model_top_k: 1
retrieve_top_k: 30
contra_repeat_max_count: 50
store_memory_worker:
store_memory:
class: memory.worker.write.store_memory_worker
load_memory_worker:
class: memory.worker.summary.load_memory_worker
get_reflection_subject_worker:
store_key: all
load_memory2:
class: memory.worker.write.load_memory_worker
retrieve_not_reflected_top_k: 100
retrieve_not_updated_top_k: 100
retrieve_insight_top_k: 100
today_obs_top_k: 0
get_reflection_subject:
class: memory.worker.summary.get_reflection_subject_worker
retrieve_top_k: 100
reflect_obs_cnt_threshold: 32
update_insight_worker:
generation_model_top_k: 1
update_insight:
class: memory.worker.summary.update_insight_worker
long_contra_repeat_worker:
update_insight_threshold: 0.1
generation_model_top_k: 1
update_insight_max_thread: 10
long_contra_repeat:
class: memory.worker.summary.long_contra_repeat_worker
summary_collect_worker:
class: memory.worker.summary.summary_collect_worker
long_contra_repeat_top_k: 2
long_contra_repeat_threshold: 0.1
generation_model_top_k: 1
models:
dashscope_generation:
class: models.llama_index_generation_model
@ -109,11 +135,13 @@ models:
class: models.llama_index_rank_model
module_name: dashscope_rank
model_name: gte-rerank
memory_store:
class: storage.llama_index_es_memory_store
embedding_model: dashscope_embedding
index_name: memory_index
es_url: http://localhost:9200
use_hybrid: false
monitor:
class: storage.dummy_monitor

View file

@ -8,6 +8,8 @@ class SetQueryWorker(MemoryBaseWorker):
def _run(self):
if "query" in self.chat_kwargs:
""" cli test query
"""
query = self.chat_kwargs["query"]
query_timestamp = int(datetime.datetime.now().timestamp())
else:

View file

@ -12,9 +12,7 @@ from memory_scope.utils.logger import Logger
class _AsyncDenseVectorStrategy(AsyncDenseVectorStrategy):
def _hybrid(
self, query: str, knn: Dict[str, Any], filter: List[Dict[str, Any]], top_k: int,
) -> Dict[str, Any]:
def _hybrid(self, query: str, knn: Dict[str, Any], filter: List[Dict[str, Any]], top_k: int) -> Dict[str, Any]:
# Add a query to the knn query.
# RRF is used to even the score from the knn query and text query
# RRF has two optional parameters: {'rank_constant':int, 'window_size':int}
@ -52,8 +50,11 @@ class _AsyncDenseVectorStrategy(AsyncDenseVectorStrategy):
vector_field: str,
k: int,
num_candidates: int,
filter: List[Dict[str, Any]] = [],
filter: List[Dict[str, Any]] = None,
) -> Dict[str, Any]:
if filter is None:
filter = []
knn = {
"filter": filter,
"field": vector_field,