feat: 新增追问模式和iOS本地化,重构后端输出模型
This commit is contained in:
@@ -55,7 +55,7 @@ from core.agentscope.runtime.protocols import PipelineLike
|
||||
@dataclass(frozen=True)
|
||||
class StageExecutionResult:
|
||||
message: Msg
|
||||
payload: dict[str, Any]
|
||||
validated_output: WorkerAgentOutputLite | FollowUpOutput
|
||||
response_metadata: dict[str, Any]
|
||||
|
||||
|
||||
@@ -242,7 +242,7 @@ class AgentScopeRunner:
|
||||
derived_divination=derived_divination,
|
||||
language=language,
|
||||
)
|
||||
worker_output = worker_output_model.model_validate(worker_result.payload)
|
||||
worker_output = worker_result.validated_output
|
||||
await self._emit_step_event(
|
||||
pipeline=pipeline,
|
||||
run_input=run_input,
|
||||
@@ -284,9 +284,10 @@ class AgentScopeRunner:
|
||||
llm_config=stage_config.llm_config,
|
||||
tools=None,
|
||||
now_utc=datetime.now(timezone.utc),
|
||||
runtime_mode=runtime_mode.value,
|
||||
)
|
||||
|
||||
_, worker_payload_raw = await finalize_json_response(
|
||||
_, worker_payload = await finalize_json_response(
|
||||
model=tracking_model,
|
||||
formatter=formatter,
|
||||
base_messages=[Msg("system", system_prompt, "system"), *input_messages],
|
||||
@@ -294,7 +295,6 @@ class AgentScopeRunner:
|
||||
retries=2,
|
||||
language=language,
|
||||
)
|
||||
worker_payload = worker_output_model.model_validate(worker_payload_raw)
|
||||
response_metadata = self._llm_pricing_service.build_usage_metadata(
|
||||
model=stage_config.model_code,
|
||||
usage_summary=tracking_model.usage_summary(),
|
||||
@@ -312,9 +312,8 @@ class AgentScopeRunner:
|
||||
name=stage_config.agent_type.value,
|
||||
role="assistant",
|
||||
content=worker_payload.answer,
|
||||
metadata=worker_payload.model_dump(mode="json", exclude_none=True),
|
||||
),
|
||||
payload=worker_payload.model_dump(mode="json", exclude_none=True),
|
||||
validated_output=worker_payload,
|
||||
response_metadata=response_metadata,
|
||||
)
|
||||
|
||||
@@ -336,7 +335,7 @@ class AgentScopeRunner:
|
||||
question=raw_user_text, language=language
|
||||
)
|
||||
|
||||
if derived_divination is not None and context_messages:
|
||||
if context_messages:
|
||||
last = context_messages[-1]
|
||||
if last.role == "user":
|
||||
context_messages[-1] = Msg(
|
||||
@@ -346,11 +345,6 @@ class AgentScopeRunner:
|
||||
)
|
||||
return context_messages
|
||||
|
||||
if context_messages:
|
||||
last = context_messages[-1]
|
||||
if last.role == "user":
|
||||
return context_messages
|
||||
|
||||
user_msg = Msg(name="user", role="user", content=user_text)
|
||||
return [*context_messages, user_msg]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user