File size: 1,121 Bytes
9a6610f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import streamlit as st
from backend_services import ServiceOne, ServiceTwo
# List of available services
services = {
"Service One": ServiceOne(),
"Service Two": ServiceTwo()
}
# User selects services and parameters
selected_services = st.multiselect("Select Services", list(services.keys()))
parameters = {}
# Allow users to input parameters for selected services
for service_name in selected_services:
service_instance = services[service_name]
parameters[service_name] = {}
for param_name in service_instance.parameters:
parameters[service_name][param_name] = st.text_input(f"Enter {param_name} for {service_name}")
# User-defined workflow execution
if st.button("Run Workflow"):
input_data = ... # Define your input data
for service_name in selected_services:
service_instance = services[service_name]
service_instance.parameters = parameters[service_name]
output_data = service_instance.execute(input_data)
input_data = output_data
# Display the final output
st.success("Workflow executed successfully. Output: {}".format(input_data))
|