Spaces:
Paused
Paused
File size: 1,117 Bytes
8d1819a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
from python.helpers import persist_chat, tokens
from python.helpers.extension import Extension
from agent import LoopData
import asyncio
from python.helpers.log import LogItem
from python.helpers import log
import math
from python.extensions.before_main_llm_call._10_log_for_stream import build_heading, build_default_heading
class LogFromStream(Extension):
async def execute(self, loop_data: LoopData = LoopData(), text: str = "", **kwargs):
# thought length indicator
pipes = "|" * math.ceil(math.sqrt(len(text)))
heading = build_heading(self.agent, f"Reasoning.. {pipes}")
# create log message and store it in loop data temporary params
if "log_item_generating" not in loop_data.params_temporary:
loop_data.params_temporary["log_item_generating"] = (
self.agent.context.log.log(
type="agent",
heading=heading,
)
)
# update log message
log_item = loop_data.params_temporary["log_item_generating"]
log_item.update(heading=heading, reasoning=text)
|