GenVM Configuration
You need to set up an LLM for your node to use to provide answers to natural language prompts. You can use any LLM you wish, however the quality of its answers will affect the performance of your node.
GenLayer has partnered with multiple LLM providers to offer free credits for validators:
Heurist (opens in a new tab) - A Layer 2 network for AI model hosting and inference, built on the ZK Stack. It offers serverless access to open-source AI models through a decentralized network. GenLayer Validators can obtain free Heurist API credits (opens in a new tab) by using the referral code: "genlayer".
Comput3 (opens in a new tab) - A decentralized compute network providing access to various AI models. GenLayer Validators can use the Comput3.ai inferencing API with access to llama3, hermes3 and qwen3 models. Validators can obtain free Comput3 API credits (opens in a new tab) to get started with their validator setup.
io.net - A decentralized compute network providing GPU access for AI inference. GenLayer Validators can create an account at id.io.net (opens in a new tab) and obtain free credits by filling out this form (opens in a new tab).
The GenVM configuration files are located at third_party/genvm/config/
genvm-module-llm.yaml
This is the configuration file of the LLM module. In this file you can set up and configure various LLM providers, as well as the system prompts of your validator.
You should not need to modify this in general.
However, from here you can:
- turn on and off various LLMs by setting the
enabledfield tofalse: By default they all come enabled for you to use. You will get warnings in the logs for each one that's enabled and not configured. Disabling non used LLM providers will hide those warnings
Note environment variable names for LLM API keys (e.g., HEURISTKEY, COMPUT3KEY, IOINTELLIGENCE_API_KEY). You will need to ensure the appropriate key is correctly set before running the node.
genvm-module-web.yaml
This is the configuration of webdriver module that enables the GenVM to access the internet. You should not need to modify this.
genvm-manager.yaml
This is the configuration of the GenVM manager. You should not need to modify this. However, if you are running the node on
macos (natively), you may want to set permits to some large value, as auto-detection is not supported there yet, such as 32.
Greyboxing LLMs
Greyboxing is a way to further customise your LLM setup to improve its performance as well as security.
Greyboxing is an advanced feature. Familiarity with Lua scripting and LLM prompt engineering is recommended for customization.
genvm-modules llm provides user with ability to customize greyboxing via lua scripting. Right now users can customize prompt templates, specify temperature and system prompt.
Related scripts are located at:
./scripts/genvm-greyboxing.lua– user defined script./share/lib/genvm/greyboxing/lib-greyboxing.lua– more low-level library
More features and built-in filters will be added soon