mirror of
https://github.com/agentscope-ai/ReMe.git
synced 2026-08-28 05:25:04 +00:00
[bugfix] BaseExperience -> TextExperience
This commit is contained in:
parent
e7edb395e6
commit
2bc5a6d67a
9 changed files with 255 additions and 9 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -26,4 +26,5 @@ build/*
|
|||
*.egg-info/*
|
||||
cookbook/appworld/data/*
|
||||
cookbook/appworld/experiments/*
|
||||
cookbook/appworld/exp_result/*
|
||||
cookbook/appworld/exp_result/*
|
||||
file_vector_store/*
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
## 📰 What's New
|
||||
- **[2025-08]** 🎉 ExperienceMaker v0.1.0 is now available on [PyPI](https://pypi.org/project/experiencemaker/)!
|
||||
- **[2025-07]** 📚 Complete documentation and quick start guides released
|
||||
- **[2025-07]** 🚀 Multi-backend vector store support (Elasticsearch & ChromaDB)
|
||||
- **[2025-06]** 🚀 Multi-backend vector store support (Elasticsearch & ChromaDB)
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -55,3 +55,4 @@ Enable AI to naturally become stronger through everyday work, rather than wastin
|
|||
- [ ] refine readme @jinli
|
||||
|
||||
- [ ] integrate into beyond-agent @jinli
|
||||
- [ ] rm workspace_id in code
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
0
experience_store/bfcl_v1.jsonl.py
Normal file
0
experience_store/bfcl_v1.jsonl.py
Normal file
|
|
@ -65,7 +65,7 @@ class FailureExtractionOp(BaseOp):
|
|||
experiences = []
|
||||
|
||||
for exp_data in experiences_data:
|
||||
experience = BaseExperience(
|
||||
experience: BaseExperience = TextExperience(
|
||||
workspace_id=self.context.request.workspace_id,
|
||||
when_to_use=exp_data.get("when_to_use", exp_data.get("condition", "")),
|
||||
content=exp_data.get("experience", ""),
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ from loguru import logger
|
|||
from experiencemaker.enumeration.role import Role
|
||||
from experiencemaker.op import OP_REGISTRY
|
||||
from experiencemaker.op.base_op import BaseOp
|
||||
from experiencemaker.schema.experience import BaseExperience, ExperienceMeta
|
||||
from experiencemaker.schema.experience import BaseExperience, ExperienceMeta, TextExperience
|
||||
from experiencemaker.schema.message import Message, Trajectory
|
||||
from experiencemaker.schema.response import SummarizerResponse
|
||||
from experiencemaker.utils.op_utils import merge_messages_content, parse_json_experience_response, get_trajectory_context
|
||||
|
|
@ -59,12 +59,12 @@ class SuccessExtractionOp(BaseOp):
|
|||
outcome="successful"
|
||||
)
|
||||
|
||||
def parse_experiences(message: Message) -> List[BaseExperience]:
|
||||
def parse_experiences(message: Message) -> List[TextExperience]:
|
||||
experiences_data = parse_json_experience_response(message.content)
|
||||
experiences = []
|
||||
|
||||
for exp_data in experiences_data:
|
||||
experience = BaseExperience(
|
||||
experience = TextExperience(
|
||||
workspace_id=self.context.request.workspace_id,
|
||||
when_to_use=exp_data.get("when_to_use", exp_data.get("condition", "")),
|
||||
content=exp_data.get("experience", ""),
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
import datetime
|
||||
from abc import ABC
|
||||
from typing import List
|
||||
from uuid import uuid4
|
||||
|
||||
from loguru import logger
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from experiencemaker.schema.vector_node import VectorNode
|
||||
|
|
@ -17,7 +19,7 @@ class ExperienceMeta(BaseModel):
|
|||
self.modified_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
||||
|
||||
|
||||
class BaseExperience(BaseModel):
|
||||
class BaseExperience(BaseModel, ABC):
|
||||
workspace_id: str = Field(default="")
|
||||
|
||||
experience_id: str = Field(default_factory=lambda: uuid4().hex)
|
||||
|
|
@ -101,8 +103,8 @@ def vector_node_to_experience(node: VectorNode) -> BaseExperience:
|
|||
return KnowledgeExperience.from_vector_node(node)
|
||||
|
||||
else:
|
||||
raise RuntimeError(f"experience type {experience_type} not supported")
|
||||
|
||||
logger.warning(f"experience type {experience_type} not supported")
|
||||
return TextExperience.from_vector_node(node)
|
||||
|
||||
if __name__ == "__main__":
|
||||
e1 = TextExperience(
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue