Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add Text to Speech(TTS) #2108

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
24 changes: 24 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
ARG NODE_VER=23.5.0
ARG BASE_IMAGE=node:${NODE_VER}
FROM $BASE_IMAGE

Check warning on line 3 in .devcontainer/Dockerfile

View check run for this annotation

codefactor.io / CodeFactor

.devcontainer/Dockerfile#L3

Always tag the version of an image explicitly. (DL3006)

ENV DEBIAN_FRONTEND=noninteractive

# Install pnpm globally and install necessary build tools
RUN apt-get update \
&& apt-get install -y \
git \
python3 \
make \
g++ \
nano \
vim \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

ARG PNPM_VER=9.15.2
RUN npm install -g pnpm@${PNPM_VER}

# Set Python 3 as the default python
RUN ln -s /usr/bin/python3 /usr/bin/python
ENV DEBIAN_FRONTEND=dialog
38 changes: 38 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
// See https://aka.ms/vscode-remote/devcontainer.json for format details.
{
"name": "elizaos-dev",
"dockerFile": "Dockerfile",
"build": {
"args": {
"NODE_VER": "23.5.0",
"PNPM_VER": "9.15.2"
}
},
"privileged": true,
"runArgs": [
"-p=3000:3000", // Add port for server api
"-p=5173:5173", // Add port for client
//"--volume=/usr/lib/wsl:/usr/lib/wsl", // uncomment for WSL
//"--volume=/mnt/wslg:/mnt/wslg", // uncomment for WSL
"--gpus=all", // ! uncomment for vGPU
//"--device=/dev/dxg", // uncomment this for vGPU under WSL
"--device=/dev/dri"
],
"containerEnv": {
//"MESA_D3D12_DEFAULT_ADAPTER_NAME": "NVIDIA", // uncomment for WSL
//"LD_LIBRARY_PATH": "/usr/lib/wsl/lib" // uncomment for WSL
},
"customizations": {
"vscode": {
"extensions": [
"vscode.json-language-features",
"vscode.css-language-features",
// "foxundermoon.shell-format",
// "dbaeumer.vscode-eslint",
// "esbenp.prettier-vscode"
"ms-python.python"
]
}
},
"features": {}
}
33 changes: 32 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ ETERNALAI_MODEL= # Default: "neuralmagic/Meta-Llama-3.1-405B-Inst
ETERNALAI_API_KEY=
ETERNAL_AI_LOG_REQUEST=false #Default: false

GROK_API_KEY= # GROK API Key
GROK_API_KEY= # GROK/xAI API Key
GROQ_API_KEY= # Starts with gsk_
OPENROUTER_API_KEY=
GOOGLE_GENERATIVE_AI_API_KEY= # Gemini API key
Expand All @@ -37,6 +37,18 @@ SMALL_HYPERBOLIC_MODEL= # Default: meta-llama/Llama-3.2-3B-Instruct
MEDIUM_HYPERBOLIC_MODEL= # Default: meta-llama/Meta-Llama-3.1-70B-Instruct
LARGE_HYPERBOLIC_MODEL= # Default: meta-llama/Meta-Llama-3.1-405-Instruct


# Infera Configuration

INFERA_API_KEY= # visit api.infera.org/docs to obtain an API key under /signup_user
INFERA_MODEL= # Default: llama3.2:latest
INFERA_SERVER_URL= # Default: https://api.infera.org/

SMALL_INFERA_MODEL= #Recommended: llama3.2:latest
MEDIUM_INFERA_MODEL= #Recommended: mistral-nemo:latest
LARGE_INFERA_MODEL= #Recommended: mistral-small:latest


# Livepeer configuration
LIVEPEER_GATEWAY_URL= # Free inference gateways and docs: https://livepeer-eliza.com/
LIVEPEER_IMAGE_MODEL= # Default: ByteDance/SDXL-Lightning
Expand Down Expand Up @@ -339,6 +351,16 @@ NEAR_NETWORK=testnet # or mainnet
ZKSYNC_ADDRESS=
ZKSYNC_PRIVATE_KEY=

# Avail DA Configuration
AVAIL_ADDRESS=
AVAIL_SEED=
AVAIL_APP_ID=0
AVAIL_RPC_URL=wss://avail-turing.public.blastapi.io/ # (Default) Testnet: wss://avail-turing.public.blastapi.io/ | Mainnet: wss://avail-mainnet.public.blastapi.io/

# Marlin
TEE_MARLIN= # Set "yes" to enable the plugin
TEE_MARLIN_ATTESTATION_ENDPOINT= # Optional, default "http://127.0.0.1:1350"

# Ton
TON_PRIVATE_KEY= # Ton Mnemonic Seed Phrase Join With Empty String
TON_RPC_URL= # ton rpc
Expand Down Expand Up @@ -373,3 +395,12 @@ FUEL_WALLET_PRIVATE_KEY=
# Tokenizer Settings
TOKENIZER_MODEL= # Specify the tokenizer model to be used.
TOKENIZER_TYPE= # Options: tiktoken (for OpenAI models) or auto (AutoTokenizer from Hugging Face for non-OpenAI models). Default: tiktoken.

# Stargaze NFT marketplace from Cosmos (You can use https://graphql.mainnet.stargaze-apis.com/graphql)
STARGAZE_ENDPOINT=

# GenLayer
GENLAYER_PRIVATE_KEY=0x0000000000000000000000000000000000000000000000000000000000000000 # Private key of the GenLayer account to use for the agent

# OpenWeather
OPEN_WEATHER_API_KEY= # OpenWeather API key
79 changes: 34 additions & 45 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,47 +1,36 @@
{
"plugins": [
"@stylistic"
],
"extends": [
"next/core-web-vitals",
"plugin:@stylistic/recommended-extends"
],
"rules": {
"@stylistic/indent": [
"error",
4,
{
"SwitchCase": 1
}
"plugins": ["@stylistic"],
"extends": [
"next/core-web-vitals",
"plugin:@stylistic/recommended-extends"
],
"@stylistic/no-tabs": "error",
"@stylistic/member-delimiter-style": [
"error",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@stylistic/eol-last": [
"error",
"always"
],
"@stylistic/multiline-ternary": "off",
"@stylistic/semi": [
"error",
"always"
],
"@stylistic/quotes": "off",
"@stylistic/comma-dangle": "off",
"@stylistic/brace-style": [
"error",
"1tbs"
]
}
}
"rules": {
"@stylistic/indent": [
"error",
4,
{
"SwitchCase": 1
}
],
"@stylistic/no-tabs": "error",
"@stylistic/member-delimiter-style": [
"error",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@stylistic/eol-last": ["error", "always"],
"@stylistic/multiline-ternary": "off",
"@stylistic/semi": ["error", "always"],
"@stylistic/quotes": "off",
"@stylistic/comma-dangle": "off",
"@stylistic/brace-style": ["error", "1tbs"]
}
}
100 changes: 50 additions & 50 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -1,55 +1,55 @@
name: "CodeQL Advanced"

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '29 8 * * 6'
push:
branches: ["main"]
pull_request:
branches: ["main"]
schedule:
- cron: "29 8 * * 6"

jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
permissions:
# required for all workflows
security-events: write

# required to fetch internal or private CodeQL packs
packages: read

# only required for workflows in private repositories
actions: read
contents: read

strategy:
fail-fast: false
matrix:
include:
- language: javascript-typescript
build-mode: none
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
- if: matrix.build-mode == 'manual'
shell: bash
run: |
echo 'If you are using a "manual" build mode for one or more of the' \
'languages you are analyzing, replace this with the commands to build' \
'your code, for example:'
echo ' make bootstrap'
echo ' make release'
exit 1

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
permissions:
# required for all workflows
security-events: write

# required to fetch internal or private CodeQL packs
packages: read

# only required for workflows in private repositories
actions: read
contents: read

strategy:
fail-fast: false
matrix:
include:
- language: javascript-typescript
build-mode: none
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}

- if: matrix.build-mode == 'manual'
shell: bash
run: |
echo 'If you are using a "manual" build mode for one or more of the' \
'languages you are analyzing, replace this with the commands to build' \
'your code, for example:'
echo ' make bootstrap'
echo ' make release'
exit 1

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
Loading
Loading