mirror of
https://github.com/hoshikawa2/agent_platform_oci.git
synced 2026-09-07 18:23:46 +00:00
bugfix: aofertas
This commit is contained in:
@@ -74,11 +74,21 @@ def _format_conversation_history(
|
||||
msgs.pop()
|
||||
lines: list[str] = []
|
||||
for msg in msgs:
|
||||
cls = type(msg).__name__
|
||||
if cls in _SKIPPED_CLASSES:
|
||||
continue
|
||||
role = _ROLE_BY_CLASS.get(cls, cls.lower())
|
||||
content = _message_content_to_str(getattr(msg, "content", ""))
|
||||
if isinstance(msg, dict):
|
||||
role = str(msg.get("role") or msg.get("type") or "").lower()
|
||||
if role in {"system", "tool", "function"}:
|
||||
continue
|
||||
if role == "human":
|
||||
role = "user"
|
||||
elif role in {"ai", "bot"}:
|
||||
role = "assistant"
|
||||
content = _message_content_to_str(msg.get("content", ""))
|
||||
else:
|
||||
cls = type(msg).__name__
|
||||
if cls in _SKIPPED_CLASSES:
|
||||
continue
|
||||
role = _ROLE_BY_CLASS.get(cls, cls.lower())
|
||||
content = _message_content_to_str(getattr(msg, "content", ""))
|
||||
if content.strip():
|
||||
lines.append(f"[{role}] {_truncate(content, per_message_limit)}")
|
||||
return "\n".join(lines)
|
||||
|
||||
@@ -48,6 +48,10 @@ Decida na ordem, PARE no primeiro match:
|
||||
casa aqui, siga para o passo 5.
|
||||
Vale o pedido generico ("quero cancelar", "todos") sobre o que a conversa
|
||||
trata, e vale confirmar ou pedir permissao para executar essa acao.
|
||||
IMPORTANTE: se o cliente acabou de PEDIR cancelamento/contestacao/ajuste do
|
||||
mesmo alvo, a fala do agente que apenas pede CONFIRMACAO da transacao e
|
||||
allowed=true. A confirmacao NAO precisa repetir a justificativa do cliente
|
||||
("nao reconheco", "esta caro" etc.); o pedido transacional anterior basta.
|
||||
Vale tambem trocar uma variante transacional por outra DA MESMA FAMILIA sobre
|
||||
o MESMO escopo, sempre limitada ao valor JA COBRADO no item (ressarcimento <->
|
||||
devolucao <-> reembolso <-> cancelamento <-> credito em fatura): negar o dobro e
|
||||
|
||||
Reference in New Issue
Block a user