ä¸ć说ć | Deutsch | Français | ŕšŕ¸ŕ¸˘ | EspaĂąol |
As seen powering @DegenSpartanAI and @MarcAIndreessen
Prerequisites (MUST):
src/core/defaultCharacter.ts
- you can modify thispnpm start --characters="path/to/your/character.json"
and run multiple bots at the same time.After setting up the .env file and character file, you can start the bot with the following command:
pnpm i
pnpm start
To avoid git clashes in the core directory, we recommend adding custom actions to a custom_actions
directory and then adding them to the elizaConfig.yaml
file. See the elizaConfig.example.yaml
file for an example.
You can run Llama 70B or 405B models by setting the environment variable for a provider that supports these models. Llama is also supported locally if no other provider is set.
You can run Grok models by setting the GROK_API_KEY
environment variable to your Grok API key and setting grok as the model provider in your character file.
You can run OpenAI models by setting the OPENAI_API_KEY
environment variable to your OpenAI API key and setting openai as the model provider in your character file.
You may need to install Sharp. If you see an error when starting up, try installing it with the following command:
pnpm install --include=optional sharp
You will need to add environment variables to your .env file to connect to various platforms:
# Required environment variables
DISCORD_APPLICATION_ID=
DISCORD_API_TOKEN= # Bot token
OPENAI_API_KEY=sk-* # OpenAI API key, starting with sk-
ELEVENLABS_XI_API_KEY= # API key from elevenlabs
# ELEVENLABS SETTINGS
ELEVENLABS_MODEL_ID=eleven_multilingual_v2
ELEVENLABS_VOICE_ID=21m00Tcm4TlvDq8ikWAM
ELEVENLABS_VOICE_STABILITY=0.5
ELEVENLABS_VOICE_SIMILARITY_BOOST=0.9
ELEVENLABS_VOICE_STYLE=0.66
ELEVENLABS_VOICE_USE_SPEAKER_BOOST=false
ELEVENLABS_OPTIMIZE_STREAMING_LATENCY=4
ELEVENLABS_OUTPUT_FORMAT=pcm_16000
TWITTER_DRY_RUN=false
TWITTER_USERNAME= # Account username
TWITTER_PASSWORD= # Account password
TWITTER_EMAIL= # Account email
# For asking Claude stuff
ANTHROPIC_API_KEY=
WALLET_SECRET_KEY=EXAMPLE_WALLET_SECRET_KEY
WALLET_PUBLIC_KEY=EXAMPLE_WALLET_PUBLIC_KEY
BIRDEYE_API_KEY=
SOL_ADDRESS=So11111111111111111111111111111111111111112
SLIPPAGE=1
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
HELIUS_API_KEY=
## Telegram
TELEGRAM_BOT_TOKEN=
TOGETHER_API_KEY=
If you have an NVIDIA GPU, you can install CUDA to speed up local inference dramatically.
pnpm install
npx --no node-llama-cpp source download --gpu cuda
Make sure that youâve installed the CUDA Toolkit, including cuDNN and cuBLAS.
By default, the bot will download and use a local model. You can change this by setting the environment variables for the model you want to use.
For help with setting up your Discord Bot, check out here: https://discordjs.guide/preparations/setting-up-a-bot-application.html
To run the test suite:
pnpm test # Run tests once
pnpm test:watch # Run tests in watch mode
For database-specific tests:
pnpm test:sqlite # Run tests with SQLite
pnpm test:sqljs # Run tests with SQL.js
Tests are written using Jest and can be found in src/**/*.test.ts
files. The test environment is configured to:
.env.test
To create new tests, add a .test.ts
file adjacent to the code youâre testing.
Please make sure to verify if the documentation provided is correct. In order to do so, please run the docs service.
docker compose -f docker-compose-docs.yaml up --build
The docusaurus server will get started and you can verify it locally at https://localhost:3000/eliza.