Skip to content

Feedback Operator

The Feedback LOP is designed to manage and manipulate conversation data within a TouchDesigner environment. It allows users to establish a starting point or reset point for a conversation, primarily by copying data from an input table to a conversation table. This is useful for setting up example conversations, enforcing patterns for LLM agents, or resetting the conversation state.

  • None (standard TouchDesigner installation).
  • Input 1 (Initial Conversation, Table DAT): Provides the initial state or reset point. Columns: role, message, id, timestamp.
  • Input 2 (Ongoing Conversation, Table DAT): Provides ongoing conversation data. Columns: role, message, id, timestamp.
  • Output Conversation (Table DAT): Contains the current conversation state. Either a copy of Input 1 (if Reset is active) or Input 2 (if Reset is inactive).
Target DAT (Targetdat) op('feedback').par.Targetdat OP
Default:
None
Reset (Reset) op('feedback').par.Reset Toggle
Default:
0
Resetpulse (Resetpulse) op('feedback').par.Resetpulse Pulse
Default:
None
Bypass (Bypass) op('feedback').par.Bypass Toggle
Default:
0
Show Built In Pars (Showbuiltin) op('feedback').par.Showbuiltin Toggle
Default:
0
Version (Version) op('feedback').par.Version String
Default:
1.0.0
Last Updated (Lastupdated) op('feedback').par.Lastupdated String
Default:
2024-11-06
Creator (Creator) op('feedback').par.Creator String
Default:
dotsimulate
Website (Website) op('feedback').par.Website String
Default:
https://dotsimulate.com
ChatTD Operator (Chattd) op('feedback').par.Chattd OP
Default:
/dot_lops/ChatTD
  • Lightweight operation.
  • Resetting very large conversations frequently might cause minor performance dips.
feedback_op = op('feedback1')
initial_conv = op('initial_conversation_dat')
ongoing_conv = op('ongoing_conversation_dat')
feedback_op.inputConnectors[0].connect(initial_conv)
feedback_op.inputConnectors[1].connect(ongoing_conv)
# Ensure Reset is off to use the ongoing conversation
feedback_op.par.Reset = 0
# The output DAT will reflect the content of ongoing_conv
feedback_op = op('feedback1')
initial_conv = op('initial_conversation_dat')
feedback_op.inputConnectors[0].connect(initial_conv)
# Either toggle Reset On or pulse Resetpulse
# feedback_op.par.Reset = 1
feedback_op.par.Resetpulse.pulse()
# The output DAT now contains the data from initial_conv
  • Establishing a starting point for LLM agent conversations.
  • Enforcing specific conversation patterns or structures.
  • Resetting conversation state to a predefined example.
  • Testing conversation flows by selectively resetting.