Frequently Asked Questions (FAQs)
Answers to questions often asked about Rhino FCP
Setup and Configuration
Which hardware configurations are compatible with the Rhino FCP Platform?
The RH client has been successfully installed on a wide range of hardware configurations, including dedicated servers (Rhino Boxes), VMs provisioned on existing servers on-prem, and cloud-based instances on various clouds (AWS, GCP, Azure).
We have minimal requirements for hardware specifications, but they heavily depend on the kind of computation task the user is looking to perform (i.e. GPU is not required for a Rhino Client installation).
How can I setup or change my ECR credentials?
Before starting, please ensure you have completed all the steps within FCP Client Installation and Environment Configuration. This will ensure that your dependencies have been installed. It will also show you how to retrieve your ECR credentials. To setup or re-configure your ECR your will need your AWS Access Key ID and your AWS Secret Access Key.
Configuring your AWS CLI with your ECR Credentials
Enter your credentials.
The code block below shows what you will need to enter at each step of the prompt.
> aws configure
AWS Access Key ID [None]: YOUR_AWS_ACCESS_KEY_ID
AWS Secret Access Key [None]: YOUR_AWS_SECRET_ACCESS_KEY
Default region name [None]: us-east-1
Default output format [None]: jsonAs a reminder of what each value should be:
AWS Access Key ID - The AWS Access Key ID from your FCP profile
AWS Secret Access Key - The AWS Secret Access Key from your FCP profile
Default region name - us-east-1
Default output format - json
How do I log in to Rhino FCP?
Sign in using the email address associated with your account and your password. If your organization uses Google or Microsoft Azure Single Sign-On (SSO), select the appropriate sign-in option instead of entering a password.
Learn more: → Log in to Rhino FCP
How do I reset my Rhino FCP password?
On the sign-in page, click Can't login?, enter the email address associated with your account, and select Reset Password. You'll receive an email with instructions to create a new password.
Learn more: → Resetting Your Rhino FCP Password
Importing and Exporting Data
How can I import data in my local environment onto my Rhino FCP client using SFTP?
The process of moving data from your local environment to your Rhino FCP client using SFTP depends on the operating system of your local machine.
Connecting to your Rhino FCP Client via SFTP from MacOS, Linux & Windows 10+
Open a terminal or command prompt on your respective operating system, and navigate to the folder where the data that you would like to upload are located.
Connect to your Rhino FCP Client via SFTP
Retrieve your SFTP server IP and credentials from your Rhino FCP profile page. If you need a quick refresher on how to do that, see Viewing and Adjusting Your Settings.
Connect to your Rhino FCP client via SFTP, by entering the following.
Note: Ensure to replace RHINO_CLIENT_IP_ADDRESS in the below command with the credentials found in your profile.
Next, you will be prompted to enter your SFTP password, and if everything is entered properly you will be connected to your Rhino FCP client and your command line should change to look like the following:
For additional help with common commands within the SFTP terminal interface, check out the section Common Commands when SFTP'ing Data .
Connecting to your Rhino FCP Client via SFTP from Other Operating Systems
Once your SFTP client has been installed, you can configure a new SFTP connection.
Retrieve your SFTP server IP and credentials from your Rhino FCP profile page. If you need a quick refresher on how to do that, see Viewing and Adjusting Your Settings.
If you are successfully connected to your SFTP client, you should see two separate panels, one displaying your local machines file system and a second showing your Rhino FCP client's filesystem.
Using the STFP client to upload your data:
On the local machine file system panel, navigate to the folder where your data is located.
On the Rhino FCP client file system panel, navigate to where you would like to place the data.
Note: It is recommended that you create folders for your datasets to keep things organized.
Drag the files from the local machine file system panel to the Rhino FCP client file system panel to upload your data to the Rhino FCP client server.
Common Commands when SFTP'ing Data
Use the following commands to create folders, navigate to different folders, view folder contents, and upload data.
Create a new folder called DIRECTORY_NAME within your Rhino FCP client
Change to the specified directory, DIRECTORY_NAME within your Rhino FCP client
List all files within the current directory on your Rhino FCP client
Upload the specified file FILE_NAME on your local machine to the current directory of your Rhino FCP client
Upload the folder and all of its contents on your local machine to the current directory of your Rhino FCP client
Exit out of the SFTP connection
Writing and Running Code
How can I pass and use parameters in my code?
If you want to re-use your code, but need to make some small changes without hardcoding them, Run Parameters and Run Secrets can be very helpful.
Passing Run Parameters
When you are ready to run your code, you'll be able to provide parameters in either RUN PARAMETERS or RUN SECRETS, see a screenshot below and more detail in What is a Code Object?.
Loading/Using Run Parameters
To use the parameters, simply access them by reading the JSON file in which they are stored. The parameters will be stored in "/input/run_params.json" and in "/input/secret_run_params.json" for RUN PARAMETERS and RUN SECRETS PARAMETERS respectively. For example, let's say you want to pass "my_parameter" = 55555, in RUN PARAMETERS. In the UI, you'll set the following RUN PARAMETER:
If you were to write Python code, in your code first you'd read /input/run_params.json:
and last you'd access the value of your parameter as follows:
For RUN SECRETS PARAMETERS the process would be almost identical except that you would set the parameters in the RUN SECRET PARAMETERS input form, and you would read them from /input/secret_run_params.json.
How do I find a UID for an object (data schema, dataset, code object, or code run)?
To find and copy an object's UID, open the page for that object. If the object has versions, go to the version you want. Then open the three-dot menu for that row, as shown below:
The menu is on the right side of the row. Select it, then choose Copy UID.
Projects and collaborators do not have versions. Open the object, then use the same three-dot menu to copy its UID.
When should I use a Python Code Snippet vs. a Python Code Standalone File?
Code Snippet - Ideal for relatively straightforward scripts that primarily utilize basic Python packages, along with Pandas and Numpy. FCP automatically provides access to your cohort data as a Pandas Dataframe named df. Additionally, it generates the output cohort of your model from this same Dataframe. This setup facilitates elementary Pandas-based operations on your raw input data, such as feature extraction and value normalization.
As an example, consider this Python code snippet:
Executing this code snippet yields an output cohort with z-normalized numerical features, all without requiring any additional code.
Standalone File - This option grants you the freedom to execute varied Python code with custom dependencies, extending beyond Pandas and Numpy. The Standalone File option lets you specify your code's prerequisites, which will be automatically installed within the image generated by FCP. If your code necessitates a specific environment – for instance, to support GPU operations - you can define the Container Base Image that supports it. Use this option for more complex code, which can still be run as a single file. Unlike the Code Snippet, no additional "hidden" functionality is included here.
Upload File(s) - This option is similar to "Standalone File", but allows you to provide your code in more than one file, e.g., multiple Python files and/or shell scripts. Files can include non-Python files of any format, such as configuration files, model parameter files, and so forth. You just have to upload the files you need, or a folder(s), and select the entry point in the text box that appears when this option is selected. The entry point is the file that you'd like your container to run. Be sure to specify code requirements and the container environment as needed.
How can I use external files at run time?
Your workgroup has a unique cloud storage (an S3 bucket on Rhino Orchestrator) to upload non-sensitive data that might be needed during code run, e.g., open-source large LLM model weights.
Cloud storage (specified in Workgroup code and model artifacts storage section in the instructions that follow) is owned by Rhino. Please DO NOT upload sensitive information such as proprietary datasets. For sensitive data, please use the instructions in Importing, Viewing a Dataset's Configuration, and Exporting Datasets instead.
Overview
For your code to be able to access files while running in your agent we need do 4 steps:
Find the bucket to upload your files
The bucket is created as part of the onboarding process into the FCP by client request, you can find it in your settings page under Containers & Artifacts. Here is how to find it.
In your project, select the settings button (it looks like a sprocket at the bottom left side of the page.
In the Settings menu, which is near the top of the screen on the left side of the window, select Containers & Artifacts.
Your storage bucket and bucket prefix appear in the Workgroup code and model artifacts storage part of the page.
Upload files to your designated bucket
AWS offers many alternative ways to upload files to an S3 bucket. We've also provided a script in our user_resource repository you can use: upload-file-to-s3.sh.
You need to define your S3 credentials and then you can call the script like this:
For the example above, if you wanted to upload files in a local folder (called "local_folder" in the below example) and store them in a folder in FCP called "my_files", the command would be:
Reference your files in your code
When creating your code object, you can reference your external files by referencing them in the following path:
For the example above, assuming you uploaded model_params.txt file under my_files, the file would be accessible during runtime in
An example of Python code to read your file data into a text variable would look like as follows:
Use your files in a specific run
Once your code points to your external files, and the code object is created, you can run the code and specify the files you want to use in your code run. In the UI, you can simply select them from a dropdown
Alternatively, you can also use the SDK. See this notebook to use external files via SDK for more details.
Other Questions
Last updated
Was this helpful?