From d9622ab6b35907f56d82364f540cad24d78ec78b Mon Sep 17 00:00:00 2001 From: liubiren Date: Mon, 7 Sep 2026 19:59:52 +0800 Subject: [PATCH] 1 --- agent/application/pages/conversation.py | 7 ++++--- agent/application/states/conversation.py | 5 ++--- agent/application/states/models.py | 2 +- agent/application/workshop/book_flight.py | 12 ++++-------- agent/database.db | Bin 237568 -> 237568 bytes 5 files changed, 11 insertions(+), 15 deletions(-) diff --git a/agent/application/pages/conversation.py b/agent/application/pages/conversation.py index 09a390e..535ca45 100644 --- a/agent/application/pages/conversation.py +++ b/agent/application/pages/conversation.py @@ -371,6 +371,7 @@ def thinking(item: MessageHistoryItem) -> rx.Component: item.title, font_size="var(--prismui-font-size-1)", color="var(--prismui-color-3)", + class_name=rx.cond(item.is_running, "is_running", None), ), rx.icon( "chevron-right", @@ -455,9 +456,9 @@ def tool_call(item: MessageHistoryItem) -> rx.Component: ) -def output(item: MessageHistoryItem) -> rx.Component: +def text(item: MessageHistoryItem) -> rx.Component: """ - 输出 + 文本 :return: Component """ return rx.markdown( @@ -584,7 +585,7 @@ def message_history_item(item: MessageHistoryItem) -> rx.Component: (MessageType.USER_PROMPT, user_prompt(item)), (MessageType.THINKING, thinking(item)), (MessageType.TOOL_CALL, tool_call(item)), - (MessageType.OUTPUT, output(item)), + (MessageType.TEXT, text(item)), ), padding="0 16px", width="100%", diff --git a/agent/application/states/conversation.py b/agent/application/states/conversation.py index f888cd4..206a022 100644 --- a/agent/application/states/conversation.py +++ b/agent/application/states/conversation.py @@ -348,7 +348,6 @@ class ConversationState(rx.State): # 若等待流式输出则将等待流式输出设置为否 if conversation.awaiting_stream: conversation.awaiting_stream = False - print(event) match event: # ========== 开始事件 ========== case PartStartEvent( @@ -388,7 +387,7 @@ class ConversationState(rx.State): # 文本分片 case TextPart(content=content): # 构建消息实例 - message = Message(type=MessageType.OUTPUT, content=content) + message = Message(type=MessageType.TEXT, content=content) # 添加至消息字典 conversation.messages[message.id] = message # 将消息实例唯一标识与片段索引映射 @@ -466,7 +465,7 @@ class ConversationState(rx.State): case AgentRunEvent(content=content): # 构建消息实例 message = Message( - type=MessageType.OUTPUT, + type=MessageType.TEXT, content=content, ) # 添加至消息字典 diff --git a/agent/application/states/models.py b/agent/application/states/models.py index 1afeb88..aaa459c 100644 --- a/agent/application/states/models.py +++ b/agent/application/states/models.py @@ -38,7 +38,7 @@ class MessageType(StrEnum): USER_PROMPT = "user_prompt" THINKING = "thinking" TOOL_CALL = "tool_call" - OUTPUT = "output" + TEXT = "text" class Message(BaseModel): diff --git a/agent/application/workshop/book_flight.py b/agent/application/workshop/book_flight.py index 4cfa70a..6c75110 100644 --- a/agent/application/workshop/book_flight.py +++ b/agent/application/workshop/book_flight.py @@ -18,6 +18,7 @@ from pydantic_ai import ( RunUsage, UsageLimits, ) +from pydantic_ai.agent.abstract import S from pydantic_ai.messages import ( AgentStreamEvent, FunctionToolResultEvent, @@ -26,6 +27,7 @@ from pydantic_ai.messages import ( ToolReturnPart, ) from pydantic_ai.run import AgentRunResult, AgentRunResultEvent +from reflex.event import T from application.states.models import AgentRunEvent, NoResult from application.workshop.models import ( @@ -342,12 +344,6 @@ async def run_stream_events( case Flight(): yield AgentRunEvent(content="预定成功") - case DeferredToolRequests(approvals=approvals): - yield AgentRunResultEvent( - result=AgentRunResult( - output=DeferredToolRequests( - approvals=approvals - ) - ) - ) + case DeferredToolRequests(approvals=approvals) as t: + t.metadata = {"1": {"Success": "1"}} yield event diff --git a/agent/database.db b/agent/database.db index 63c6843ee907ba4dbc5c053138ba763db2738da2..c99a5dab614b8532591b3f59ef8b66e2ea4d2630 100644 GIT binary patch delta 450 zcmXZYOD_X)6b10Pcc$~7sZLvx3Q@0^MmOw)L~N8uJfc#QhStB&*GhusHE6U^d>s6|z;SRzx08?owx-BMu0Kq|fYnq!1)W!6V8;xl zT6SXd8s%=Mjl4EQUYx42uqxp|;xt=H8xk%vD!5Q~%cv}|S}`X4n1MHeepKv2QL88g zn$c>fg=Vvb7F#f0!H|uKFGAAfn*t?!Fo$B3$Kum{|NN{EMNH+VyQL? zoZ}vfzA6iUX8v)Dfq4fN?#wYJ{xEScmg=V9EAF6NUsuG6;Y+kXs=7Uos$l+YR6lcJ n6%FR`!c2Z)Sp#hC+xbVhzI^8|MHZcFv~ENhU)ul8_=bZ&y?ln} delta 478 zcmX}oO-mb56b9gX&dl69qccfV3YA1jVA2SZg$rpnZkmF{_%R_JEJ8Ia_bx<45M2Zm z6cZ+OvM8b}R|VtXT#Tgz-5JtW0xrZt(qG^YaN#7HZV%6S&&%1U_%ZyD+hK~|oiDRyp5%!t>7WX~BCG!0b zc!f0js_hrXJ6HJkaZJgsfh@xa-r^!j|kAWD_$Q@-+S7~ zAHCgo{t%E{>1@