Architecture & Security FAQ
Genesis Bots Architecture & Security FAQ
Getting Started
Genbot's Toolkit
- Tools Overview
- Artifact Manager Tools
- Autonomous Process Tools
- Bot Management
- Dagster Tools
- Data Connector Tools
- Delegate Work
- Document Index Tools
- Send Email Tools
- Git Action
- Google Drive Tools
- Harvest Control Tools
- Image Tools
- Jira Connector Tools
- Notebook Manager Tools
- Project Manager Tools
- Slack Tools
- Snowflake Tools
- Web Access Tools
Setup
Slack and Teams
- Slack
- Teams
Data Connections
- Data Sources
Deployment Options
- pip
- Snowflake Native App
Example Use Case Deep Dives
Architecture & Security FAQ
Genesis Bots Architecture & Security FAQ
Genesis Bots are offered as a Snowflake Native Application on the Snowflake Marketplace and are built on Snowpark Container Services.
This allows them to run directly in your Snowflake account, without Genesis Computing Inc. seeing or having any access to your data, your bot metadata, and conversations between you and your bots. This unique architecture enables you to install and run Genesis Bots quickly since you already trust Snowflake to hold your data.
The diagram below shows the deployment architecture:
- Genesis bots run in the customer’s own Snowflake account as a native application, it does not run in Genesis’s Snowflake account or elsewhere
- Generally, the ACCOUNTADMIN role is needed to install applications from the Marketplace. If you do not have this or a similar role, consult with your Snowflake admin to see if they can help. Or you can get a new Snowflake account at https://signup.snowflake.com/ to use with Genesis Bots for now (note that you’ll need to put in a credit card to Snowflake to be able to use Container Services).
- Genesis bots use Snowpark Container Services to service the bot threads. These run inside the native application inside the customer’s Snowflake account
- It connects from the Container Service to one or two external services:
- OpenAI (optional) – Using the customer’s own OpenAI key, the application sends prompts to OpenAI from the container services which may contain snippets of customers’ data and discussions between the bots and customer’s users about the data
- Slack (optional) – Using the customer’s own Slack Key, the application sends messages to and from Slack using WebSocket between the Container running in the customer’s Snowflake account and the customer’s Slack account
- We can only see the name of your Snowflake account and the email address of the user who installs the Genesis Bots native application into your Snowflake account
- We can not access your data or the metadata about the bots you create in your installation of our system within your Snowflake account.
- (Optional) If you enable optional log sharing to Genesis, Genesis can also see the logs generated by the application via Snowflake data sharing, which may contain snippets of messages sent to and from the bots. Only enable this if you are comfortable with Genesis computing seeing such snippets, as it’s not required.
- Snowflake, where your data is already stored
- OpenAI, to see snippets of your data and conversations about your data, using your OpenAI key (we recommend Teams or Enterprise level OpenAI accounts for added protections offered by OpenAI at these account levels)
- Slack, for any messages that are sent to and from your bots to your Slack channels/DMs
- You can still test Genesis Bots on the demo data provided by Genesis with the application. Genesis comes with pre-shared open-source data about Baseball and Formula 1, which you can use to see how the system works. This will give you a sense of how the system works and you can further evaluate its architecture before granting it access to any of your actual data.
- You can grant Genesis Bots access to data you can find on the Snowflake Data Marketplace, and use that data to assess the bot’s capabilities.
- You can upload and grant the bots access to your non-sensitive data, if applicable.
- If you don’t trust Slack, you can use Genesis’s Streamlit-in-Snowflake interface to interact with the bots without connecting them to Slack.
- If you don’t trust OpenAI, Genesis uses the Cortex family of models by default upon installation.
- To sign up for OpenAI API, visit: https://platform.openai.com/signup
- If you don’t see “Your App Configuration Tokens” and an option to create one when you visit https://api.slack.com/apps (it can take a few seconds for that section to appear), you can create a new trial Slack workspace for free at https://slack.com/get-started and use that to start testing your Bots on Slack
- To get a Snowflake account, visit https://signup.snowflake.com/, Note that you’ll need to put in a credit card to Snowflake to be able to use Container Services, which will also end your Snowflake free trial. Accounts on free trials can not currently use Container Services which Genesis bots requires.