Processes in Geoweaver
What is Process?
Process
means code scripts to process data.
You can understand it as a source code like Python. However, Process
in Geoweaver is more dedicated to the source code for data processing.
Note
: It is not designed for everything. You can run any code, like starting an HTTP server or starting a GUI software, but it would be inappropriate and might cause issues. We recommend that users restrict the Process code to something finishable (no hanging), algorithmic, and data-oriented.
Create a new Python process
-
Click the
New Process
button afterProcess
on the left panel. -
Select
Python
from theLanguage
dropdown list. -
Input example:
helloworld
in the name section. -
Type the code in the code area, example in python :
print("hello world")
-
Click
Add
at the bottom. A new process nodehelloworld
will be added to theProcess
>Python
tree.
Run Python Process
-
Click on the newly added
helloworld
process. An information panel will be shown in the main area. -
Click the play button to run the process. In the pop-up window, select
Localhost
and clickExecute
. -
A dialog box will appear to specify the Python environment; click
Confirm
to thedefault
. -
In the password dialog box, input your password for
Localhost
. Clickconfirm
.
Note
: If you get an incorrect password error, password resetting instructions are discussed here
If you see hello world printed in the logging window, you have successfully created and run your first process in Geoweaver.
Congratulations! You did it!
Supported Code Scripts
Geoweaver supports four types of processes to be executed on the SSH hosts enlisted in the Host section: Shell script, Notebooks, Python code, and Builtin processes.
1) Shell
Shell scripts can be directly created, saved, executed, and monitored in Geoweaver. Users can execute the shell scripts on remote servers or the local host server on which Geoweaver is hosted.
2) Python
Python is one of the most popular AI programming languages, and most AI-related packages reside in it. Geoweaver supports Python coding and scripting on top of multiple servers while preserving and maintaining the code in one database. All the historical runs are recorded and served in Geoweaver to prevent future duplicated attempts and significantly improve the reproducibility and reusability of AI programs.
3) NoteBook
Geoweaver supports running Jupyter notebooks using the nbconvert command. The notebook and its logout are recorded in the database.
Running notebook in Geoweaver will be equivalent to running jupyter nbconvert --inplace --allow-errors --to notebook --execute <notebook_file_path>
.
New notebook snapshots generated by every run will be saved in the Geoweaver database. No more worries about forgetting the results of your previous experiment configuration! Everything is covered.
4) Build-In Process
To help people with limited programming skills, we are developing a set of built-in processes which have fixed program code and expose only input parameters to users. These processes make Geoweaver a powerful AI graphical user interface for diverse user groups to learn and experiment with their AI workflows without coding. Most built-in processes in Geoweaver are developed based on the existing AI python ecosystem like Keras and Scikit-learn. This section is under intensive development, and the first stable version expects users to create a full-stack AI workflow without writing a single line of code.