Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
55 lines
1.7 KiB
Python
55 lines
1.7 KiB
Python
import time
|
|
from aworld.core.common import ActionModel, Observation
|
|
from aworld.replay_buffer.base import (
|
|
DataRow,
|
|
DefaultConverter,
|
|
ReplayBuffer,
|
|
ExpMeta,
|
|
Experience,
|
|
RandomTaskSample
|
|
)
|
|
from aworld.replay_buffer.query_filter import QueryBuilder
|
|
from aworld.logs.util import logger
|
|
|
|
|
|
buffer = ReplayBuffer()
|
|
|
|
|
|
def write_data():
|
|
for task_id in range(5):
|
|
for i in range(10):
|
|
task_id = f"task_{task_id}"
|
|
agent_id = f"agent_{i+1}"
|
|
step = i + 1
|
|
execute_time = time.time() + i
|
|
row = DataRow(
|
|
exp_meta=ExpMeta(
|
|
task_id=task_id,
|
|
task_name="default_task_name",
|
|
agent_id=agent_id,
|
|
step=step,
|
|
execute_time=execute_time,
|
|
),
|
|
exp_data=Experience(state=Observation(),
|
|
actions=[ActionModel()])
|
|
)
|
|
buffer.store(row)
|
|
|
|
|
|
def read_data():
|
|
query = QueryBuilder().eq("exp_meta.task_id", "task_1").build()
|
|
datas = buffer.sample_task(query_condition=query,
|
|
sampler=RandomTaskSample(),
|
|
converter=DefaultConverter(),
|
|
batch_size=2)
|
|
for data in datas:
|
|
logger.info(f"task_1 data: {data}")
|
|
|
|
query = QueryBuilder().eq("exp_meta.agent_id", "agent_5").build()
|
|
datas = buffer.sample_task(query_condition=query,
|
|
sampler=RandomTaskSample(),
|
|
converter=DefaultConverter(),
|
|
batch_size=2)
|
|
for data in datas:
|
|
logger.info(f"agent_5 data: {data}")
|