SourceAgent#
- class lumen.ai.agents.SourceAgent(*, table_upload_callbacks, debug, steps_layout, user, tools, interface, memory, llm, prompts, template_overrides, conditions, exclusions, not_with, purpose, name)#
- SourceAgent renders a form that allows a user to upload or provide a URI to one or more datasets. 
Parameters#
type: dict
default: {}
Dictionary mapping from file extensions to callback function,e.g. {“hdf5”: …}. The callback function should accept the file bytes andtable alias, add or modify the source in memory, and return a bool(True if the table was successfully uploaded).
Methods#
- async SourceAgent.requirements(messages: list[Message]) list[str]#
- async SourceAgent.respond(messages: list[Message], render_output: bool = False, step_title: str | None = None) Any#
- Provides a response to the user query. - The type of the response may be a simple string or an object. - Parameters:
- messages (list[Message]) – The list of messages corresponding to the user query and any other system messages to be included. 
- render_output (bool) – Whether to render the output to the chat interface. 
- step_title (str | None) – If the Agent response is part of a longer query this describes the step currently being processed. 
 
 
- SourceAgent.servable(title: str | None = None, location: bool | Location = True, area: str = 'main', target: str | None = None) Viewable#
- Serves the object or adds it to the configured pn.state.template if in a panel serve context, writes to the DOM if in a pyodide context and returns the Panel object to allow it to display itself in a notebook context. - Parameters:
- title (str) – A string title to give the Document (if served as an app) 
- location (boolean or panel.io.location.Location) – Whether to create a Location component to observe and set the URL location. 
- area (str (deprecated)) – The area of a template to add the component too. Only has an effect if pn.config.template has been set. 
- target (str) – Target area to write to. If a template has been configured on pn.config.template this refers to the target area in the template while in pyodide this refers to the ID of the DOM node to write to. 
 
- Return type:
- The Panel object itself 
 
- SourceAgent.show(title: str | None = None, port: int = 0, address: str | None = None, websocket_origin: str | None = None, threaded: bool = False, verbose: bool = True, open: bool = True, location: bool | Location = True, **kwargs) threading.Thread | Server#
- Starts a Bokeh server and displays the Viewable in a new tab. - Parameters:
- title (str | None) – A string title to give the Document (if served as an app) 
- port (int (optional, default=0)) – Allows specifying a specific port 
- address (str) – The address the server should listen on for HTTP requests. 
- websocket_origin (str or list(str) (optional)) – A list of hosts that can connect to the websocket. This is typically required when embedding a server app in an external web site. If None, “localhost” is used. 
- threaded (boolean (optional, default=False)) – Whether to launch the Server on a separate thread, allowing interactive use. 
- verbose (boolean (optional, default=True)) – Whether to print the address and port 
- open (boolean (optional, default=True)) – Whether to open the server in a new browser tab 
- location (boolean or panel.io.location.Location) – Whether to create a Location component to observe and set the URL location. 
 
- Returns:
- server – Returns the Bokeh server instance or the thread the server was launched on (if threaded=True) 
- Return type:
- bokeh.server.Server or panel.io.server.StoppableThread 
 
