feat: JARVIS v3 Phase 1 — WebSocket relay vers Hermes A.L.E.X.A.
- Serveur WebSocket direct avec websockets 16.0 - Interface HTML/CSS/JS dark theme avec chat - Relay vers API Hermes sur port 8642 - Historique de conversation (20 messages) - Clé API via Infisical - Testé et fonctionnel sur openclaw1.dev.home:7081
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
2026-06-19 17:09:30.215 | INFO | pipecat:<module>:28 - ᓚᘏᗢ Pipecat 1.4.0 (Python 3.13.5 (main, May 5 2026, 21:05:52) [GCC 14.2.0]) ᓚᘏᗢ
|
||||
=== LLMContextFrame ===
|
||||
@dataclass
|
||||
class LLMContextFrame(Frame):
|
||||
"""Frame containing a universal LLM context.
|
||||
|
||||
Used as a signal to LLM services to ingest the provided context and
|
||||
generate a response based on it.
|
||||
|
||||
Parameters:
|
||||
context: The LLM context containing messages, tools, and configuration.
|
||||
"""
|
||||
|
||||
context: LLMContext
|
||||
|
||||
|
||||
=== LLMMessagesAppendFrame ===
|
||||
@dataclass
|
||||
class LLMMessagesAppendFrame(DataFrame):
|
||||
"""Frame containing LLM messages to append to current context.
|
||||
|
||||
A frame containing a list of LLM messages that need to be added to the
|
||||
current context.
|
||||
|
||||
Parameters:
|
||||
messages: List of context messages to append.
|
||||
run_llm: Whether the context update should be sent to the LLM.
|
||||
"""
|
||||
|
||||
messages: list[LLMContextMessage]
|
||||
run_llm: bool | None = None
|
||||
|
||||
|
||||
=== LLMMessagesUpdateFrame ===
|
||||
@dataclass
|
||||
class LLMMessagesUpdateFrame(DataFrame):
|
||||
"""Frame containing LLM messages to replace current context.
|
||||
|
||||
A frame containing a list of new LLM messages to replace the current
|
||||
context LLM messages.
|
||||
|
||||
Parameters:
|
||||
messages: List of context messages to replace current context.
|
||||
run_llm: Whether the context update should be sent to the LLM.
|
||||
"""
|
||||
|
||||
messages: list[LLMContextMessage]
|
||||
run_llm: bool | None = None
|
||||
|
||||
|
||||
=== LLMContext.__init__ ===
|
||||
def __init__(
|
||||
self,
|
||||
messages: list[LLMContextMessage] | None = None,
|
||||
tools: ToolsSchema | list[FunctionSchema | DirectFunction] | NotGiven = NOT_GIVEN,
|
||||
tool_choice: LLMContextToolChoice | NotGiven = NOT_GIVEN,
|
||||
):
|
||||
"""Initialize the LLM context.
|
||||
|
||||
Args:
|
||||
messages: Initial list of conversation messages.
|
||||
tools: Available tools for the LLM to use. May be a ``ToolsSchema``
|
||||
or a plain list of direct functions and/or ``FunctionSchema``
|
||||
objects (normalized to a ``ToolsSchema`` internally). Any tool
|
||||
that carries a handler — a direct function, or a
|
||||
``FunctionSchema`` with its ``handler`` set — is registered with
|
||||
the LLM service automatically, so no separate
|
||||
``register_function`` call is needed.
|
||||
tool_choice: Tool selection strategy for the LLM.
|
||||
"""
|
||||
self._messages: list[LLMContextMessage] = messages if messages else []
|
||||
self._tools: ToolsSchema | NotGiven = LLMContext._normalize_and_validate_tools(tools)
|
||||
self._tool_choice: LLMContextToolChoice | NotGiven = tool_choice
|
||||
|
||||
Reference in New Issue
Block a user